games101【作业0】环境配置——windows环境配置

配置Windows相关环境(Cmake + MingW + VS code + Eigen + Opencv):

主要参考GAMES101课程环境搭建(Win10+VSCode)

  1. 下载Cmake

    • 下载电脑windows对应版本的msi文件
    • 其中选项将Cmake添加至所有用户的全局环境变量
    • 命令行输入cmake --help,验证是否安装成功
  2. 下载安装Gcc编译器mingw

    • 参考以下博客Cmake+MinGw64搭建环境,以及选择免安装的mingw

    • 点击下载posix文件,带seh后缀(因为如果使用安装程序,会导致后面有个兼容性问题)

    • 下载完毕解压得到一个mingw64文件夹,放到任意你想放的位置

    • 将mingw的bin文件路径添加到系统环境变量

    • 使用g++ -v查看版本,验证是否安装成功

  3. Visual studio code下载安装

    • 安装插件C/C++ windows
    • 安装插件cmake twxx
    • 安装插件cmake tools
  4. 第三方依赖库编译和安装—Eigen库

    • 下载对应版本,这里用到的是Eigen3
    • 解压到任意目录,eigen的根目录下新建一个build目录
    • 打开cmake软件,source目录设置成eigen的根目录,build目录设置成刚刚新建的目录,然后点击configure,出来的makefile的格式选择 mingw,等待config结束
    • 点击generate
    • 管理员权限运行cmd,进入build目录,运行mingw32-make,之后运行 mingw32-make install
    • 这里无法识别上一条的命令行,需要到mingw根目录的bin下面去,然后在该路径下打开命令行,然后输入命令:“mingw-get install gcc g++ mingw32-make
    • 然后发现上一个命令也不行,于是去官网下载mingw32-make.exe文件
    • 删除解压出来的这个eigen目录(因为上面安装的已经安装到了c盘Program File x86里了,有时候build的时候会找错路径)
  5. 第三方依赖库编译和安装—opencv

    • 官网下载最新版本的openCV
    • 解压得到一个opencv-+++命名的文件, 将其放到任意目录,重命名为source
    • 同时同级目录下新建build文件夹
    • 打开cmake软件,source目录设置成XXX/source,build目录设置成刚刚新建的目录,然后点击configure,出来的makefile的格式选择mingw,等待config结束
    • 找到OPENCV_ENABLE_ALLOCATOR_STATS,不勾选后面的对勾(不这样会编译错误), 再次点击configure,之后点击generate
    • 管理员权限运行cmd,进入build目录,运行mingw32-make(这个很慢),之后运行mingw32-make install
    • 设置opencv的环境变量,管理员权限运行cmd, 执行 setx -m OpenCV_DIR path_to_build/lib/,然后把path_to_build/bin添加到path系统环境变量里

最后的执行中,需要在Cmakelist中标注好文档的库,以及复制mingw32-make重命名为make文件,在cd build后,linux系统只需要进行cmake …,这里需要输入cmake -G "Unix Makefiles" ../来替换

其中Cmakelist文档中需要添加Eigen的路径为:"C:\\Program Files (x86)\\Eigen3\\include\\eigen3",也就是我编译好的eigen所在位置

参考博客1:Windows环境下使用VSCode和CMake学习Eigen库的使用

参考博客2:win10下mingw64+cmake+make

参考博客3:WIN10下使用MinGW编译安装运行OpenCV

参考博客4:WINDOWS下CMake+MinGW64搭建C/C++编译环境

最终参考文档——大佬!!!!!!:GAMES101课程环境搭建(Win10+VSCode)

作业0中已有虚拟机等环境配置,这里不赘述

简单方法:

安装opencv,Eigen后,直接安装vs(集成环境),然后就完事儿,快乐享受写代码就ok。
因为用其他的更加了解编译方式,然后cmake可以移植跨平台

你可能感兴趣的:(图形学,cmake,c++)