Bug 40214 - пакет пуст
Summary: пакет пуст
Status: REOPENED
Alias: None
Product: Sisyphus
Classification: Development
Component: dmd-devel-common (show other bugs)
Version: unstable
Hardware: x86_64 Linux
: P5 normal
Assignee: Anton Farygin
QA Contact: qa-sisyphus
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2021-06-13 20:28 MSK by Gleb Kulikov
Modified: 2021-06-17 20:01 MSK (History)
2 users (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Gleb Kulikov 2021-06-13 20:28:09 MSK
вместо файлов, необходимых для работы компилятора, пакет содержит пустой /usr/include/d
Comment 1 Aleksei Nikiforov 2021-06-15 10:38:37 MSK
Это не ошибка. Так и задумано. Вам вместо данного пакета нужен пакет dmd скорее всего. Не ставьте пакет dmd-devel-common вручную. Он сам поставится по зависимостям когда нужен будет.
Comment 2 Gleb Kulikov 2021-06-16 20:47:13 MSK
> Это не ошибка. Так и задумано. Вам вместо данного пакета нужен пакет dmd скорее

Это как?

rpm -ql  dmd

/etc/dmd.conf
/usr/bin/changed            --- вообще левый файл, откуда он?
/usr/bin/checkwhitespace    --- вообще левый файл, откуда он?
/usr/bin/contributors       --- вообще левый файл, откуда он?
/usr/bin/ddemangle
/usr/bin/detab              --- вообще левый файл, откуда он?
/usr/bin/dget               --- вообще левый файл, откуда он?
/usr/bin/dmd
/usr/bin/dmd-catdoc         --- вообще левый файл, откуда он?
/usr/bin/dustmite
/usr/bin/rdmd
/usr/bin/tolf               --- вообще левый файл, откуда он?
/usr/bin/updatecopyright    --- вообще левый файл, откуда он?
/usr/lib64/libdruntime.so
/usr/share/man/man1/dumpobj.1.xz
/usr/share/man/man1/obj2asm.1.xz
/usr/share/man/man1/rdmd.1.xz
/usr/share/man/man5/dmd.conf.5.xz

как видно, в пакете куча непонятных левых файлов и нет необходимых файлов импорта: /usr/include/dmd в пакете отстутсвует, как и /usr/include/d, на который ссылается конфигурация

/etc/dmd.conf: DFLAGS=-I/usr/include/d -L-lrt -L--export-dynamic -fPIC

в современных версиях комиляторов dmd, между прочим, импорт лежит в /usr/include/dmd

зависимости пакета:
requires:
/proc
/lib64/ld-linux-x86-64.so.2
libc.so.6(GLIBC_2.3)(64bit)
libc.so.6(GLIBC_2.4)(64bit)
libdruntime-devel-static = 2.096.1-alt1:sisyphus+273305.100.1.1
libphobos2-devel-static = 2.096.1-alt1:sisyphus+273305.100.1.1
rpmlib(PayloadIsLzma)

где dmd-devel-common или любой иной devel?

rpm -ql dmd-devel-common
/usr/include/d
пустой, 0 байт,

зависимости:

requires:

rpmlib(PayloadIsLzma)

provides:
dmd-devel-common = 2.096.1-alt1:sisyphus+273305.100.1.1

может быть, rpm -ql libphobos2-devel-static
/usr/lib64/libphobos2.a

не-а.

А! Надо догадаться, что необходимо вручную отдельно поставить libphobos2-devel

Действительно, там есть стандартная библиотека и даже libphobos2.so
правда, без номера версии.
Зато есть пакет libphobos2_2.096.1-alt1%3asisyphus+273305.100.1.1@1622555536_x86%5f64.rpm, содержащий libphobos2.so.0.96.1

Итого: сборка содержит мусор, требуется доустановка пакетов, не имеющих зависмостей, пути нестандартные, есть конфликт .so.
Comment 3 Aleksei Nikiforov 2021-06-17 10:58:00 MSK
(Ответ для Gleb Kulikov на комментарий #2)
> Итого: сборка содержит мусор

Есть только dmd и его утилиты. Так что неверно.

> требуется доустановка пакетов, не имеющих зависмостей

С зависимостями проблем нет. Плохо смотрели.

# apt-get install dmd
Чтение списков пакетов... Завершено
Построение дерева зависимостей... Завершено
Следующие дополнительные пакеты будут установлены:
  dmd-devel-common libdruntime-devel libdruntime-devel-static libphobos2 libphobos2-devel libphobos2-devel-static
Следующие НОВЫЕ пакеты будут установлены:
  dmd dmd-devel-common libdruntime-devel libdruntime-devel-static libphobos2 libphobos2-devel libphobos2-devel-static
0 будет обновлено, 7 новых установлено, 0 пакетов будет удалено и 28 не будет обновлено.
Необходимо получить 0B/12,7MB архивов.
После распаковки потребуется дополнительно 144MB дискового пространства.
Продолжить? [Y/n]

> пути нестандартные

Где?

> есть конфликт .so.

Где? Прошу продемонстрировать.
Comment 4 Gleb Kulikov 2021-06-17 20:01:04 MSK
>> Итого: сборка содержит мусор

> Есть только dmd и его утилиты. Так что неверно.

Верно. я отметил целый ряд файлов, которых НЕТ (большими буквами --- НЕТУ) в дистрибутиве dmd. Вот /usr/bin/detab, это что такое? Откуда это взялось? Ни описания, ни хелпа, ничего. 

Вот содержание редхатовской сборки dmd-2.097.0-0.fedora.x86_64.rpm:
/usr/bin:
ddemangle  dmd  dub  dustmite  rdmd

ВСЁ!

> С зависимостями проблем нет. Плохо смотрели.

Извиняюсь, если так. Смотрю dmd_2.096.1-alt1-sisyphus+273305.100.1.1@1622555536_x86-64.rpm:

/proc
/lib64/ld-linux-x86-64.so.2
libc.so.6(GLIBC_2.3)(64bit)
libc.so.6(GLIBC_2.4)(64bit)
libdruntime-devel-static = 2.096.1-alt1:sisyphus+273305.100.1.1
libphobos2-devel-static = 2.096.1-alt1:sisyphus+273305.100.1.1
rpmlib(PayloadIsLzma)


>> есть конфликт .so.

> Где? Прошу продемонстрировать.

извиняюсь, действительно, вопрос снимается
Хотя решение, когда в libphobos2-devel симлинк на .so из libphobos2_2.096.1-alt1, сбивает с толку.