设为首页 加入收藏

TOP

1.4.1 UNIX开发环境
2013-10-07 16:00:15 来源: 作者: 【 】 浏览:78
Tags:1.4.1 UNIX 开发 环境

1.4  开发环境搭建

本节简略介绍在上述开发环境里如何编译、设置Boost程序库,供读者参考。

1.4.1  UNIX开发环境

Boost1.51的编译不再使用早期版本的bjam,而是改用了新的b2工具(boost build v2),所以编译较以前版本有了很大的简化,速度也很快。

编译Boost

UNIX系统(OS X、Linux)下编译Boost很容易,最简单省事的编译方法是在Boost安装目录下直接执行命令:

  1. ./bootstrap.sh;./b2 

第一条命令bootstrap.sh是编译前的配置工作,第二条命令b2开始真正的编译。

得益于摩尔定律,现在Boost库的编译所需要的时间和空间都已经大大缩减了,在目前主流级别CPU上只需要半小时左右,而在以前则需要数个小时。

我们也可以完整编译Boost,需要在bootstrap.sh之后执行如下命令:

  1. ./b2 --buildtype=complete stage 

这样将开始对Boost的完整编译,生成所有调试版、发行版的静态库和动态库。

其中:

buildtype选项指定编译类型,如不指定则默认使用release模式;

stage选项指定Boost使用本地构建。如果使用install选项则编译后会把Boost安装到默认路径下(/usr/local)。

MakeFile范例

UNIX下最常用的构建工具是make,所以下面给出本书在Mac OS X下使用的一个makefile代码,非常简单,仅作示意:

  1. CC = clang                                      #Linux应使用gcc  
  2. XX = clang++                                        #Linux应使用g++  
  3. CFLAGS  = -Wall -D_REENTRANT -g -std=c++11      #Linux应使用gnu++0x  
  4. INCLUDE = -I/Users/chrono/boost/                #Boost库安装在用户主目录  
  5. STDLIB  = -stdlib=libc++                            #Linux无需此FLAG  
  6.  
  7. LIBS = -lpthread -lrt                           #posix线程库和实时库  
  8. OBJS = main.o  
  9. TEST = test 
  10.  
  11. %.o: %.c  
  12.     $(CC) $(CFLAGS) $(INCLUDE) -c $< -o $@  
  13. %.o:%.cpp  
  14.     $(XX) $(CFLAGS) $(STDLIB) $(INCLUDE) -c $< -o $@   
  15.  
  16. all: $(TEST)  
  17.  
  18. $(TEST): $(OBJS)  
  19.     $(XX) $(STDLIB) -o $(TEST) $(OBJS) $(LIBS)  
  20.     ./$(TEST)                                       #编译后直接运行程序  
  21.    
  22. clean:  
  23.     rm -f *.o  

】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇1.3 开发环境简介 下一篇1.4.2 Windows开发环境

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容:

·MySQL 安装及连接-腾 (2025-12-25 06:20:28)
·MySQL的下载、安装、 (2025-12-25 06:20:26)
·MySQL 中文网:探索 (2025-12-25 06:20:23)
·Shell脚本:Linux Sh (2025-12-25 05:50:11)
·VMware虚拟机安装Lin (2025-12-25 05:50:08)