win10 编译 Pangolin

发布于:2022-12-09 ⋅ 阅读:(800) ⋅ 点赞:(0)

目录

1、下载 cmake

2、Glew 编译

2.1、下载源码

2.2、编译 Glew 2.1.0

2.3、拷贝动态库

3、编译 freeglut 3.2.1

3.1、下载源码

3.2、编译 freeglut 3.2.1

3.3、拷贝动态库

4、安装Pangolin

4.1、源码下载

4.2、cmake生成工程

4.3、vs2017编译

4.4、库拷贝


        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安装完成!

本文含有隐藏内容,请 开通VIP 后查看

网站公告

今日签到

点亮在社区的每一天
去签到