目录
Pangolin 库依赖 Glew 和 freeglut,所以在编译 Pangolin 之前,先编译 Glew 和 freeglut,这两个包编译后统一放在OpenGL文件夹。在 D:/env/OpenGL 文件夹下新建 bin、include、lib文件夹。
1、下载 cmake
下载cmake,下载地址:Releases · Kitware/CMake · GitHub,下载:cmake-3.22.5-windows-x86_64.zip。解压后/bin/cmake-gui.exe即为可执行程序。
2、Glew 编译
2.1、下载源码
从官网给的链接:Download The OpenGL Extension Wrangler Library from SourceForge.net,下载Glew源代码。解压后得到glew-2.1.0文件夹,将其移动至D:\env\source目录。
2.2、编译 Glew 2.1.0
双击打开 D:\env\source\glew-2.1.0\build\vc12 下的glew.sln解决方案。VS弹出“重定向项目”对话框,点击“确定”。
确保VS是“Debug”和“×64”模式,右键选择“glew_shared”项目,点击“生成”!
如果不出意外的话,应该为提示“生成成功”!
同样,设置VS是“Release”和“×64”模式,右键选择“glew_shared”项目,点击“生成”!编译Glew的Release库。
右键选择“glew_static”项目,打开属性,确保属性表当前也是“Debug”和“×64”模式。
将C/C++→代码生成→运行库,设置为“多线程调试MTd”!
确定后,右键选择“glew_static”项目,点击“生成”!生成成功!
至此,Glew 2.1.0的Debug库编译完成!
再来编译Glew 2.1.0的Release库!
确保VS是“Release”和“×64”模式,右键选择“glew_shared”项目,打开属性,确保属性表当前也是“Release”和“×64”模式。
将C/C++→代码生成→运行库,设置为“多线程DLL(MD)”!
确定后,右键选择“glew_shared”项目,点击“生成”!
再右键选择“glew_static”项目,点击“生成”!
至此,Glew 2.1.0编译完成!
2.3、拷贝动态库
把以下目录的所有文件复制到D:/env/OpenGL/bin目录下:
D:\env\source\glew-2.1.0\bin\Debug\x64
D:\env\source\glew-2.1.0\bin\Release\x64
把以下目录的所有内容复制到include目录下(把整个GL文件夹复制过去):
D:\env\source\glew-2.1.0\include
把以下目录的所有文件复制到lib目录下:
D:\env\source\glew-2.1.0\lib\Debug\x64
D:\env\source\glew-2.1.0\lib\Release\x64
至此,Glew 2.1.0 安装完成!
3、编译 freeglut 3.2.1
3.1、下载源码
从官网给的链接:Download freeglut from SourceForge.net,下载freeglut源代码。解压后得到freeglut-3.2.0文件夹,将其移动至D:\env\source目录。
3.2、编译 freeglut 3.2.1
以管理员方式权限打开CMake,设置好源代码目录和工程目录,点击“Configure”。
配置完成后点击“Generate”生成VS工程。
最后点击“Open Project”打开工程。
确保VS当前是“Debug”和“×64”模式,在“解决方案资源管理器”中,右键“ALL_BUILD”,点击“
生成”。同样地,需要反复多次生成!
切换到“Release”和“×64”模式,在“解决方案资源管理器”中,右键“ALL_BUILD”,点击“
生成”。同样地,需要反复多次生成!
至此,freeglut 3.2.1 编译完成!
3.3、拷贝动态库
把以下目录的所有文件复制到D:/env/OpenGL/bin目录下:
D:\env\source\freeglut-3.2.0-build\bin\Debug
D:\env\source\freeglut-3.2.0-build\bin\Release
把以下目录的所有内容复制到include目录下(把整个GL文件夹复制过去):
D:\env\source\freeglut-3.2.0\include
把以下目录的所有文件复制到lib目录下:
D:\env\source\freeglut-3.2.0-build\lib\Debug
D:\env\source\freeglut-3.2.0-build\lib\Release
至此,freeglut 3.2.1 安装完成!
4、安装Pangolin
4.1、源码下载
从Pangolin-Github网址中下载源代码,解压得到的Pangolin文件夹移动到D:\env\source\Pangolin-0.7。
4.2、cmake生成工程
以管理员权限运行CMake,设置好源代码目录和工程目录。
点击“Configure”开始配置。若出现以下错误,则将Eigen3_DIR设置为D:/env/Eigen3.4/include/eigen3。然后再次点击“Configure”!
CMake Error at components/pango_geometry/CMakeLists.txt:3 (find_package):
Could not find a package configuration file provided by “Eigen3” with any
of the following names:
Eigen3Config.cmake
eigen3-config.cmake
Add the installation prefix of “Eigen3” to CMAKE_PREFIX_PATH or set
“Eigen3_DIR” to a directory containing one of the above files. If “Eigen3”
provides a separate development package or SDK, be sure it has been
installed.
Call Stack (most recent call first):
CMakeLists.txt:93 (include)
若出现以下错误,则将GLEW_INCLUDE_DIR设置为D:/env/OpenGL/include,将GLEW_LIBRARY设置为D:/env/OpenGL/lib/Release/glew32.lib。然后再次点击“Configure”!
CMake Error at cmake/FindGLEW.cmake:51 (MESSAGE):
Could not find GLEW
Call Stack (most recent call first):
components/pango_opengl/CMakeLists.txt:41 (find_package)
CMakeLists.txt:93 (include)
配置完成后,点击“Generate”!
如果出现很多个以下错误,则《不必管他》!直接点击“Open Project”打开VS工程!
4.3、vs2017编译
首先,确保VS当前是“Debug”和“×64”模式!在属性管理器中一次性选中除了ALL_BUILD、INSTALL、uninstall、ZERO_CHECK之外的所有工程,右键属性,确保当前属性表也是“Debug”和“×64”模式,在VC++目录→包含目录中添加以下两条:
D:\env\Eigen3.4\include\eigen3
D:\env\OpenGL\include
再将属性页的模式(不是VS的模式!)切换成“Release”和“×64”模式,作同样的设置!
点击确认,关闭属性后,在解决方案资源管理器窗口右键选择pango_python项目,点击“生成”!
生成成功后,再右键选择ALL_BUILD项目,点击“生成”!
如果出现了以下报错:
error C2039: “min”: 不是“std”的成员
则双击错误列表中的这一项,会跳转到image_io_packed12bit.cpp文件,在文件开头加上#include 。
保存后,重新右键选择ALL_BUILD项目,点击“生成”!同样地,要多次、反复生成!
再右键选择INSTALL项目,点击“生成”!多次生成!
4.4、库拷贝
把以下文件夹的内容复制到D:\env\Pangolin7\bin\Debug中:
C:\Program Files\Pangolin\bin
把以下文件夹的内容复制到D:\env\Pangolin7\include中:
C:\Program Files\Pangolin\include
把以下文件夹的内容复制到F:\Pangolin\lib\Debug中:
C:\Program Files\Pangolin\lib
然后删除"C:\Program Files\Pangolin"文件夹!
再把VS切换成“Release”和“×64”模式,类似前面的操作,先生成pango_python项目,再生成ALL_BUILD项目,最后就生成INSTALL项目!
全部完成后,把以下文件夹的内容复制到F:\Pangolin\bin\Release中:
C:\Program Files\Pangolin\bin
把以下文件夹的内容复制到F:\Pangolin\lib\Release中:
C:\Program Files\Pangolin\lib
然后删除"C:\Program Files\Pangolin"文件夹!
至此,Pangolin安装完成!