VS2008 LINK : fatal error LNK1104: cannot open file 'atls.lib'错误解决方案
用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版本代替,经测试可以使用。