【发布时间】:2012-02-29 04:50:12
【问题描述】:
我正在尝试使用 cygwin 编译 OpenEXR,但我遇到了麻烦。
到目前为止我做了什么:
cd ilmbase-X.X.X
./configure
make
make install
make check
我需要这个,因为它是 OpenEXR 需要它。它运行正常,并在 /usr/local 中创建了三个文件夹:bin、include\OpenEXR 和 lib。
然后我继续 OpenEXR,这就是我要做的:
cd openexr-X.X.X
./configure
一切运行正常,但是当我执行make 时,出现以下错误:
b44ExpLogTable.cpp:52:18: half.h: No such file or directory
虽然我不知道为什么会发生这种情况,但我可以通过这样做来解决它:
./configure CPPFLAGS=-I/usr/local/include/OpenEXR
但是,当我点击make 时,抛出另一个错误,我被困在这里:
/usr/local/include/OpenEXR/half.h:511: undefined reference to `half::_toFloat'
/usr/local/include/OpenEXR/half.h:511: undefined reference to `half::_toFloat'
/usr/local/include/OpenEXR/half.h:481: undefined reference to `half::_eLut'
/usr/local/include/OpenEXR/half.h:511: undefined reference to `half::_toFloat'
/usr/local/include/OpenEXR/half.h:511: undefined reference to `half::_toFloat'
/usr/local/include/OpenEXR/half.h:481: undefined reference to `half::_eLut'
/usr/local/include/OpenEXR/half.h:499: undefined reference to `half::convert(int)'
/usr/local/include/OpenEXR/half.h:481: undefined reference to `half::_eLut'
/usr/local/include/OpenEXR/half.h:499: undefined reference to `half::convert(int)'
/usr/local/include/OpenEXR/half.h:499: undefined reference to `half::convert(int)'
collect2: ld returned 1 exit status
<builtin>: recipe for target `b44ExpLogTable' failed
make[1]: *** [b44ExpLogTable] Error 1
make[1]: Leaving directory `/home/Andre/openexr-1.6.1/IlmImf'
Makefile:313: recipe for target `all-recursive' failed
make: *** [all-recursive] Error 1
这种情况会发生在任何人身上吗?我已经用谷歌搜索了很多,但找不到解决方案。我希望有人可以提供帮助。
【问题讨论】:
标签: compiler-errors cygwin cross-compiling openexr