看板 LinuxDev 關於我們 聯絡資訊
請問我現在有兩個*.C檔和一個*.H檔,我要把它們編成一個執行檔,我的步驟如下 (Main.C, FunC.C, FunC.H): 1. gcc –c –g –Wall Main.C –o Main.O # 產生Main.O 2. gcc –c –g –Wall FunC.C –o FunC.O # 產生FunC.O 3. gcc –Wall Main.O FunC.O –o Main # 這一步要產生執行檔Main,但這一步 出現Error Message,如下: Main.O(.eh_frame+0x11): In function `main': /root/TEST/Main.C:6: undefined reference to `__gxx_personality_v0' collect2: ld returned 1 exit status 請問我的步驟那裡錯了??謝謝!! Annex: // Language: C, Compiler: gcc, OS: RH9 // FunC.C #include <stdio.h> #include "FunC.H" void Show(void) { printf("Hello!! World!! \n"); return; } // FunC.H #ifndef FUNC_H #define FUNC_H void Show(void); #endif // Main.C #include <stdio.h> #include "FunC.H" int main(int argc, char *argv[], char *envp[]) { Show(); return 0; } -- 來~剝好了,小心燙喔~ ◢◤ 喔喔~ ˋ◢██◣ ◢██◣◢ 哇~ ◢◤ ◣◢██◥█ ρ ██ █◥◥◥ ◤◤ █ ˊ你好體貼喔~ ◢◤ █ ◥◥◥██ ● ● ◢◤唉呀! ● <ζ◥◣ ◥██ ▼"█◤ ◢◤好燙~ˋ ◥█"█◣ ██ ◢◤ ◢██ -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 220.229.128.76
PICASSO1:這個版早上居然沒人耶!!....@@ 02/20 09:02
Falldog:我試了 沒問題耶=_= 02/20 12:57
PICASSO1:你照我的指令打沒問題??我用FC4也是有問題耶!! 02/20 13:11
PICASSO1:同樣的Error Message!! 02/20 13:11
Falldog:Ubuntu6.06 指令輸入一樣的 沒問題 02/20 13:33
Bencrie:你的副檔名是小寫嗎 ? 02/20 14:01
mefuck:參考http://0rz.tw/bd3Fx 看這個對你有沒有幫助 02/20 17:03
mefuck:你要不要先試試將FunC.o編譯出來 再去編Main.o 02/20 17:31
jlovet:副檔名要用小寫,不然會當成C++, C++最後步驟就要 -lstdc++ 02/20 20:53
freesamael:不要習慣大小寫不分... 02/20 21:34
final01:原來大寫會用C++去編喔~真神奇! 02/20 21:52
Falldog:我測是用小寫的檔名 XD 02/20 23:49