buildwin_vs_cmake

Back

Building on Windows 7 with Visual Studio and Cmake. Legacy version made with a Bforartists version before 0.9.0

What do you need?

Recommendation: Visual Studio 2013 Community. Express might be okay too. But keep your hands away from the 2015 version for now: http://www.visualstudio.com/en-us/news/vs2013-community-vs.aspx
Cmake: http://www.cmake.org/download/
Git: https://git-scm.com/
Tortoisegit: https://tortoisegit.org/
Python 2.7 : https://www.python.org/downloads/
Python 3.4http://legacy.python.org/download/
7Z or a similar zip software that can handle tar.gz archives. http://www.7-zip.org/
You may also need TortoiseSVN for the libraries. But the precompiled libraries is a extra download at the moment, and isn't really required: http://tortoisesvn.net/index.de.html

We also need Cuda 6.5 in its newer incarnation. Simply install it: https://developer.nvidia.com/cuda-downloads-geforce-gtx9xx

And a version of Blender 2.76b to modify the icons. You need the Windows Installer version, the one with the .msi ending. Make sure that the path to the Blender exe is added to the Windows system variables http://download.blender.org/release/

Nice to have but not necessary is Grepwin to search the source code: http://stefanstools.sourceforge.net/grepWin.html

Downloading the repository

So we have downloaded and installed the tools. Time to download the repository and the libs. Choose a location. When possible a folder directly at a drive. I have chosen drive H, and have created the folder bforartists, which is our target folder.

The precompiled libraries can be found here at the moment. It's a 2.5 gb file download: http://www.bforartists.de/data/dev/lib.tar.gz

Download and extract the library in the target folder.

In the target folder create a new folder called bforartists_build

Navigate to https://github.com/Bforartists/Bforartists

Next right click at our target folder and choose git clone in the rmb menu.

Spoiler: Highlight to view

We have navigated to the Bforartists Github repository before, so Git should have copied the right link into the URL field already. When not, then type in the URL manually. https://github.com/Bforartists/Bforartists

Spoiler: Highlight to view

Click okay. Git will download the bforartists repository now.

After these steps result in the target folder should look like this now. I have installed everything in a folder called test here. Note that the folder structure for the libs is required so that Cmake finds the libraries. The folder called windows_vc12 is contains the 32 bit libraries. The folder called win64_vc12 contains the 64 bit libraries :

To update the repository at a later point do a Pull with Git. To switch to another branch use Checkout. To submit changes by a push you need a Github account with email and username then.

Spoiler: Highlight to view

First the Fetch.

Now the checkout ...

Look for the master, that's the trunk. And click OK. I have for this tutorial used a branch called Bfora_master.

Success. Close it.

Check in the rmb menu. Note that this menu might missing. I have this problem with my laptop. In this case, have a look for the Git Commit -> entry in the rmb menu. It also tells you to what branch changes gets committed.

Compiling

Next chapter is the compilation itself. We have downloaded everything, we have installed everything. Time to fire up Cmake the first time.

Enter the paths to the source code, enter the path to the build folder, and click at Configure.

Spoiler: Highlight to view

Choose Visual Studio 12 2013 in the Specify the Generator for this project dropdown box to compile the 32 bit version.

Spoiler: Highlight to view

Let Cmake run through once. Then click again at Configure. The second run will turn the upper window back to normal.

Spoiler: Highlight to view

Now have a look at the errors in the lower window. Most of the warnings are of no interest at the moment. But you might have Errors. Missing dependencies for example. Install them. You might also have missing path variables by which the installed software gets recognized by Cmake.

You might get a CUDA_SDK_ROOT_DIR-NOTFOUND warning in the upper section. But Bforartists compiles nevertheless fine. In case you nevertheless want to fix this, search for nvcc in the C:\Program Files\Nvidia Corporation folder.

Spoiler: Highlight to view

Here's where you add the path to the Blender exe in case it is missing. Windows System control, Advanced system settings -> system properties.

Now have a look if everything else gets found. You can ignore the Cmake Warning about FFMpeg and OpenEXR. As told, the libs are there. It's a cosmetic problem. And you can also also ignore the -- Found shared_ptr in std namespace using <memory> header warning.

 

When you compile Blender, and not Bforartists, then you might have the above errors with the missing language paths. Bforartists does not have this problem anymore, we have unioned everything in one repository. But Blender has. And just for the sake, here's how to fix:

Spoiler: Highlight to view

Type in the following commands into the bash, one after another. Wait until the single tasks are finished:

git submodule update --init --recursive
git submodule foreach --recursive git checkout master
git submodule foreach --recursive git pull --rebase origin master

This should download you the needed submodules. And Cmake shouldn't moan anymore

For later, when you want to update the submodules, type in

git pull --rebase
git submodule foreach --recursive git pull --rebase origin master

But this just as a sidenote. As told, Bforartists does not need this step.

Back to Cmake. You have to tick Cuda to have GPU rendering enabled. Note that compiling Bforartists with Cuda the first time can take a very long time.

Most probably the Openexr libraries are not found on Windows, you can fix them by hand when you want. But it is not necessary. The libraries should nevertheless be found. You can happily ignore the warning. It's just a cosmetic problem in the Cmake GUI. In case you fix them by hand, then don't mix the libs for the 32 bit version with the libs for the 64 bit version.

Spoiler: Highlight to view

When all errors are fixed Click at Generate. This will now create the solution files in the bforartists_build folder. And you can open the Blender.sln file in Visual studio.

Note that the sln file is still called Blender.sln. Bforartists is a Blender fork. And so big parts of the file structure and the project name is still Blender.

Spoiler: Highlight to view

Click at the Blender.sln File to open Visual Studio. In VS, change the build type to Release, select the Install item in the Solution Explorer, right click at it, and choose Build. Visual Studio should now start the Build process.

Spoiler: Highlight to view

When everything works as thought then you should have a result in the bin/release folder. Congratulations. You should be able to work with the source code now.