我尝试遵循the tutorial Boost提供了有关安装Boost的文档,并在这里查看了一些其他问题来尝试确定为什么我无法在自定义位置安装Boost。也许我误会了,但是应该使用--prefix
选项指定Boost头文件和库文件的存放位置,然后bootstrapper.sh
创建一个.jam
文件,该文件在b2
时使用或运行bjam
。
当我发出以下命令时
./bootstrap.sh --prefix="$HOME/dev/emulator/src/boost" --includedir=headers --libdir=dist --with-libraries=date_time
我看到正确的行已添加到生成的project-config.jam
文件中
option.set prefix : /home/liam/dev/emulator/src/boost ;
option.set exec-prefix : /home/liam/dev/emulator/src/boost ;
option.set libdir : dist ;
option.set includedir : headers ;
但是,当我按照文档说明运行./b2
时,它将Boost库安装到源文件夹中;即
The following directory should be added to compiler include paths:
/home/liam/Downloads/brave/boost_1_66_0
The following directory should be added to linker library paths:
/home/liam/Downloads/brave/boost_1_66_0/stage/lib
运行./b2 install
也不会将文件输出到预期的目录。
答案 0 :(得分:1)
您需要在两个步骤中使用目录:
DST_DIR=${HOME}/dev/emulator/src/boost
./bootstrap.sh --prefix=${DST_DIR} --includedir=headers --libdir=dist --with-libraries=date_time
./b2 --prefix=${DST_DIR} install
答案 1 :(得分:0)
尝试
./bootstrap.sh --prefix=path/to/installation/prefix
./b2 install
因此,这意味着首先引导b2,然后使用它来构建和安装boost。