我想要co-brand Qutecom并为其制作自定义的Windows安装程序。
我的 PATH 变量是使用命令提示符在Win 7 Ultimate x64计算机上使用.bat文件设置的。
.bat文件的内容:
@echo on
@SET QTDIR=C:\Qt\4.7.4
@SET INCLUDE=%INCLUDE%;C:\Program Files\Microsoft Platform SDK for Windows Server 2003 R2\Include
@SET INCLUDE=%INCLUDE%;C:\Program Files\Microsoft Platform SDK for Windows Server 2003 R2\Include\atl
@SET INCLUDE=%INCLUDE%;C:\Program Files (x86)\Microsoft DirectX SDK (August 2007)\Include
@SET LIB=%LIB%;C:\Program Files\Microsoft Platform SDK for Windows Server 2003 R2\Lib
@SET PATH=%PATH%;C:\Program Files\Microsoft Platform SDK for Windows Server 2003 R2\Bin
@SET PATH=%PATH%;C:\Qt\4.7.4\bin;c:\Program Files\Mercurial
@SET BOOST_ROOT=C:\boost\boost_1_47_0
@SET BOOST_INCLUDE_DIR=C:\boost\boost_1_47_0
@SET BOOST_INCLUDE_DIRS=C:\boost\boost_1_47_0
@SET BOOST_LIBRARY_DIRS=C:\boost\boost_1_47_0\stage\lib
@SET BOOSTLIBDIR=C:\boost\boost_1_47_0\stage\lib
@SET LIB=C:\boost\boost_1_47_0\stage\lib
@SET LIBPATH=C:\boost\boost_1_47_0\stage\lib
@SET BOOSTINCLUDEDIR=C:\boost\boost_1_47_0
@SET PATH=%PATH%;C:\Program Files (x86)\NSIS
@"C:\Program Files (x86)\Microsoft Visual Studio 9.0\Common7\Tools\vsvars32.bat"
我尝试过以下命令:
cmake .. -DCMAKE_BUILD_TYPE=Release -G "NMake Makefiles"
"C:\Program Files (x86)\Microsoft Visual Studio 9.0\Common7\Tools\vsvars32.bat" && cmake .. -G "Visual Studio 9 2008"
我从Visual Studio 2008 x64交叉工具命令提示符中收到以下错误消息。
-- found boost includes in C:/boost/boost_1_47_0
-- found boost libs in TMP-NOTFOUND
-- found boost includes in C:/boost/boost_1_47_0
-- found boost libs in TMP-NOTFOUND
CMake Error at owbuild/FindBoost.cmake:569 (message):
Could not find Boost
Call Stack (most recent call first):
libs/3rdparty/boost/CMakeLists.txt:10 (find_package)
-- Configuring incomplete, errors occurred!
如何使用命令提示符& amp;来包含提升库? cmake?
答案 0 :(得分:1)
我不确定你要对环境变量做些什么。除非您设置CMakeLists.txt
来读取env变量并从中设置cmake变量,否则CMake不会从环境变量设置变量。这是可行的,但我没有看到这一点。
我认为您希望使用-Dvariable=value
在cmake命令行上设置变量:
cmake .. -DCMAKE_BUILD_TYPE=Release -G "NMake Makefiles" -DBoost_NO_SYSTEM_PATHS=TRUE -DBOOST_INCLUDEDIR="C:\boost\boost_1_47_0" -DBOOST_LIBRARYDIR="C:\boost\boost_1_47_0\stage\lib" -DBoost_ADDITIONAL_VERSIONS="1.47.0"
如果这不起作用,请检查CMakeLists.txt
- 这些变量是否设置为不同的值,覆盖命令行设置?
如果其他所有方法都失败了,请查看FindBoost.cmake
。特别是查看文件顶部的注释 - 它们解释了各种变量的作用。