用VS 2008編寫ATL的64位應用程序時,提示鏈接錯誤:
VS2008 LINK : fatal error LNK1104: cannot open file 'atls.lib'
問題原因
VS 2008默認並不包含ATL x64的庫,需要參照以下文檔自行編譯,但是編譯過程會出錯。
C:\Program Files (x86)\Microsoft Visual Studio 9.0\VC\atlmfc\src\readme.txt
解決方案
通過測試我發現,其它高版本VS,如VS 2013等,是自帶ATL x64庫的,並且可以直接用這個庫在低版本VS 2008中使用。
1. 首先把以下路徑加入VS2008的lib中
$(VCInstallDir)atlmfc\lib\amd64
2. 安裝VS 2013,從以下路徑拷貝atls.lib
C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\atlmfc\lib\amd64\atls.lib
3. 將上面拷貝的atls.lib粘貼到以下路徑
C:\Program Files (x86)\Microsoft Visual Studio 9.0\VC\atlmfc\lib\AMD64\atls.lib
C:\Program Files (x86)\Microsoft Visual Studio 9.0\VC\atlmfc\lib\AMD64\atlsd.lib
由atlsd.lib是atls.lib庫的Debug版本,由於atlsd.lib在高版本VS中也不存在,因此只好用其Release版本代替,經測試可以使用。
