首页 > 解决方案 > 由于“没有这样的文件或目录”,无法创建共享库

问题描述

我正在尝试将两个文件合并foo.cbar.c一个动态链接库foobar.so中。我正在使用命令:

gcc -shared foobar.so foo.c bar.c

但我收到错误:

gcc: error: foobar.so: No such file or directory

foo.c两者bar.c都包含一个函数定义,仅此而已。目录中没有其他文件。

标签: cshared-libraries

解决方案


您需要使用 -o 选项传递输出文件名:

gcc -shared -o foobar.so foo.c bar.c

否则 gcc 会认为 foobar.so 也是一个输入文件。


推荐阅读