Компиляция с LDC2 и GDC - PullRequest
       23

Компиляция с LDC2 и GDC

4 голосов
/ 01 июня 2011

У меня были ldc2 и gdc, скомпилированные из исходного кода и работавшие до месяца назад. Ничего не изменилось, за исключением того, что я не могу вспомнить переменную (и), которую я установил бы в терминале, чтобы заставить работать ldc2 и gdc.

При попытке скомпилировать исходный код D я получаю следующие ошибки:

GDC:

$ / Главная / Код / D / GDC / Bin / USR / местные / бен / GDC -o t4 t4.d /home/Code/D/gdc/Bin/usr/local/bin/../libexec/gcc/x86_64-unknown-linux-gnu/4.4.5/cc1d: ошибка при загрузке общих библиотек: libmpfr.so.1: невозможно открыть общий доступ объектный файл: нет такого файла или каталога

ldc2:

$ / home / Code / D / ldc2 / bin / ldc2 -o t4 t4.d / home / Code / D / ldc2 / bin / ldc2: ошибка при загрузке общих библиотек: libconfig ++. so.8: невозможно открыть общий доступ объектный файл: нет такого файла или каталога

Не могу вспомнить, было ли это просто дополнением к PATH или чем-то еще в DFLAGS. Есть идеи?


EDIT: Перекомпиляция LDC2 и GDC решила проблему, но я до сих пор не знаю, почему я получаю ошибки.

Ответы [ 2 ]

1 голос
/ 21 августа 2013

Ошибка с LDC означает, что вы (пере) переместили libconfig ++ после того, как скомпилировали его.PATH и DFLAGS не связаны, но, как отметил Дэн в своем ответе, LD_LIBRARY_PATH можно использовать для добавления дополнительных мест в путь поиска.

Если вы хотите иметь автономную установку дляпо любой причине вы можете установить RPATH в каталог bin и скопировать туда libconfig ++, как это делается при сборке бинарных пакетов: https://github.com/ldc-developers/ldc-scripts/blob/master/ldc2-packaging/2-build-ldc.sh#L18.

Та же история для ошибки GDC - это зависит от GNUБиблиотека MPFR, которая была либо удалена, либо заменена несовместимой версией во время обновления.

0 голосов
/ 21 июня 2011

Эта ошибка может возникнуть, если файлы .so отсутствуют в вашем $LD_LIBRARY_PATH, я думаю.

...