由于Project需要用到OpenCV的库，所以折腾数周，总算搞定了，期间试了无数次，OpenCV的库每次都能在Debug和Release下全部编译成功。但自己新建的工程无论如何修改配置都会出现LNK的fatal error，股沟多次得出结论：库文件添加错误。但是对照之后发现一模一样，于是郁闷多日不得解。今日再做尝试，在CMake中选择了“Visual Studio 2010”而不是之前的“Visual Studio 2010 Win64”,generate,然后打开VS进行Rebuild，添加到自己的工程之后奇迹般的成功了。于是在此记上一笔，免得他人步上俺的后尘。末尾附上英文安装过程。
I’ve been trying to get OpenCV installed on my laptop for a couple of weeks. I’m in need of it because of my project. The installation needs the OpenCV source files to be compiled into libraries and then will it be used in my own C project. I’ve tried several times of compiling and all results showed me that the building was successful. However, when I use the files in my own project, Visual studio kept telling me ‘LNKXXXX fatal error’ and never build my program. I was about to despair of trying it on Win7 64bit when I gave it a last try. This time, I selected “Visual Studio 2010” in the configure rather than “Visual Studio 2010 Win64” as I previous did. The result was amazing. After the libraries were generated, I managed to build my program and run it. Here’s the process for vs2010:
- Extract the files of OpenCV and install CMake. Run it and enter the path into “Where is the source code” also enter a path where you want the project file to be into “Where to build the binaries”. Tick the following:
- Press “configurate”. Select “Visual Studio 2010”and click “generate”.
Go to the second path and open the *.sln file. Rebuild the solution in both Debug and Release mode.
Add both “Debug” and “Release” in the bin folder of the second path in to the PATH of system environmental variables.
- In your own project, set as following:
- Project –> Project Name –> Properties…Configuration Properties -> VC++ Directories
- Include Directories… add: ‘C:OpenCV2.1includeopencv;’
- Library Directories… add: ‘C:OpenCV2.1lib;’
- Source Directories… add: ‘C:OpenCV2.1srccv; C:OpenCV2.1srccvaux; C:OpenCV2.1srccxcore; C:OpenCV2.1srchighgui; C:OpenCV2.1srcml;
- Linker -> Input -> Additional Dependencies…
- For Debug Builds.. add: ‘cv210d.lib; cxcore210d.lib; highgui210d.lib;’
- For Release Builds.. add: ‘cv210.lib; cxcore210.lib; highgui210.lib;’
For more information of installation, please go to OpenCV Wiki: Install Guide.