Building branch blender2.8 from scratch has problems on (at least) Mac and Windows


#1

On Mac I’m doing the usual…

git clone -b blender2.8 http://git.blender.org/blender.git
cd blender
make update
make

The make update yields a few errors like

error: pathspec 'blender2.8' did not match any file(s) known to git.

I also see an error like

Previous HEAD position was 5c4210d Fix T56749: np_station: Indentation Error in np_point_dimension.

Running make produces and executable the seems to run. However, the first thing I noticed is that subdivision surfaces and multires modifiers appear to have no affect whatsoever.

I did the usual Windows build as well (slightly different steps). It also yields similar errors and builds a running version of Blender where subdivision surfaces and multires don’t work.

I started noticing this issue on both platforms yesterday (not sure if that’s when it started).

Downloading the official beta or daily builds gets me a version with everything working properly.

Is there a different branch or tag I should be using now?

Thanks,
~chuck


#2

I’ve tried this several times from scratch with the same result.


#3

git clone -b might not set up remote tracking for the branch? It’s not what we use in the build instructions in any case. I imagine most people just git checkout blender2.8 after cloning.
https://wiki.blender.org/wiki/Building_Blender/Mac

For OpenSubdiv, you can either remove your build_darwin folder for a completely clean build, or enable WITH_OPENSUBDIV in cmake.


#4

The build instructions on the wiki have a couple extra steps. Try running

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

within the blender folder, then run make update and make. On Mac you may have to go into the build_darwin folder and run make install.


#5

Hmm, it always seemed to work up until now. Anyway, I’ve never seen any explicit instructions as to how to build 2.8. There are only instructions for master on that page. I’ll try the suggestions I haven’t tried yet.


#6

The Mac build documentation doesn’t actually call for running those instructions and I’ve never had to do it before. Seems like make update takes care of those. I’ll give it a try though.

Do I want to checkout master for any of those? That used to install the wrong add-ons for 2.8.

It would be great to see instructions for building against a branch/tag, at least for 2.8.

It was all working until I noticed it wasn’t yesterday on both OS’s. ¯_(ツ)_/¯. Not sure when it broke.


#7

Do you mean WITH_OPENSUBDIV=ON ?


#8

So… do I do the git checkout blender2.8 right after cloning master? Or do I pull the submodules or make update first? I’m just trying to find the right order of things. Can’t find any instructions on building 2.8, which is why I was guessing. Thx.


#9

Not even sure where I’m supposed to set that to ON.


#10

I did my setup just like Chuck (or at least just like the wiki instructions with the addition of the -b blender2.8 on the initial checkout), and I get those same messages from make update, but it has never seemed to cause a problem. My OpenSubdiv appears to work (at least I think it’s OpenSubdiv).

The one other issue I had originally was that “make full” did not build CUDA support at least to the degree that my video card did not show up in the CUDA device Preference. Since then I’ve been doing “make release” which has always built everything and I’ve never seen a discrepancy between my build and the nightly builds (doesn’t mean there aren’t any).

P.S. This is Windows 10 with Nvidia 1060.


#11

Yeah, I can’t get CUDA to work at all for me when I build on Windows.

On Mac, I had been running make and it has worked for a long time. I discovered that make full gets me back subdivision surfaces. Are they OpenSubDiv? No idea. Not sure how to tell.

Really unsure how this all fits together.

As far as enabling WITH_OPENSUBDIV in CMake, do I just do that on the make command line like…

BUILD_CMAKE_ARGS='-DWITH_OPENSUBDIV=ON' make full

? Not sure of the syntax.


#12

Have you tried make release?


#13

Not yet. And I’m only trying on my Mac at the moment. Windows build is just totally failing for me as of a few hours ago. I’ll get back with results of both before too long.


#14

The other thing is that the Blender build on my MacBook Pro runs in about 1/10th the time as my Windows build. Some of this is probably because I don’t even try to build the CUDA stuff on my Mac at the moment. I’m actually trying to port some of this stuff to Metal (one of my many goals). If nothing else, I’ve found some brilliant GPU code inside of Blender/Cycles.


#15

I can successfully make release on the Mac. Will try Windows again after some dinner.


#16

So I got make full working properly on Windows. However, it still doesn’t see my 2 Nvidia GPUs. I do see that it is picking up CUDA 10.0 even though I have CUDA 9.1 on the machine as well. I suppose I’ll have to change something about my Path to build Blender. But I don’t want to break my Vulkan and CUDA 10.0 code. So I’ll have to figure out how to wrap up the Blender build. Was hoping to spend as little time as possible fighting with Windows. And make release works as well on Windows.

And make release results in my GPUs being found even though it warned me that it was using CUDA 10.0.


#17

My windows make release only takes a couple minutes unless it decides it needs to rebuild all the CUDA kernels, in which case that takes an additional 20 minutes or so. Normally it’s a very reasonable build time.

And Windows builds were broken last night and this morning due to an internal compiler error caused by a change yesterday, so you might have gotten caught up in that as well.