使用LDC2和GDC进行编译

时间:2011-06-01 14:04:03

标签: d gdc

我从源代码编译了ldc2和gdc,直到一个月前还在运行。什么都没有改变,除了我不记得我将在终端设置的变量,以使ldc2和gdc工作。

尝试编译D源代码时出现以下错误;

GDC:

  

$   /家庭/代码/ d / GDC /斌在/ usr / local / bin目录/ 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的补充。有什么想法吗?


编辑: 重新编译LDC2和GDC解决了这个问题,但我仍然不知道为什么我会收到错误。

2 个答案:

答案 0 :(得分:1)

LDC的错误意味着您在编译后重新移动了libconfig ++。 PATHDFLAGS不相关,但Dan在回答中指出,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库,它在升级过程中被删除或替换为不兼容的版本。

答案 1 :(得分:0)

如果.so文件不在您的$LD_LIBRARY_PATH中,可能会发生此错误。