Ubuntu 12.04 LTS 中 darktable 1.6.7 的构建错误
Build error for darktable 1.6.7 in Ubuntu 12.04 LTS
我正在尝试从 Ubuntu 12.04 LTS 上的源代码构建图像程序 darktable 1.6.7。我正在按照说明 here 进行操作。 85%左右有错误不知如何解读:
Linking C shared module libgrain.so
/usr/bin/ld: CMakeFiles/grain.dir/introspection_grain.c.o: relocation R_X86_64_32S against `.rodata' can not be used when making a shared object; recompile with -fPIC
CMakeFiles/grain.dir/introspection_grain.c.o: could not read symbols: Bad value
collect2: error: ld returned 1 exit status
make[2]: *** [src/iop/libgrain.so] Error 1
make[1]: *** [src/iop/CMakeFiles/grain.dir/all] Error 2
我不知道把 -fPIC
传到哪里,就像它提示的那样。我还读到 --enable-shared
应该传递给 ./configure
,但在这种情况下没有 ./configure
文件,我不知道这里的可比步骤是什么。任何有助于理解和解决此错误的帮助将不胜感激!
我想通了,这很简单。我没有使用我链接到的 darktable 站点上建议的 cmake 调用,而是使用 ccmake 来配置和生成。它会自动在需要的地方填充 C 标志 -fPIC
。然后就完美搭建了。
我正在尝试从 Ubuntu 12.04 LTS 上的源代码构建图像程序 darktable 1.6.7。我正在按照说明 here 进行操作。 85%左右有错误不知如何解读:
Linking C shared module libgrain.so
/usr/bin/ld: CMakeFiles/grain.dir/introspection_grain.c.o: relocation R_X86_64_32S against `.rodata' can not be used when making a shared object; recompile with -fPIC
CMakeFiles/grain.dir/introspection_grain.c.o: could not read symbols: Bad value
collect2: error: ld returned 1 exit status
make[2]: *** [src/iop/libgrain.so] Error 1
make[1]: *** [src/iop/CMakeFiles/grain.dir/all] Error 2
我不知道把 -fPIC
传到哪里,就像它提示的那样。我还读到 --enable-shared
应该传递给 ./configure
,但在这种情况下没有 ./configure
文件,我不知道这里的可比步骤是什么。任何有助于理解和解决此错误的帮助将不胜感激!
我想通了,这很简单。我没有使用我链接到的 darktable 站点上建议的 cmake 调用,而是使用 ccmake 来配置和生成。它会自动在需要的地方填充 C 标志 -fPIC
。然后就完美搭建了。