--no-whole-archive
时间: 2023-09-01 21:09:15 浏览: 143
openblas-0.3.13-1.5.5-API文档-中文版.zip
5星 · 资源好评率100%
`--no-whole-archive`是GCC链接器的一个选项,用于取消`--whole-archive`选项的作用。
在GCC中,`whole-archive`选项用于强制链接将指定目标文件中的所有符号都包含进目标文件中。而`--no-whole-archive`选项则用于取消这个强制作用,只选择需要的符号进行链接。
这个选项通常用于解决链接时出现的重复符号问题。当使用`--whole-archive`选项时,所有目标文件包含的符号都会被链接进最终的可执行文件中,可能会导致符号重复定义的错误。通过使用`--no-whole-archive`选项,可以取消这个强制作用,只选择需要的符号进行链接,解决重复符号的问题。
使用示例:
```
gcc -o output_file source_file.c -Wl,--no-whole-archive -lfoo
```
上述命令将编译`source_file.c`文件,并链接名为libfoo.a的静态库,同时使用`--no-whole-archive`选项取消强制链接所有符号。最终生成的可执行文件为`output_file`。
希望能解答你的问题。如果还有其他疑问,请随时提问。
阅读全文