该问题是针对刚安装的Linux环境的小萌新在使用gcc/g++编译时出现的问题,如果你是大佬,这篇文章可能对你并没有帮助。
问题描述
当我们用Makefile工具时,在Makefile文件中写编译语句时,希望编译时用静态链接库来编译,例如语句如下。1
g++ -o $@ $^ -static
编译时链接静态库的方式有好几种,这里我使用static。问题出现的是,当我们make时,出现如下问题
1 | g++ -o test test.cpp -static |
解决办法
在我百度了很久之后CSDN未能解决如下问题,还是Stack Overflow解决了该问题。
用如下两条命令安装所需要的静态库即可。1
2sudo yum install libstdc++-static
sudo yum install glibc-static
安装了以上两个库之后,make一下,编译成功,使用ll
查看你会发现编译之后的目标文件会非常大。这时就是成功的。