【问题标题】:Trying to compile DevIL on x64 FreeBSD尝试在 x64 FreeBSD 上编译 DevIL
【发布时间】:2016-04-07 14:47:50
【问题描述】:

压缩包:DevIL-1.7.8.tar.gz

我在 FreeBSD 10.3 x64 上安装了 DevIL 1.7.8,当我尝试链接它时,我收到以下错误:

…… lib/libIL.a(libIL_la-il_jp2.o):在函数 ilLoadJp2F' 中: (.text+0x352): 对 `jas_init' 的未定义引用

lib/libIL.a(libIL_la-il_png.o):在 function iSavePngInternal': (.text+0xadd): undefined reference to`png_set_write_fn' ..........

Makefile 中的链接样式:

-Idevil
-Ldevil/lib
-lIL -lpng -ltiff -lmng -llcms -ljpeg

当我尝试在我的 x86 bin 上使用 DevIL 时,一切正常并且链接成功。但是amd_64没有机会..

这是一个错误吗?如果这是一个错误,我可以使用任何替代方案来代替 DevIL.. 吗?

【问题讨论】:

  • 你可以使用 ImageMagick 吗?另请参阅此问题。 stackoverflow.com/questions/2982711/… 另一方面,DevIL 已经在移植了,为什么你需要编译它,而你可以简单地用pkg 安装呢? freebsd.org/cgi/…
  • 因为即使我用 pkg 编译它也会出现同样的错误...
  • pkg 不用于编译,仅用于安装。如果您无法使用 ports-mgmt/synth 进行编译,您可以尝试在 bugs.freebsd.org/bugzilla 中提出错误

标签: c++ freebsd devil .a


【解决方案1】:

您可能需要分别将-I/usr/local/include-L/usr/local/lib 添加到您的编译和链接标志中。

但是可以省去很多麻烦并从端口或作为一个包安装它。

要安装软件包,请以 root 身份运行 pkg install graphics/devil。 这是最简单和最快的。但它不支持启用高动态范围图像,也不支持 SIMD 自动检测(如 AltiVec、SSE3...)。

如果您需要其中之一,则必须从端口构建它。 要安装端口,请确保已安装端口树,转到 /usr/ports/graphics/devil 并以 root 身份运行 make install clean

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2018-02-20
    • 2011-03-26
    • 2012-07-01
    • 1970-01-01
    • 1970-01-01
    • 2016-04-19
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多