Linux下的开发经验总结

来源:互联网 发布:图片相似度比较算法 编辑:程序博客网 时间:2024/05/20 22:38

Linux下编写C和CPP的注意事项

近日,正在linux下进行一些c和cpp的程序开发,有一些关于库的链接问题,记下以备用。

目前有使用GCC G++还有QTcreator来进行编译程序。QT中的pro文件,其中INCLUDEPATH +=后面填写要引用的头文件的路径(GCC库文件目录下的不必填写),LIBS +=后填写要链接的库的地址,其后也可以填写gcc的-l参数,此处展开讲解一下-l参数,以-lxxx为例,当填写-lxxx时,gcc会在库文件路径中去搜寻以libxxx.so为名的动态链接库库文件,而动态链接库库文件路径是由/etc/ld.so.conf.d目录下的.conf文件来决定的,可以在此目录下任意增加.conf文件来增加库文件路径。

CMAKE的注意事项

make报错的相关解决方案

relocation R_X86_64_32 against `.rodata.str1.1’ can not be used when making a shared object; recompile with -fPIC

解决步骤:
1.查看CMakeLists.txt中CMAKE_CXX_FLAGS的参数中是否含有-fPIC
2.重新安装报错的库,安装时,如果是configure,则添上–enable-shared参数,如果是cmake则在CMakeLists.txt的CMAKE_CXX_FLAGS的参数中添加-fPICset(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fPIC")

原创粉丝点击