swftools 无法在 Linux 32 位上编译

发布于 2024-10-01 05:40:34 字数 887 浏览 0 评论 0 原文

当尝试在 EC2 小型实例(仅 32 位)上编译 swftools-0.9.1 或当前源时,出现以下错误:

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) 的支持?

I get the following error when trying to compile swftools-0.9.1 or the current source on a EC2 small instance (which is only 32bit):

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

Was support for not 64-bit capable Linux(ubuntu) removed?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

魂归处 2024-10-08 05:40:35

当我尝试在 Fedora 14 下编译它时,我遇到了完全相同的错误。

当我查看构建树根目录中的 config.log 文件时,我看到以下错误:

“加载共享库时出错:libpdf.so。 6:无法启用可执行堆栈,因为共享对象需要:权限被拒绝”

这导致我看到这个线程:http://permalink.gmane.org/gmane.comp.tools.swftools.general/1452(我也在那里回复了我的解决方案。)

可悲的是,那里没有人有任何真正的 解决方案也有答案,保存有人能够成功构建它。

我要做的是:

sudo seteboolallow_execstack on

并且构建得很好,完全消除了该错误。

然而,另一个解决方案是您可能只是缺少一个开发库,例如 FreeType 标头,因为我认为 Ubuntu 不使用 SELinux。 (虽然我可能是错的)

为了记录,这里是我的 32 位 Fedora 机器上的开发标头,其中编译良好:

zlib-devel、jpeglib-turbo-devel(Fedora 14 特定的库,但 jpeglib-devel 应该可以工作)在其他发行版中)、libpng-devel、giflib-devel、pdflib-lite-devel、freetype-devel、fontconfig-devel

最后,我使用的是 swftools-0.9.1(撰写本文时最新稳定版)。我的建议是查看 config.log 文件并 grep 查找“错误”,并尝试解决任何未完成的条目。尤其是从ld回来的。

I ran into the exact same error when trying to compile it under Fedora 14.

When I looked at the config.log file in the root of the build tree, I saw the following error:

"error while loading shared libraries: libpdf.so.6: cannot enable executable stack as shared object requires: Permission denied"

Which lead me to this thread: http://permalink.gmane.org/gmane.comp.tools.swftools.general/1452 (I've replied with my solution there as well.)

Sadly, no one there had any real answers as well, save that someone was able to build it successfully..

What I had to do is:

sudo setsebool allow_execstack on

And things built just fine, eliminating that error entirely.

However, the other solution is that you may simply be missing a devel library, such as the FreeType headers, since I don't think Ubuntu uses SELinux. (Though I could be wrong)

For the record, here's the development headers I have on my 32 bit Fedora box where this compiles fine:

zlib-devel, jpeglib-turbo-devel (a Fedora 14 specific lib, but jpeglib-devel should work in other distros), libpng-devel, giflib-devel, pdflib-lite-devel, freetype-devel, fontconfig-devel

Lastly, I'm using swftools-0.9.1 (latest stable at the time of this writing). My advice would be to look at the config.log file and grep for 'error' and try to resolve any outstanding entries. Especially ones returned from ld.

骄傲 2024-10-08 05:40:35

我确实有完全相同的问题。我只是运行以下命令,然后编译没有任何问题。

sudo yum install libjpeg-devel giflib-devel freetype-devel zlib-devel jpeglib-devel libpng-devel giflib-devel pdflib-lite-devel freetype-devel fontconfig-devel

I did have exactly same problem. I just run following command and after that compiled without any problems..

sudo yum install libjpeg-devel giflib-devel freetype-devel zlib-devel jpeglib-devel libpng-devel giflib-devel pdflib-lite-devel freetype-devel fontconfig-devel
末蓝 2024-10-08 05:40:35

确保您遵循 此处的步骤

我也遇到了同样的问题和确切的错误。我尝试从源代码安装 jpeglib ,这有点烦人,因为它没有被 swftools 配置脚本检测到并给出以下输出 -
* 缺少以下标头/库:ungif freetype gif_lib.h
* 禁用 pdf2swf 工具...
* 禁用 gif2swf 工具...

我还按照 swftools 安装 (http://wiki.swftools.org/index.php?title=Installation) 中提到的步骤进行操作,但没有成功。然后我使用 yum 安装了 libjpeg-devel、giflib-devel、freetype-devel 软件包,这是 这里提到
然后在不禁用 pdf2swf 工具和 gif2swf 工具的情况下执行 ./configure。最后我运行了 make &它给出了您上面附加的确切错误。所以我在 jpeglib 提取的源目录中运行 make clean 和 make uninstall 命令,最后在 swftools 目录中运行 make 。它工作没有错误......

Make sure you followed the steps here

I also had the same problem and the exact error. I tried to install jpeglib from the source code and it was little annoying bcos it is not detecting by swftools configure script and given following output -
* The following headers/libraries are missing: ungif freetype gif_lib.h
* Disabling pdf2swf tool…
* Disabling gif2swf tool…

Also I followed the steps mentioned in swftools installation (http://wiki.swftools.org/index.php?title=Installation) but didn’t work. Then I installed the libjpeg-devel, giflib-devel, freetype-devel packages using yum which was mentioned here
Then ./configure executed without disabling the pdf2swf tool and gif2swf tool. Finally I ran make & it was given the exact error you attached above. So I ran make clean and make uninstall commands in jpeglib extracted source directory and finally ran make in swftools directory. It worked with no errors...

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文