posts - 311, comments - 0, trackbacks - 0, articles - 0
  C++博客 :: 首页 :: 新随笔 :: 联系 :: 聚合  :: 管理

(地基工)Boost库编译后命名方式

Posted on 2012-09-17 19:18 点点滴滴 阅读(1514) 评论(0)  编辑 收藏 引用 所属分类: 02 编程语言

以 libboost_regex-vc71-mt-d-1_34.lib 为例:

  • lib
    前缀:除了Microsoft Windows之外,每一个Boost库的名字都以此字符串开始。在Windows上,只有普通的静态库使用lib前缀;导入库和DLL不使用。
  • boost_regex
    库名称:所有boost库名文件以boost_开头。
  • -vc71
    Toolset 标记:标识了构建该库所用的toolset和版本。
  • -mt
    Threading 标记:标识构建该库启用了多线程支持。不支持多线程的库没有-mt。
  • -d
    ABI标记:编码了影响库和其他编译代码交互的细节。对于每一种特性,向标记中添加一个字母:
    Key Use this library when:
    s 静态链接到C++标准库和编译器运行时支撑库
    g 使用标准库和运行时支撑库的调试版本
    y 使用Python的特殊调试构建
    d 构建代码的调试版本
    p 使用STLPort标准库而不是编译器提供的默认库
    n 使用STLPort已被弃用的“native iostreams”
  • -1_34
    版本标记:完整的Boost发布号,下划线代替点。例如,1.31.1版本将被标记为“-1_31_1”。
  • .lib
    扩展名:取决于操作系统。在大多数unix平台上,.a是静态库,.so是共享库。在Windows上,.dll表示共享库,.lib是静态或导入库。