这里是我的代码:GCC:错误:libhello.so:没有这样的文件或目录
// hello.c
#include<stdio.h>
int main(int argc, char **argv) {
return (0);
}
我在终端上键入gcc hello.c -o -shared libhello.so
并获得:
gcc: error: libhello.so: No such file or directory
问题:如何编译.c文件到.so文件与一个命令行
更新:如果我用gcc hello.c -shared -o libhello.so
修复它,但我只是有些困惑,为什么错误信息是“gcc:error:libhello.so:没有这样的文件或目录”,而不是“gcc:error:libhello.so:没有这样的文件或目录'-shared'“
'gcc hello.c -o -shared libhello.so'的意思是“编译文件'hello.c'和'libhello.so',并将结果放入文件'-shared'”。由于输出文件将在编译期间创建,因此编译器不会发出缺少警告。然而,源文件的存在对于编译成功是必要的,因此会发出错误消息。 – 2014-11-04 09:53:12