Win7 VS2017编译Blender2.79
去年在VS2013环境编译过一次,重装系统后换了VS2017,正好刚编译完Godot3.0.2,顺手把Blender也编译了吧。
官方Windows下编译指南
https://wiki.blender.org/index.php/Dev:Doc/Building_Blender/Windows
所需工具
Git for Windows
TortoiseSvn
CMake
首先用Git Clone Blender的源码,可能需要梯子工具,反正我用了,因为最近Clone Gayhub有第三方依赖库引用,不用梯子好像都失败了,我也不知道blender这个到底用不用,为了减少麻烦,直接用吧
git clone git://git.blender.org/blender.git cd blender git submodule update --init --recursive git submodule foreach git checkout master git submodule foreach git pull --rebase origin master
源码Clone完大概占678MB
Clone完blender源码,最好马上打包一份,以防以后没梯子时想用不好搞,毕竟体积不算小了,下载挺花时间的。
总之对我这种N线小破城市来说,速度的确不怎么友好,大城市的朋友请无视。
然后SVN下载预编译的第三方库文件,无需梯子
svn checkout https://svn.blender.org/svnroot/bf-blender/trunk/lib/win64_vc14 lib/win64_vc14
实际上装完TortoiseSvn,直接有右键,选SVN Checkout
写上路径就行了,要注意的一点是目录
blender
lib
要同级目录
所以,我直接在blender目录同级新建lib,再建立win64_vc14
变成
lib/win64_vc14
然后直接图形界面下载
https://svn.blender.org/svnroot/bf-blender/trunk/lib/win64_vc14
就行了
完成后大概有6.66GB,不确定是不是编译完之前的,总之大概4-6G的样子,只要TortoiseSvn中完成就行了
最后命令行再进入blender目录,注意要求cmake在Path环境变量中
make full nobuild 2017
之后就会在blender同级目录下生成
build_windows_Full_x64_vc15_Release
的VS2017工程了
打开Blender.sln,Debug下编译,经过慢长的等待
全部成功
F5调试,说找不到python36_d.dll
从
lib\win64_vc14\python\lib\python36_d.dll
复制一份到
build_windows_Full_x64_vc15_Release\bin\Debug
目录下
再次运行说还少OpenAL什么的,这时想到,应该是还要用到blender资源文件的一些东西,
所以直接就去下载一份Latest Builds
https://builder.blender.org/download/
写本文时,我用的是
Official New Compiler
blender-2.79-5389964-win64-vc14.zip
解压后,把所有dll和2.79资源目录一起复制到
build_windows_Full_x64_vc15_Release\bin\Debug
再次F5成功了
然后在blender项目源码里,creator.c的
int main函数上下断点,F5再跑,成功断下,F10步过,等操作,F5继续运行,都OK。
2018.05.05补张代码结构图
https://www.blender.org/bf/codelayout.jpg
Win7 VS2017编译Blender2.79的更多相关文章
- Win7 VS2017编译Audacity2.1.3
最近比较热衷折腾大型开源软件编译,因为在逐渐用开源软件替换盗版软件,除去盗版用着不安全的原因外,主要还是因为开源软件有源码,可以学习研究,另外就是体积小. 像Matlab每次装完都用不上什么功能,体积 ...
- Win7 VS2017编译PBR渲染引擎google filament
按照官方说明 https://github.com/google/filament 前置工具包 Windows 10 SDKVisual Studio 2017Clang 6Python 3.7Git ...
- Win7 VS2017编译bgfx图形API
官方的编译指南在这个页面 https://bkaradzic.github.io/bgfx/build.html#quick-start 目前的版本编译比较简单,下载3个项目,放于同级目录下 http ...
- Win7 VS2017编译magnum及例子
magnum是一个开源的图形中间件 Lightweight and modular C++11/C++14 graphics middleware for games and data visuali ...
- Win7 VS2017编译Godot3.0.2和2.1.4
千呼万唤屎出来,Godot终于发布3.0版本的源码了,今天是2018年3月17日,自去年接触过后,一直没事就刷刷Gayhub,看看3.0什么时候更新,刷了一年也没结果. 今天上Youtube无意中搜了 ...
- windows 平台使用 VS2017 编译openssl源码
windows 平台使用 VS2017 编译openssl源码 1)依赖安装 安装 perl 脚本解释器 下载 http://libevent.net/download 安装 nasm 汇编器 C:\ ...
- 32位win7+vs2008编译mysql 5.6.22源码并安装
以下这部分安装说明是来自http://www.2cto.com/database/201407/316681.html的win7+vs2010源码编译mysql,文章最后会说明用vs2008编译遇见的 ...
- windows 平台使用 VS2017 编译 libevent 源码
一 依赖库编译 先要将其依赖的库编译好,其中openssl需要编译到libevent中,编译成libevent_openssl.lib库,zlib在新版本中只有示例用到. 1)windows 平台使用 ...
- VS2017 编译 Visual Leak Detector + VLD 使用示例
起因 一个Qt5+VS2017的工程,需要进行串口操作,在自动时发现一段时间软件崩溃了,没有保存log,在 debug 的时候发现每运行一次应用占据的内存就多一点,后来意识到是内存泄漏了.这个真是头疼 ...
随机推荐
- 安装VMware tools
1.发现在vmware中无法复制粘贴,经查询后Centos精简版是没有VMware tools的.2.df是用来看磁盘空间使用情况的.3.rpm包的格式:name+version(主版本+此版本+修正 ...
- TS和C#的差异
1. TS中let a : () => void; 假设有个class B, B里有个方法 c; 不能像C#委托一样, a = B.c;...........如果这样的话方法c里调用的thi ...
- MATLA总结三
1.将分数表示转换为小数表示: vpa( ******(表达式或者变量), n(小数点后几位)) 2.将一个式子中的变量带入具体的值: subs( y, x, [2,3,4] ) 3.用工具箱确定阶 ...
- 【转】未能加载文件或程序集“XXX”或它的某一个依赖项。试图加载格式不正确的程序。
“/xxxxx”应用程序中的服务器错误. ------------------------------------------------------------------------------- ...
- Codeforces Round #436 D. Make a Permutation!
题意:给你n个数字,其中可能有相同的数字,要求你用其他的数字替换这些相同的数字,使得所得的序列字典序最小. Examples Input 43 2 2 3 Output 21 2 4 3 Input ...
- 提高GitHub下载速度
修改/etc/hosts 加上 151.101.72.249 GitHub.global.ssl.fastly.net 192.30.253.112 github.com
- docker容器跑redis
命令行配置: $ docker search redis $ docker pull docker.io/redis $ mkdir -p /redis/etc/conf /redis/lib /r ...
- sv函数中返回队列
如果想从函数中,返回队列或者动态数组,我们应该怎么做呢? 答案就是自己用typedef定义一个类型. typedef int queue_of_int[$]; function queue_of_in ...
- css文本垂直居中的实现
本案例已经有新的比较简便的解决方案,可以直接采用 vertical-align:middle 样式对行内元素进行垂直居中布局,详见: 微信小程序开发——如何让商品标题类文本根据内容长度垂直居中. 以下 ...
- python note 10 函数变量
1.命名空间 #内置命名空间 —— python解释器 # 就是python解释器一启动就可以使用的名字存储在内置命名空间中 # 内置的名字在启动解释器的时候被加载进内存里#全局命名空间 —— 我们写 ...