Update building Boost recipe

This commit is contained in:
Bill Somerville 2020-10-02 03:00:21 +01:00
parent 69c48b0997
commit 58d4c684ce
No known key found for this signature in database
GPG Key ID: D864B06D1E81618F

View File

@ -1,15 +1,22 @@
Linux Linux
===== =====
Debian style:
sudo apt install libboost-all-dev sudo apt install libboost-all-dev
RPM style:
sudo dnf install boost-devel
macOS macOS
===== =====
Download the latest Boost sources from here: boost.org Download the latest Boost sources from here: boost.org
Currently v 1.74.0 - https://dl.bintray.com/boostorg/release/1.74.0/source/boost_1_74_0.tar.bz2 Currently v 1.74.0 -
https://dl.bintray.com/boostorg/release/1.74.0/source/boost_1_74_0.tar.bz2
cd ~/Downloads cd ~/Downloads
curl -L -O https://dl.bintray.com/boostorg/release/1.74.0/source/boost_1_74_0.tar.bz2 curl -L -O https://dl.bintray.com/boostorg/release/1.74.0/source/boost_1_74_0.tar.bz2
@ -26,7 +33,8 @@ cd ../..
linkflags=-mmacosx-version-min=10.12 \ linkflags=-mmacosx-version-min=10.12 \
architecture=x86 address-model=64 --prefix=$HOME/local/boost install architecture=x86 address-model=64 --prefix=$HOME/local/boost install
That will take a while, once successful (warnings can be ignored) you can clean the build tree to save some space: That will take a while, once successful (warnings can be ignored) you
can clean the build tree to save some space:
~/local/boost-build/bin/b2 toolset=clang cflags=-mmacosx-version-min=10.12 \ ~/local/boost-build/bin/b2 toolset=clang cflags=-mmacosx-version-min=10.12 \
cxxflags=-mmacosx-version-min=10.12 mflags=-mmacosx-version-min=10.12 \ cxxflags=-mmacosx-version-min=10.12 mflags=-mmacosx-version-min=10.12 \
@ -34,7 +42,10 @@ That will take a while, once successful (warnings can be ignored) you can clean
linkflags=-mmacosx-version-min=10.12 \ linkflags=-mmacosx-version-min=10.12 \
architecture=x86 address-model=64 --prefix=$HOME/local/boost clean architecture=x86 address-model=64 --prefix=$HOME/local/boost clean
All that remains is to reconfigure your WSJT-X build trees to include ~/local/boost in your CMAKE_PREFIX_PATH, maybe something like these (one each for Debug and Release configuration builds and assumes the Macports GCC v7 tool-chain is being used): All that remains is to reconfigure your WSJT-X build trees to include
~/local/boost in your CMAKE_PREFIX_PATH, maybe something like these
(one each for Debug and Release configuration builds and assumes the
Macports GCC v7 tool-chain is being used):
FC=gfortran-mp-7 \ FC=gfortran-mp-7 \
cmake \ cmake \
@ -54,7 +65,8 @@ FC=gfortran-mp-7 \
-B ~/build/wsjtx-debug \ -B ~/build/wsjtx-debug \
~/src/bitbucket.org/k1jt/wsjtx ~/src/bitbucket.org/k1jt/wsjtx
Substitute you installed SDK version, Qt version and location, and Hamlib install locations. Substitute you installed SDK version, Qt version and location, and
Hamlib install locations.
MS Windows MS Windows
@ -90,8 +102,8 @@ space as the boost header files are quite big, and there's no need to
install multiple copies. install multiple copies.
Create a new file %HOME%\src\boost_1_74_0\project-config.jam with the Create a new file %HOME%\src\boost_1_74_0\project-config.jam with the
following three lines to specify how Boost.Build finds the libbacktrace following three lines to specify how Boost.Build finds the
library matched to your relevant C++ compliers: libbacktrace library matched to your relevant C++ compliers:
import toolset ; import toolset ;
@ -102,8 +114,8 @@ using gcc : 8~64 : C:\\Qt\\Tools\\mingw810_64\\bin\\g++ : <compileflags>-I"C:\\T
Note that it may need some local adjustment of the C++ compiler Note that it may need some local adjustment of the C++ compiler
version and path depending on the exact tool-chains from your Qt version and path depending on the exact tool-chains from your Qt
installation. Above I am using the Qt v5.12.9 MinGW32 v7 tool-chain installation. Above I am using the Qt v5.12.9 MinGW32 v7 tool-chain
for 32-bit (toolset=gcc), and Qt v5.15.0 MinGW64 v8 tool-chain for 32-bit (toolset=gcc), and Qt v5.15.0 MinGW64 v8 tool-chain for
for 64-bit (toolchain=gcc-8~64). 64-bit (toolchain=gcc-8~64).
32-bit 32-bit
------ ------
@ -193,6 +205,16 @@ C:\Tools\boost-build\MinGW32\bin\b2 toolset=gcc-8~64 ^
address-model=64 --build-dir=%HOME%\build\boost ^ address-model=64 --build-dir=%HOME%\build\boost ^
--build-type=complete clean --build-type=complete clean
Run-time Environment
--------------------
You will need to add C:\Tools\boost\lib to your PATH environment
variable in order to run installed Debug configurations of WSJT-X, or
to execute build artefacts from a build tree. It is also needed for
teh install target of release configuration builds. Installed Release
configurations will move any required DLLs to the installation bin
directory automatically.
Setting up WSJT-X builds Setting up WSJT-X builds
------------------------ ------------------------
@ -216,12 +238,3 @@ set (ASCIIDOCDIR C:/Tools/asciidoc-master)
set (CMAKE_PREFIX_PATH ${BOOSTDIR} ${QTDIR} ${FFTWDIR} ${HAMLIBDIR} ${HAMLIBDIR}/bin ${LIBUSBDIR} ${PYTHONDIR} ${ASCIIDOCDIR}) set (CMAKE_PREFIX_PATH ${BOOSTDIR} ${QTDIR} ${FFTWDIR} ${HAMLIBDIR} ${HAMLIBDIR}/bin ${LIBUSBDIR} ${PYTHONDIR} ${ASCIIDOCDIR})
# ... # ...
Run-time Environment
--------------------
You will need to add C:\Tools\boost\lib to your PATH environment
variable in order to run installed Debug configurations of WSJT-X, or
to execute build artefacts from a build tree. Installed Release
configurations will move any required DLLs to the installation bin
directory automatically.