1、编写一个helloworld代码。比较简单,这里不列出来;记录一下排查问题过程。
突然有一天使用,下面这命令编译文件,但是发现,运行不了,也没有执行权限,加了执行权限还是运行不了。使用bash hello又报出其他的提示信息,查看文件
gcc -c hello.c -o hello
信息,找到了不同的答案;
找到一个可以运行的文件,分别用file查看文件信息:
也尝试加载动态库,但是也都失败。再继续尝试在google搜索上面file hello的返回信息,找到了答案,这样说的
gcc -c does not generate executables; it generates objects files. Remove the -c if you want an executable.
上面也就是说 -c 参数不会产生一个可执行的文件,如果想产生一个可执行的文件,那么不用添加 -c 参数就可以了。
在国内网站搜索好多次,太折腾了。
使用下面命令生成的执行文件,是具有执行权限:
在gcc中,查看-c 参数:
-c Compile and assemble, but do not link.
只编译、汇编,但是不链接。当然就不会连接库文件啦.............