惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

B
Blog
Microsoft Security Blog
Microsoft Security Blog
Jina AI
Jina AI
博客园 - 叶小钗
J
Java Code Geeks
博客园 - 聂微东
博客园 - 司徒正美
大猫的无限游戏
大猫的无限游戏
阮一峰的网络日志
阮一峰的网络日志
V
V2EX
美团技术团队
WordPress大学
WordPress大学
M
MIT News - Artificial intelligence
雷峰网
雷峰网
酷 壳 – CoolShell
酷 壳 – CoolShell
GbyAI
GbyAI
罗磊的独立博客
T
The Blog of Author Tim Ferriss
aimingoo的专栏
aimingoo的专栏
T
Tailwind CSS Blog
The Cloudflare Blog
Stack Overflow Blog
Stack Overflow Blog
N
Netflix TechBlog - Medium
小众软件
小众软件

博客园 - 子风

Android相关转载帖子 c++ 函数的工作原理 C和C++的存储模式 VS2005配置开发ARM c++ 虚析构函数的思考 arm-linux-g++ 下交叉编译libxml2 (转)Eclipse代码提示功能设置(Java & C/C++) VS2008 配置boost 用VS.NET2008打包程序遇到不可恢复的生成错误的解决方案 推荐一个原型的设计软件 Mockups For Desktop Grid++Report——推模式下填充子报表 c# 对象的创建过程 Failure sending mail - 子风 XP下IIS错误:Server Application Error css总结 asp.net缓存-数据依赖缓存 - 子风 - 博客园 .net 测试工具 .net 发送Email 利用7z来分卷压缩文件
linux下面eclipse的c++配置
子风 · 2011-11-17 · via 博客园 - 子风

转:http://blog.csdn.net/schumyxp/article/details/2119186

打算用linux下面的eclipse进行c++开发,因为好久没做c++开发了,又对linux没那么熟悉,就记录一下我的入门经历。

目的是创建一个共享库,然后用另一个项目去调用。

首先,创建一个共享库。打开eclipse,选择c++项目里面的共享库,创建即可,然后就是编写相应的代码什么的……
比如这个库就叫做test吧,里面有个类,叫做CTest。

写好之后,编译,保证没有问题。这个时候应该得到了一个libtest.so文件,还有就是CTest类的头文件CTest.h。

这个时候这个库还不能像在windows下面似的直接拿来就用。还得进行一下“安装”。

其实可以安装这个库的位置很多,我是把它安装在了/usr/lib下面。但是那里面本来就有很多系统里面的东西。为了不让自己的库和系统的混了,我在/usr下面建立了一个文件夹clib,然后把libtest.so和CTest.h都拷贝到了/usr/clib下面。
然后建立一个软链接,如下:
#ln -s /usr/clib/libtest.so /usr/lib
建立好之后,再更新一下系统信息:
#ldconfig
这样之后,这个库就可以用了。感觉linux下面的共享库,就好像.net里面的强名称的dll。

下面就可以使用这个库了。不过c++里面用起来就是麻烦一些啊,呵呵。

首先建立一个可执行的c++项目,然后“引入”刚才安装好的库,引入的过程如下(.net下面点点鼠标就行了,都把我惯坏了):

为编译器指定路径:在-l参数下面,添加libtest.so所在的位置,我这里就是/usr/clib。

为链接器指定要引用的库:在-l参数下面添加test,这个就是前面做的那个共享库。test前后的lib和.so都是系统自己加的,编译的时候也会自己加上,所以一定得写test。

为编译器指定库所在的路径:在-L参数下面,添加libtest.so所在的路径就可以了,这里还是/usr/clib。

这样配置好之后,test这个库终于可以用了。

用的时候,include "CTest.h"后,就可以用类CTest了。

如果你怕乱,把CTest.h这个头文件放在了/usr/clib/CTest这个目录下面,那就是include "CTest/CTest.h"了。现在应该更明白了吧,以后想怎么安排文件结构,就可以随意发挥了。

接下来,就可以编译运行程序了。

如果不幸出错了(估计第一次搞linux开发的人,很多会出错的),不要着急,几乎都是上面的路径没写对。这个时候可以使用ldd命令来查看都引用了那些库,有没有问题,一眼就能看出来了。

我想,有了这些基本的准备,就可以开始linux下面的c++开发了。

 

学习,积累中......