在eclipse中创建C++项目?
省略介绍
属性配置
生成动态链接库(Shared Library 后缀:so)
如果出现fPIC的问题,在g++后面加-fPIC
添加编译的头文件
添加库所在的路径
添加库
问题1:
C++程序中出现undefined reference to …
使用库的时候首先要明确库(或者头文件)使用什么编写的
如果是C++编写的,那么在MFC中可以直接使用
如果是C编写的,那么在#include头文件的时候要加上
extern “C”
{
#include “xxx.h”
}
我在rapidioDataBusCommon中的错误就是这样,甲方提供的库是用C语言编写的,故需要在头文件外面添加extern “C”{ xxx }
在添加了extern ”C“,会按照C语言的方式编译
问题2:
“relocation R_X86_64_32 against ‘.bss’ can not be used when making a shared fPIC…”
出现这个问题的解决方法:
【在g++后面添加 –fPIC 】
问题3:
Undefined reference to ‘main’
出现这个问题在于,项目中没有写main函数,同时属相又没有配置为“shared library”