我是linux编程的初学者,
我今天用gcc编译了一个helloworld。c,但是却没有生成真正的可执行文件,而是生成了ELF 64-bit LSB shared object, x86-64,文件,
怎样才能生成一个真正的可执行文件,像这样的:ELF 64-bit LSB executable, x86-64,
这问题一点也不简单。
现在的可执行文件都是 shared 了,以前的会是 executable。原因是,现在编译器都默认启用了 PIE(位置无关可执行文件)。
参考资料:
但是shared文件不能双击执行,executable可以双击执行
用的什么文件管理器?去它的网站上报告 bug 呗。
用的就是archlinux自带的那个
Arch Linux 自带了啥?不都是自己装的么。
那应该是gnome自带的那个
gnome自带的文件管理器确实无法执行 gcc编译出来的“可执行文件”。