編譯幾個簡單的cpp文件。自己寫了makefile。編譯器使用g++,鏈接器指定ld。
鏈接器指定使用ld會出現如下錯誤:
cannot find entry symbol _start
這是因為ld的真正入口是_start而不是main。需要鏈接相應的c庫和c運行時庫。libc、libcrt等。
解決辦法是使用gcc。
但是鏈接器指定使用gcc會出現如下錯誤:
undefined reference to '__gxx_personality_v0'
這是因為缺少stdc++庫,加上-lstdc++即可。
或者更干脆的使用g++,讓g++去處理這些細枝末節吧。