Windows下MinGW(gcc)编译boost版本库--mgw.lib

Windows下MinGW(gcc)编译boost版本库--mgw.lib

 

第一步、安装MinGW64

参考:MSYS2&MingGW 载与安装、Pacman常用命令 - suntroop - 博客园 (cnblogs.com)

 

第二步、下载 Boost

Boost源码官方下载地址: Boost Downloads http://www.boost.org/users/download/

官方提供的使用msvc编译好的库下载地址(根据需要下载):Boost C++ Libraries - Browse /boost-binaries/1.83.0 at SourceForge.net  https://sourceforge.net/projects/boost/files/boost-binaries/1.83.0/ 
这里介绍使用 MinGW 编译生成 版本库。

第三步、编译安装

1) 创建两个文件夹

mkdir E:\boost_1_83_0\build        #后期可以删除,存放
mkdir E:\boost                               #后期不可删除, 存放库文件的

2) 构建Boost.自带 B2工具

方法一  PowerShellcmd控制台,下面脚本两个参数都可以
bootstrap.bat  mingw   
bootstrap.bat gcc     

PS E:\> cd E:\boost_1_83_0\
PS E:\boost_1_83_0> .\bootstrap.bat gcc Building Boost.Build engine ### ### Using
'mingw' toolset. ###

方法二  MinGW64 控制台,  下面脚本有无参数都可以
bootstrap.sh  

Administrator@PC-20240806AENV MINGW64 /e/boost_1_83_0
# cd /e/boost_1_83_0
# .
/bootstrap.sh Building B2 engine.. ### ### ### Using 'gcc' toolset. ### ### g++.exe (Rev1, Built by MSYS2 project) 14.2.0 Copyright (C) 2024 Free Software Foundation, Inc. This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

 3)编译链接库, 并安装
b2 命令格式:  b2 [options] [properties] [targets]
[options] 如下

--help              帮助
--prefix=<PREFIX> 编译后安装路径,默认C:\Boost
--build-dir=<DIR> 工程构建中间文件所在目录
--build-type=<type> 编译类型,可选minimal(最小)、complete(完整),默认minimal。 --with-<library> 加入此参数,代表只编译的库。 --without-<library> 加入此参数,代表忽略编译的库。

--libdir=<LIBDIR> 库文件安装位置.
默认: <EPREFIX>/lib
--includedir=<HDRDIR>   头文件安装位置. 
默认: <PREFIX>/include
--cmakedir=<CMAKEDIR>   CMake配置文件xxx-config.cmake安装位置.
默认: <LIBDIR>/cmake

[properties] 如下

Properties:

  toolset=toolset         编译器类型 gcc 或 msvc .
  variant=debug|release   生成类型  debug 或 release 
link
=static|shared 链接库类型 static(.a/.lib) or shared(.so/.dll) threading=single|multi Whether to build single or multithreaded binaries runtime-link=static|shared 运行时链接类型 动/静态 Whether to link to static or shared C and C++ runtime.

[target] 如下

install
stage

 

方法一  PowerShellcmd控制台

.\b2.exe install --build-dir="E:/boost_1_83_0/build" --prefix="E:/boost" toolset=gcc --build-type=complete  threading=multi

方法二  MinGW64 控制台,  

Administrator@PC-20240806AENV MINGW64 /e/boost_1_83_0
# ./b2 install --build-dir="E:/boost_1_83_0/build" --prefix="E:/boost" toolset=gcc --build-type=complete 

 

4)删除中间文件

编译完成后,可以把 E:\boost_1_80_0\build 目录可以删掉,最终的boost库安装在 E:\boost 下面

第四步、检查关键生成物

4.1 CMake配置文件 
boost_date_time-config.cmake

4.2 头文件
date_time.hpp

4.3 动态库文件
libboost_date_time-mgw14-mt-x64-1_83.dll

 

4.4 静态库
libboost_date_time-mgw14-mt-x64-1_83.dll.a 
libboost_date_time-mgw14-mt-x32-1_83.a

 

posted @ 2024-09-05 19:48  suntroop  阅读(1551)  评论(0)    收藏  举报