尝试编译swftools-0.9.1或EC2小实例(仅为32位)上的当前源时出现以下错误:
make[1]: Entering directory `/home/ubuntu/src/swftools-2010-10-12-2000/lib'
gcc -c -DHAVE_CONFIG_H -I/usr/include/freetype2 -fPIC -Wimplicit -Wreturn-type -Wno-write-strings -Wformat -O -fomit-frame-pointer modules/swfaction.c -o modules/swfaction.o
In file included from modules/.././bitio.h:23,
from modules/../rfxswf.h:37,
from modules/swfaction.c:24:
modules/.././types.h:39:2: error: #error "no way to define 64 bit integer"
modules/.././types.h:42:2: error: #error "don't know how to define 32 bit integer"
modules/.././types.h:45:2: error: #error "don't know how to define 16 bit integer"
modules/.././types.h:48:2: error: #error "don't know how to define 8 bit integer"
make[1]: *** [modules/swfaction.o] Error 1
是否支持不支持64位Linux(ubuntu)?
答案 0 :(得分:1)
我尝试在Fedora 14下编译它时遇到了完全相同的错误。
当我查看构建树根目录中的config.log文件时,我看到以下错误:
“加载共享库时出错:libpdf.so.6:无法启用可执行堆栈,因为共享对象需要:权限被拒绝”
这引导我进入这个主题:http://permalink.gmane.org/gmane.comp.tools.swftools.general/1452(我也在那里回复了我的解决方案。)
可悲的是,没有人有任何真正的答案,除非有人能够成功建立它..
我必须做的是:
sudo setsebool allow_execstack on
事情很好,完全消除了这个错误。
然而,另一个解决方案是您可能只是缺少一个devel库,例如FreeType标头,因为我不认为Ubuntu使用SELinux。 (虽然我错了)
为了记录,这里是我在我的32位Fedora盒子上的开发头文件,其编译很好:
zlib-devel,jpeglib-turbo-devel(Fedora 14特定的lib,但jpeglib-devel应该适用于其他发行版),libpng-devel,giflib-devel,pdflib-lite-devel,freetype-devel,fontconfig- devel的
最后,我正在使用swftools-0.9.1(撰写本文时最新的稳定版)。我的建议是查看config.log文件并grep查找'error'并尝试解决所有未完成的条目。特别是从ld。
返回的答案 1 :(得分:1)
我确实遇到了同样的问题。我只是运行以下命令,然后编译没有任何问题..
sudo yum install libjpeg-devel giflib-devel freetype-devel zlib-devel jpeglib-devel libpng-devel giflib-devel pdflib-lite-devel freetype-devel fontconfig-devel
答案 2 :(得分:0)
确保您遵循steps here
我也有同样的问题和确切的错误。我尝试从源代码安装jpeglib,它有点烦人的bcos它没有通过swftools配置脚本检测并给出以下输出 - *缺少以下标头/库:ungif freetype gif_lib.h *禁用pdf2swf工具...... *禁用gif2swf工具......
我也按照swftools安装中提到的步骤(http://wiki.swftools.org/index.php?title=Installation)但是没有用。然后我用yum安装了libjpeg-devel,giflib-devel,freetype-devel包,mentioned here 然后执行./configure而不禁用pdf2swf工具和gif2swf工具。最后我跑了make&它给出了您在上面附加的确切错误。所以我运行make clean并在jpeglib提取的源目录中生成卸载命令,最后在swftools目录中运行make。它没有错误......