ubuntu 下 zthread 安装(开发工具eclipse)

来源:互联网 发布:unlock软件下载 编辑:程序博客网 时间:2024/05/23 11:40
最近学习了Thinking in C++,感觉作者讲得还是比较透彻的,可悲催的是C++不提供标准的并发类库,所以只能手动去配置书里提到的ZThread。

其实大家应当都有同感,配置一些类库,环境变量之类的东西是比较蛋疼的。原因就在于按照书本里的做法很可能没办法成功配置(这一次就是)。所以就在网上搜各种帖子,blogs,最终在一个国外的帖子上看到一种适合与ubuntu系统的十分方便的配置方法:

只需在终端输入:sudo apt-get install libzthread-2.3-2 libzthread-dev 命令,就可以成功安装。我们都知道,ubuntu里的apt命令可以自动处理软件之间的依赖关系,以及自动配置环境变量之类的,所以非常得方便。

可问题却没那么简单,接着当我打开eclipse ,把书上的demo编译一遍,发现居然报错了。提示如下:

./src/Test.o:在函数‘ZThread::CountedPtr<ZThread::Runnable, ZThread::AtomicCount>::~CountedPtr()’中:
/usr/include/zthread/CountedPtr.h:102:对‘ZThread::AtomicCount::operator--()’未定义的引用
/usr/include/zthread/CountedPtr.h:107:对‘ZThread::AtomicCount::~AtomicCount()’未定义的引用
./src/Test.o:在函数‘ZThread::CountedPtr<ZThread::Runnable, ZThread::AtomicCount>::CountedPtr<Test>(Test*)’中:
/usr/include/zthread/CountedPtr.h:75:对‘ZThread::AtomicCount::AtomicCount()’未定义的引用
/usr/include/zthread/CountedPtr.h:76:对‘ZThread::AtomicCount::operator++(int)’未定义的引用

无奈之下只能继续求助于网络,后来搜到一篇blog,按照其作者的方法在终端里编译:g++ -o test Test.cpp -lZThread 居然成功了。由此可知ZThread确实已经配置好了,只是在编译时,eclipse没能自动链接到LibZThread库。所以只需以下操作,便可完成eclipse下的编译。

project->properties->c/c++ build->settings->GCC c++ linker->Libraries->在Libraries(-l)一栏添加 ZThread
原创粉丝点击