Boost 是我直接 sudo apt-get install 的,系统会帮我安装到 usr/include/boost 和 usr/lib 下,因此我可以直接使用 -lboost_system 库, 或直接 include <boost/thread.hpp> 而不用做额外的配置
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25 |
#include <boost/thread.hpp> #include <iostream> #include <stdio.h> class
SpecificWork { private : int
p_; public : SpecificWork( int
value) : p_(value) { } void
operator()() { printf ( "Value is %d\n" , p_); } }; void
hello( int
value) { printf ( "hello %d\n" , value); } int
main() { int
i = 1; SpecificWork work(i); boost:: thread
worker(&hello, i); //ok worker.join(); } |
假设我已经写好这段程序了, 在命令行下直接编译的命令:
g++ sample.cpp -lboost_system -lboost_thread
现在,我把这段程序复制到 eclipse 下, 唯一需要修改的配置是:
右击项目,properties, settings, GCC C++ Linker, Libraries, Libraries(-l) 中添加两项 boost_system, boost_thread
另外, Library Search Path 是对那些没有将 boost library 放到系统默认库(/usr/lib)的同学准备的
这都是自己逐渐摸索出来的, eclipse 的配置无非是将手动转成自动, 当配置卡住时,可以参考编译程序时控制台的输出, 比如刚开始我在 eclipse 库中写的是 -lboost_system, 发现控制台出现的是 -l -lboost_system. 我再用命令行编译一遍,发现编译失败,于是就去掉了 -l 编译成功。
Ubuntu Eclipse Boost 配置,布布扣,bubuko.com
原文地址:http://www.cnblogs.com/zhouzhuo/p/3735678.html