blender源代码编译运行
其实在blender官网上已经给出了编译步骤https://wiki.blender.org/wiki/Building_Blender/Windows,由于在源码编译的过程中还遇到了很多问题,特此记录一下。
文章目录
- 前提准备
- 代码下载
- 1. blender源码下载
- 2. lib下载
- 编译
前提准备
- Visual Studio2019或者2022(至少选择【Desktop Development with C++】),我自己是下载的2022版,这里记录了下载的方法及过程https://blog.csdn.net/changyana/article/details/128356682
- SVN: 我刚开始按照官网的指示下载了SlikSVN,但是最后过程中发现不会用,又卸载了SlikSVN,最后是下载了TortoiseSVN进行使用
https://tortoisesvn.net/downloads.html,这个链接页面有TortoiseSVN的软件安装包,往下滑还有相应语言配置的安装包,建议下载一个中文语言的安装包
如图,这是我下载的两个安装包,分别运行进行安装就可以啦
- git(安装时要选择add Git to your PATH)
- CMake(安装时要选择Add CMake to the system PATH for all users),由于我之前安装了Qt,里边已经自带下载了cmake,所以本次没有单独去安装。
代码下载
1. blender源码下载
首先就是去github上下载源码:https://github.com/blender/blender
建议使用git命令来下载,而不是直接下载压缩包(这两者的区别是直接下载压缩包的话不利于后续与别人代码分享)
首先就是新建一个专门放blender代码的文件夹,然后进入该文件夹下进行下载blender源码
下载指令git clone https://github.com/blender/blender.git
然后就可以看到已经下载下来的源码。
2. lib下载
然后就是下载lib
打开cmd命令行,将目录切换至克隆的blender文件夹下,执行make update
,他就会提醒你缺少lib,然后输入y
进行lib的下载。
之后它会报错,【执行上下文错误:远程主机强迫关闭了一个现有的连接】。然后询问我,retry?我输入了y,重试了几次还是报这个错误,所以确定不是网络问题,所以我就输入了n让它结束。
然后就是利用上述下载TortoiseSVN进行手动下载lib。
具体操作如下:
进入lib\win64_vc15文件夹下,注意这个lib文件夹一定要与官网上下载的blender文件夹同级,如图:
如果没有lib文件夹,就自己建一个lib\win64_vc15文件夹。进入该文件夹下,如果里边有内容,就把所有的内容都删除
然后右键,选择svn checkout(就是这里,之前用的官网里的SlikSVN没有这个svn checkout的可视化选项,然后就不知道该怎么操作了,所以就卸载了SlikSVN,安装了TortoiseSVN)
打开之后输入如下网址
https://svn.blender.org/svnroot/bf-blender/trunk/lib/win64_vc15
然后就是等待lib的下载。
不过,由于lib太大了,总是会下载失败。。
解决办法就是:先clear up,再update,具体操作过程,请看我这篇文章:https://blog.csdn.net/changyana/article/details/128364335
然后等它完成!
文件下载好后,就是编译过程
编译
这里使用的是cmake进行编译,关于cmake是否下载成功,win+r输入cmd打开命令行,然后输入cmake --version
如果能出现版本信息就表示具有cmake。
如图,在blender源码的文件夹下
在上方输入cmd,按回车打开命令行
可以看到打开的命令行路径刚好就在该文件夹下
然后输入make
进行编译
以为会正常进行,但是自己终止了,编译失败。
然后进了下官网https://wiki.blender.org/wiki/Building_Blender/Windows,换了另一种编译方式,嘻嘻。
就在blender文件的目录下,git bash,然后运行./make.bat
然后就等待编译,大概要等二十分钟,编译完成后会自己结束。
然后在blender和lib的同级下会生成一个新的文件夹
打开之后会看到Blender.sln,然后用Visual Studio打开该文件
然后在CMakePredefinedTargets/INSTALL 工程上右键【生成】
然后等待生成完成,看到0失败就好啦!(如果有失败的,看报错,可能是缺失某个文件,然后全局搜索一下别的文件夹下有没有这个文件,如果有,复制一个过去,如果没有的话,就在网上找找别人已经编译成功的里边有没有这个文件,然后复制到自己的文件夹里,再进行重新生成)
然后将blender
设为启动项目
然后看自己的VS设置的是什么模式,如果是Debug模式,就在bin\Debug文件夹下找,如果是Release模式,就在bin\Release文件夹下找。
然后我就可以在bin\Debug文件夹下找到blender.exe,双击打开就可以运行啦!
大功告成!!
blender源代码编译运行相关推荐
- IDEA 上 Tigase8.0 源代码编译运行
一些小伙伴们经常问Tigase8 check下来的源代码怎么跑起来,因为我不能及时一 一回答,所以还是写个博文来演示一下吧,一般针对新手而言,老手的话,就跳过吧! 一.一般第一步是进入tigase的官 ...
- java游戏刀剑_Game_rc 刀剑无双服务端后端源代码,完美编译运行,javawanmeiyunxing Engine 游戏引擎 267万源代码下载- www.pudn.com...
文件名称: Game_rc下载 收藏√ [ 5 4 3 2 1 ] 开发工具: Java 文件大小: 8214 KB 上传时间: 2016-12-01 下载次数: 0 提 供 者: 王文文 ...
- 【CLR的执行模型:将源代码编译成托管模块】
CLR:由多种不同编程语言使用的运行库 托管模块:中间语言和元数据 非托管语言:C/C++,不过此为特殊,可以写成托管代码 托管语言:C# 托管模块 1,PE32/PE32+头:PE32运行在win3 ...
- java 源码分析_Java 源代码编译成 Class 文件的过程分析
原标题:Java 源代码编译成 Class 文件的过程分析 在上篇文章< Java三种编译方式:前端编译 JIT编译 AOT编译 >中了解到了它们各有什么优点和缺点,以及前端编译+JIT编 ...
- Java 11 快要来了,编译 运行一个命令搞定!
Java 11 马上要来了,原定于 9 月发布,还有不到 3 个月了,敬请期待更多新功能被加入到 11 当中,本文本讲的是 JEP 330 这个新特性. 化繁为简,一个命令编译运行源代码 看下面的代码 ...
- linux ubuntu pkg-config工具的使用(源代码编译库接口查询工具)
后更... 文章目录 1. pkg-config介绍 2. pkg-config的使用 1. pkg-config介绍 pkg-config是一个在源代码编译时查询已安装的库的使用接口的计算机工具软件 ...
- vc60如何输入c语言,vc60中如何编译运行及调试c语言程序.pdf
VC++6.0中如何编译运行调试 C语言程序 1. 启动VC++6.0 (如下图) 2. 单个源文件的编译运行 例如下面的源代码 #include void main() { int i,sum=0; ...
- 【AWSL】之Linux源代码编译及配置yum源(tar 解包、./configure配置软件模块、make)
源代码编译 序言 一.源代码概述 1.使用源代码安装软件的优点 2.应用场合举例 3.安装源代码软件为什么使用编译安装 二.编译安装的基本思路 三.配置本地yum源仓库 四.`yum常用命令` 五.` ...
- [GO语言基础] 二.编译运行、语法规范、注释转义及API标准库知识普及
作为网络安全初学者,会遇到采用Go语言开发的恶意样本.因此从今天开始从零讲解Golang编程语言,一方面是督促自己不断前行且学习新知识:另一方面是分享与读者,希望大家一起进步.前文介绍了什么是GO语言 ...
最新文章
- Hibernate学习(二)
- w ndows10应用商店游,来了,微软Win10应用商店开发者95%分成开始生效
- window下eclipse搭建C/C++开发环境(超简单无需插件版) .
- Shell脚本自动备份数据库
- leetcode1219. 黄金矿工(回溯)
- 用注水实验法验证勾股定理
- 哈夫曼树 (最优二叉树)
- mysql安全模式什么意思_mysql安全模式指的是什么意思
- 问题三十六:ray tracing中的Inverse Mapping(4)——圆柱面Inverse Mapping
- python学习笔记11 百度识图
- token是什么意思
- 快速了解idm+油猴插件配合,极速下载(适用于全网)
- COMPA: Detecting Compromised Accounts on Social Networks 论文分析
- 运放专题:虚短、虚短
- 宣传和灌输诚信国家理念-乌隆他尼皇家大学
- 《我不是潘金莲》所揭示的
- 万字综述!命名实体识别(NER)的过去和现在
- Log BERT 日志异常检测
- 用C语言判断输入年份是否为闰年
- O2O优惠券核销-数据分析2.0
热门文章
- 程序猿小明需要为公司员工的个人信息录入编写前端代码,html +css +js正则表达式 实现个人信息登录表
- Windows XP 系统服务优化设置详解
- 乱码大全(二) (转)
- Spotfire架构初探(Spotfire Architecture Overview)
- mysql 导出整个库表结构图_mysql导出数据库数据及表结构
- 建筑八大员考试武汉机械员考试施工机械主要类型和使用要求
- 施工员证书建筑八大员证书施工员堤防防渗墙施工的关键技术
- LOL外服怎么修改服务器,英雄联盟手游怎么改名字?外服名字修改攻略[多图]
- 零基础也会建网站,20分钟快速利用宝塔和WordPress搭建个人网站
- 上海锦隆驾校「科目二」2019年考试心得实录