sh: ./hello无效的参数,没有连接动态库 LSB relocatable, ./hello运行失败

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.

 

 只编译、汇编,但是不链接。当然就不会连接库文件啦.............

 

posted @ 2021-08-25 16:14  笑不出花的旦旦  阅读(85)  评论(0编辑  收藏  举报