解决Linux下静态链接库出现的问题
程序员文章站
2022-06-03 08:38:28
...
该问题是针对刚安装的Linux环境的小萌新在使用gcc/g++编译时出现的问题,如果你是大佬,这篇文章可能对你并没有帮助。
问题描述
当我们用Makefile工具时,在Makefile文件中写编译语句时,希望编译时用静态链接库来编译,例如语句如下。
g++ -o [email protected] $^ -static
编译时链接静态库的方式有好几种,这里我使用static。问题出现的是,当我们make时,出现如下问题
g++ -o test test.cpp -static
/usr/bin/ld: cannot find -lstdc++
/usr/bin/ld: cannot find -lm
/usr/bin/ld: cannot find -lc
collect2: error: ld returned 1 exit status
make: *** [tcpClient] Error 1
解决办法
在我百度了很久之后CSDN未能解决如下问题,还是Stack Overflow解决了该问题。
用如下两条命令安装所需要的静态库即可。
sudo yum install libstdc++-static
sudo yum install glibc-static
安装了以上两个库之后,make一下,编译成功,使用ll
查看你会发现编译之后的目标文件会非常大。这时就是成功的。
下一篇: 数组切片中隐藏的小问题
推荐阅读
-
PHP下打开phpMyAdmin出现403错误的问题解决方法
-
Microsoft Visual Studio 2010 Ultimate 下安装wcsf 2010出现问题的解决方法
-
liunx系统下时钟不同步会出现问题 怎么同步Linux 的系统时钟和硬件时钟?
-
完美解决linux下vim在终端不能用鼠标复制的问题
-
Linux下MP3的TAG乱码问题解决方法
-
完美解决linux下U盘文件只读的问题
-
解决linux环境下时区无法设置的问题
-
linux下mysql乱码问题的解决方案
-
.net下灰度模式图像在创建Graphics时出现:无法从带有索引像素格式的图像创建graphics对象 问题的解决方案。
-
Apache源码包在LINUX(CENTOS6.8)中的安装(出现问题及解决)