水溶性咪唑啉厂家
免费服务热线

Free service

hotline

010-00000000
水溶性咪唑啉厂家
热门搜索:
行业资讯
当前位置:首页 > 行业资讯

Linux编译程序时的一些注意事项

发布时间:2021-01-20 14:41:13 阅读: 来源:水溶性咪唑啉厂家

最近一个星期都在搞Linux下的一些开源项目,其实很早之前就有捣鼓过,这次再次遇到之前编译程序时遇到的一些问题,因此在这里做一下记录。

一、在C++程序里要包含C语言写的程序的头文件时,在C++文件里应该这样来包含:

extern "C"

{

#include "你的头文件"

}

注意:这里是大写的C.

举个例子:在一个目录里有p hello.c hello.h三个文件,而p文件里要用到hello.c里的函数,那么在p里就要通过包含hello.h头文件来调用hello.c里的函数,因此在p里应该这样写:

extern "C"

{

#include "hello.h"

}

否则编译链接时会提示找不到相应的函数,比如:

:(。text+0x7): undefined reference to …

二、编译一些程序时,可能会遇到找不到相应的库等问题,这时可以通过下载相应的库的源码来自己编译、安装。

自己通过下载源码来编译安装的库大多数情况下会默认安装在/usr/local目录下,虽然已经编译安装了,但编译程序时还会提示找不到对应的库,此时需要在/etc/nf里添加一行/usr/local/lib,还需要通过命令:

ldconfig -v

来更新。

所以,以后每次往/usr/local/lib里添加库文件时最好都ldconfig -v 一下。

三。 查看可执行文件所依赖的库

1. PC Linux上:

如:#ldd /mypath/hello

2. arm Linux上:

如:#arm-linux-readelf -d hello

恋舞奇缘九游版

挂机吧主公超变版

神魔录安卓版

天天德州