由於最近需要用到一些關於OpenEXR的東西,需要在Windows安裝相關的組件。經過一番嘗試,發現需要以下步驟。
1)下載相關組件
在C盤下建立一個目錄libs-x86,從OpenEXR官網http://www.openexr.com/downloads.html下載最新穩定版本:
IlmBase 1.02 source code release
OpenEXR 1.7.0 source code release
從網站http://www.winimage.com/zLibDll/index.html 下載zlib-1.2.5的源文件(用到其中的zlib.h和zconf.h)和dll文件:
zlib125.zip
zlib125dll.zip
這裡需要說明的是,OpenEXR1.7.0用到的zlib版本為zlib-1.2.5,下載更新的版本會引起錯誤。
2)將下載文件解壓到目錄C:/libs-x86下
打開c:/libx-x86/ilmbase-1.0.2/vc/vc8/IlmBase/IlmBase.sln,選擇Tools->VisualStudio Command Prompt,在打開的DOS界面輸入:
cd c:\libs-x86\ilmbase-1.0.2\Half
cl eLut.cpp
cl toFloat.cpp
eLut > eLut.h
toFloat > toFloat.h
生成相應的文件。
3)選擇Debug配置,編譯解決方案
4)選擇Release配置,編譯解決方案
5)此時在C盤下創建了一個目錄C:\Deploy,目錄下有lib,include,bin三個子目錄。
6)復制zlib.h和zconf.h從目錄c:\libs-x86\zlib125到目錄c:\Deploy\include
復制zdllwapi.lib和zlibwapi.exp從c:\libs-x86\zlib125dll\dll32到C:\Deploy\lib\Win32\Debug
復制zdllwapi.lib和zlibwapi.exp從c:\libs-x86\zlib125dll\dll32到C:\Deploy\lib\Win32\Release
復制zdllwapi.dll從c:\libs-x86\zlib125dll\dll32到C:\Deploy\bin\Win32\Debug
復制zdllwapi.dll從c:\libs-x86\zlib125dll\dll32到C:\Deploy\bin\Win32\Release
在VS2010中打開C:\libs-x86\openexr-1.7.0\vc\vc8\OpenEXR\OpenEXR.sln
選擇Debug配置,選擇ProjectIlmImf,右鍵ProjectOnly->Build Only IlmImf,然後再Build整個解決方案。
選擇Release配置,選擇ProjectIlmImf,右鍵ProjectOnly->Build Only IlmImf,然後再Build整個解決方案。
遇到問題及解決方案:
1)在Debug模式下,LINK : fatal error LNK1104: cannot open file '..\Win32\Debug\IlmImf.map'
解決方法:IlmImf右鍵->Properties->Linker->General->Enable Incremental Linking,設置為No。
作者:lqhbupt