出於某種原因,我必須手動鏈接glibc。我試圖運行下面的程序:顯式glibc鏈接之後的「分段錯誤(核心轉儲)」。
#include <stdio.h>
int _start(){
printf("ABCDE");
return 0;
}
爲了編譯它,我鍵入以下命令:
gcc -c main.c -o main.o
gcc -L/lib/x86_64-linux-gnu/ -nostdlib main.o -o main -lc
不幸的是,在運行./main
後我只得到 分割故障(核心轉儲)
任何人都可以告訴我我做錯了什麼?
你想重寫rt啓動?因爲你的ID是[保留](http://stackoverflow.com/questions/228783/what-are-the-rules-about-using-an-underscore-in-a-c-identifier)。 – WhozCraig
您必須手動鏈接'-lc',因爲'-nostdlib'會禁用它。 – duskwuff