簡體   English   中英

如何將-m elf_i386傳遞給gcc?

[英]how to pass -m elf_i386 to gcc?

我寫的是這樣的:

 gcc -m elf_i386

它說:

gcc: error: elf_i386: No such file or directory

基本上我試圖在64位系統上編譯一個32位程序,但錯誤:

/usr/lib64/gcc/x86_64-suse-linux/4.6/../../../../x86_64-suse-linux/bin/ld: 
skipping incompatible /usr/lib/libSDL.so when searching for -lSDL

我已經檢查了用-m32構建的項目,我可以看到所有* .o文件都是ELF 32位LSB,而/usr/lib/libSDL.so也是ELF 32位LSB ...所以我可能需要將-m elf_i386傳遞給ld對嗎? 但是我不直接使用ld我只是使用gcc來編譯它。

gcc -m32

是你想要的。 正如Alan Curry在評論中提到的那樣,elf_i386由gcc傳遞給ld(如果需要)。

“跳過不兼容的庫”警告只是一個警告,如果它沒有提出“找不到庫”,那么你可以假設它鏈接到正確的二進制文件(因為-m32選項)。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM