看板 ASM 關於我們 聯絡資訊
※ [本文轉錄自 C_and_CPP 看板] 作者: typecommand (:)) 看板: C_and_CPP 標題: [問題] 用C編譯器所產生的組語不能編譯 時間: Thu Nov 6 00:49:16 2008 在下用gcc or arm-linux-gcc將c program (hello world) 直接產生assembly code (gcc -S main.c or arm-linux-gcc -S main.c) 接下來就執行如下的動作 as or arm-linux-as -o main.o main.s 沒有錯誤訊息 ld or arm-linux-ld -o main main.o 錯誤訊息如下 arm-linux-ld: warning: cannot find entry symbol _start; defaulting to 00008074 main.o: In function 'main': main.o(.text+0x10): undefined reference to 'printf' 請問各位高手,要如何編譯由gcc編譯器所產生的assembly code,謝謝。 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 118.167.108.117 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 118.167.108.117
CriLit:你沒有 link c library 11/06 11:38
CriLit:link 時加上 -lc 11/06 11:40
CriLit:如果出現沒有此檔案 11/06 11:41
CriLit:再加上 -dynamic-linker /lib/ld-linux.so.2 在 link 11/06 11:41
CriLit:不過 ... 把 _start 改成 main, 用 gcc 就可以編了 11/06 11:41
typecommand:感謝樓上大大解惑,我用gcc編組語就ok了 11/08 12:16