1. 程式人生 > >Win7編譯boost-1.55, 出現“此時不應有 Management”

Win7編譯boost-1.55, 出現“此時不應有 Management”

Win7下download boost 1.55.0原始碼,解壓,按網文準備編譯。然後,

1. 命令列下執行bootstrap.bat,列印“此時不應有 Management”

2. 使用Visual Studio 2008 Command Prompt工具,也有“此時不應有 Management”的列印
3. 想讓cmd.exe執行在相容模式,Windows說“這個程式是該版本Windows的一部分,無法在上面設定相容模式”
4. 編輯bootstrap.bat,跟蹤進\boost_1_55_0\tools\build\v2\engine\build.bat
5. 在build.bat一路加echo語句除錯,最後發現是set "PATH=%BOOST_JAM_TOOLSET_ROOT%bin;%PATH%"出錯
6. 求助度娘,
http://zhidao.baidu.com/link?url=C7ZMx5lwPYSeS1Kjl6NdMiUW3yNz9mhAlLbiVSQ3IbBAghwo9fZWNB1-wesJUHyK9TITQ6O-m7liCGa8oSpSsK
給了點提示,如此辦理,依然不能解決
7. 嘗試去掉set "PATH=%BOOST_JAM_TOOLSET_ROOT%bin;%PATH%"中的引號,bootstrap.bat居然通過! 確定是版本不相容的問題
8. 開始編譯 [refers to http://www.cnblogs.com/lizhengjin/archive/2011/03/12/1982276.html
]
   bjam stage --toolset=msvc-9.0 --without
-graph --without-graph_parallel --without-math --without-mpi --without-python --
without-serialization --without-wave --stagedir="e:\boost\boost_1_55_0\bi
n\vc9" link=static runtime-link=shared threading=multi debug release
   居然繼續報“此時不應有 Management”
9. 猜想Visual Studio 2008 Command Prompt工具中執行時報“此時不應有 Management”錯誤可能與vsvar32.bat有關,搜尋C:\Program Files\Microsoft Visual Studio 9.0目錄下的所有.bat文件,查詢是否有set PATH="..."相似的語句,發現只需要修改vsvar32.bat就行
10. 將vsvar32.bat修改並儲存
11. 重新編譯,OK!