gpt4 book ai didi

c - GCC:输入文件 `../window.ui.o' 的 i386 架构与 i386:x86-64 输出不兼容

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

我正在尝试将一个名为 window.ui 的文件嵌入到我的 C 可执行文件中,目标是稍后从代码中访问内容:

objcopy --input binary \
--output elf32-i386 \
--binary-architecture i386 ../src/window.ui ../window.ui.o

gcc `pkg-config --cflags gtk+-3.0` \
../src/*.c \
../*.o \
`pkg-config --libs gtk+-3.0` \
-o ../a.out

编译时,GCC 失败并出现以下错误:

/usr/bin/x86_64-linux-gnu-ld: i386 architecture of input file `../window.ui.o' is incompatible with i386:x86-64 output
collect2: error: ld returned 1 exit status

有没有办法强制 GCC 仍然包含该文件?

我还尝试了 objcopy--output elf64-x86-64,这编译正确但是内容是乱码阅读时起来。


原创 guide这启发了我

最佳答案

通过使用 gnu-ld 来“解决”:

ld -r -b binary ../src/window.ui -o ../window.ui.o

无法弄清楚为什么 objcopy 不起作用。

关于c - GCC:输入文件 `../window.ui.o' 的 i386 架构与 i386:x86-64 输出不兼容,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51793848/

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