zoukankan      html  css  js  c++  java
  • Boost的自动链接功能

    Boost是一个强大的C++第三方库,但是Boost的各种问题实在是很让人蛋疼。我搜到过一篇文章关于LuaBind使用Boost Build管理工具来管理源代码以及编译的博文,其第一句话就是Fuck The Boost!it is the pain of ass!

    那个采用Boost Build来编译LuaBind我最后完成了,但是很是蛋疼。

    现在又出现了Boost链接的问题,经过多方搜索,以及尝试。个人对Boost 的自动链接机制如下:

     Boost默认启用自动链接功能,而且是静态链接。它会根据当前的编译器预定义宏判断是否是DEBUG,什么版本的编译器,然后自动链接libXXX-vc100-mt-gd-1_52.lib这样的文件。其中lib的代表着是静态LIB库文件,vc100指编译器版本(在VS2008中它会自动链接vc90这样的文件),gd代表debug,release,没有gd选项。这样的自动链接功能非常烦恼,当升级了VS时,要重新用新编译器编译Boost库。
     如果要开启自动链接功能,而且是动态链接的话,定义 BOOST_ALL_DYN_LINK。这样它就自动链接 XXX-vc100-mt-gd-1_52.lib.
     建议采用关闭自动链接功能。
     在附加预定义宏 加 BOOST_ALL_NO_LIB ,这样就关闭了BOOST的自动链接LIB的功能。然后把需要的lib库在附加库里手动加入。

  • 相关阅读:
    深入理解Http协议
    Http协议详解
    过滤器、监听器、拦截器的区别
    HTTP状态代码集
    理解XML-RPC
    Axis2 解析
    REST SOAP XML-RPC分析比较
    Spring 第一天课程
    Spring 框架学习 有用
    数据库主从复制,读写分离,负载均衡,分表分库的概念 没用
  • 原文地址:https://www.cnblogs.com/tlm1992/p/3388450.html
Copyright © 2011-2022 走看看