Linux 系统下Eclipse安装及使用

Linux 系统下Eclipse安装及使用

(我安装的eclipse为64位,如果需要32位的,自己去下载32位的eclipse)

安装的软件包有:jdk-8u231-linux-x64.tar.gz
clipse-cpp-2019-09-R-linux-gtk-x86_64.tar.gz
cdt-9.9.0.zip -- 和对应的eclipse版本对应

转载:https://www.cnblogs.com/rainbow70626/p/7277105.html?utm_source=itdadao&utm_medium=referral
http://c.biancheng.net/view/679.html
https://blog.csdn.net/renlonggg/article/details/79498879
/etc/environment 下面也要添加环境变量
另外还需要安装cdt,其中,cdt的版本要和eclipse对应起来。不然会出现找不到make组件一类的错误。程序无法编译链接。
https://www.eclipse.org/downloads/download.php?file=/technology/epp/downloads/release/2019-09/R/eclipse-cpp-2019-09-R-linux-gtk-x86_64.tar.gz
https://www.eclipse.org/downloads/download.php?file=/tools/cdt/releases/9.9/cdt-9.9.0/cdt-9.9.0.zip&mirror_id=105
最后新建一个工程的时候,可以先建立一个现成的那个工程。环境设置中不需要进行设置。

编译及测试动态库SO

安装好后,就进行编码,其中可执行exe程序是正常的。下面根据网上的资料+例子来进行静态库+动态库的编写。所用网址如下:
https://blog.csdn.net/rain_qingtian/article/details/11192517  C++02:构建并使用共享库
https://blog.csdn.net/Lincoln_cz/article/details/81982908 共享库01-静态库和共享库的使用
其中报:relocation R_X86_64_32 against `‘。rodata' can not be used when making a shared object; recompile with -fPIC。。。解决方法是:右键Eclipse工程,propertise->c/c++ build->settings->GCC C Compiler->Command:    gcc 后面加上-fPIC,重新编译,解决。或者是用gcc的命令行来处理,也是可以的。

原来lunix运行c/c++程序跑到默认路径去找这个share库文件了,但是肯定找不到。因为没把库放到默认路径里面。
这有两个办法指定运行时候库文件的路径:
一种,是设置系统的LD_LIBRARY_PATH 环境变量(在eclipse里设置对外部正式运行的程序无效)。
另外一种,是将动态链接库文件的路径编译进二进制可执行文件。-R+路径。

我的就利用LD_LIBRARY_PATH运行环境变量去设置路径了。设置成libshare.so的路径。
project->run as ->run configurations->Environment
报错:
/home/lak/eclipse-workspace/Cpp-linux-GCC/Debug/Cpp-linux-GCC: error while loading shared libraries: libshared_library.so: cannot open shared object file: No such file or directory
将生成的库拷贝到 /usr/lib中
su root
cp libshared_library.so /usr/lib

编译及测试静态库

eclipse 添加静态库
发现是使用eclipse添加第三方库方法有问题。第三方库目录下,同时存在静态库和动态库。采用Properites->C/C++ Build->Settings->Cross Gcc Linker->Libraries,可以添加静态库和动态库,但如果同时存在静态库和动态库时,优先选择动态库,最终,生成的可执行文件在目标板上运行,发现没有动态库,将会出问题。可以由如下三个方式解决该问题:
libstatic_library.a

包含头文件:

汇总:

 

 

 

 

 

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值