gpt4 book ai didi

linux - 尝试从 64 位 linux 为 32 位 linux 编译 GTK 应用程序

转载 作者:太空宇宙 更新时间:2023-11-04 09:24:20 24 4
gpt4 key购买 nike

我正在尝试从 64 位 Linux 编译 GTK 应用程序到 32 位 Linux。

当我运行这个命令时:

gcc main.c -m32 -mms-bitfields -o output/main `pkg-config --cflags --libs gtk+-3.0` && ./output/main

我收到这些错误:

/usr/bin/ld: cannot find -lgtk-3
/usr/bin/ld: cannot find -lgdk-3
/usr/bin/ld: cannot find -latk-1.0
/usr/bin/ld: cannot find -lgio-2.0
/usr/bin/ld: cannot find -lpangocairo-1.0
/usr/bin/ld: cannot find -lgdk_pixbuf-2.0
/usr/bin/ld: cannot find -lcairo-gobject
/usr/bin/ld: cannot find -lpango-1.0
/usr/bin/ld: cannot find -lcairo
/usr/bin/ld: cannot find -lgobject-2.0
/usr/bin/ld: cannot find -lglib-2.0
collect2: error: ld returned 1 exit status

运行 Linux Mint 17.2 Rafaela。

我有所有需要的包,我什至包括了 -m32 选项,但它仍然不起作用。

还有一个类似的问题here没有公认的答案。

编辑:

下面接受的答案建议我安装 32 位版本的 libgtk-3-dev。如果不删除重要的系统包,我无法做到这一点。最后我求助于简单地使用安装了 32 位版本的 libgtk-3-dev 的 32 位 Linux 发行版。

最佳答案

你可以运行:

apt-get install libgtk-3-dev:i386

然后重新运行你的编译命令,它应该可以工作了。如果上面的命令返回一个错误,说它找不到指定的包,你可能需要运行它,然后重试:

dpkg --add-architecture i386

警告:如果上面的命令要求您删除包,请仔细阅读列表,如果列表包含重要的系统包或者您不确定,请不要继续。

关于linux - 尝试从 64 位 linux 为 32 位 linux 编译 GTK 应用程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38313730/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com