Building Blender Help Thread

WOW

Got closer that time!!!

It asked me to specify the name of the executable.

I just thought it meant to give it a name, so I typed in Blender25 but it didn’t work. :confused:

EDIT: Wait, it DID work!!!

AWESOME!!!

W000000000!

I BUILT BLENDER!!!

Wow, that really makes me want to learn coding. EPIC :smiley:

THANKS SO MUCH!!! :smiley:

Heh :slight_smile: you’re welcome!

btw. If you look at the left tree list in msvc, the project in bold is the project that will be executed on pressing the run button :wink: (can change that by setting startup project using the context menu)

Interesting, thanks.

I also built 2.49. :eyebrowlift2:

Hmm, now I"m trying to build 2.5 on my laptop, and I keep getting fatal errors.

I’m guessing the problem has something to do with libraries and directory structures. :stuck_out_tongue:

Also I’m not sure if I have the DirectX SDK.

And could a mod move this to off topic? Thanks.

now that the smoke stuff is in 2.5 I’ve been trying to build an “openmp” enabled version on linux so that I can enjoy some nice multithreaded simulation!

I’m building with scons and GCC on ubuntu 9.04 64 bit (jaunty)

I’ve changed the compiler flags in user-config.py to the following and it fails to build…

CCFLAGS = [‘-march=core2’, ‘-pipe’, ‘-fPIC’, ‘-funsigned-char’, ‘-fno-strict-aliasing’, ‘-fomit-frame-pointer’, ‘-O3’, ‘-funroll-loops’, ‘-msse’, ‘-msse2’, ‘-msse3’, ‘-mmmx’, ‘-mfpmath=sse,387’, ‘-fopenmp’]

if i leave off the


'-fopenmp'

it builds fine…

so where am I going wrong?


Linking program ==> 'blender'
/home/michael/svn-2.5/blender2.5/build/linux2/lib/libbf_blenkernel.a(shrinkwrap.o): In function `shrinkwrap_calc_nearest_surface_point.omp_fn.0':
shrinkwrap.c:(.text+0x19d): undefined reference to `omp_get_num_threads'
shrinkwrap.c:(.text+0x1a9): undefined reference to `omp_get_thread_num'
/home/michael/svn-2.5/blender2.5/build/linux2/lib/libbf_blenkernel.a(shrinkwrap.o): In function `shrinkwrap_calc_nearest_vertex.omp_fn.2':
shrinkwrap.c:(.text+0x48c): undefined reference to `omp_get_num_threads'
shrinkwrap.c:(.text+0x498): undefined reference to `omp_get_thread_num'
/home/michael/svn-2.5/blender2.5/build/linux2/lib/libbf_blenkernel.a(shrinkwrap.o): In function `shrinkwrap_calc_normal_projection.omp_fn.1':
shrinkwrap.c:(.text+0xcf2): undefined reference to `omp_get_num_threads'
shrinkwrap.c:(.text+0xcfe): undefined reference to `omp_get_thread_num'
/home/michael/svn-2.5/blender2.5/build/linux2/lib/libbf_blenkernel.a(shrinkwrap.o): In function `shrinkwrapModifier_deform':
shrinkwrap.c:(.text+0x124c): undefined reference to `GOMP_parallel_start'
shrinkwrap.c:(.text+0x1259): undefined reference to `GOMP_parallel_end'
shrinkwrap.c:(.text+0x1386): undefined reference to `GOMP_parallel_start'
shrinkwrap.c:(.text+0x1393): undefined reference to `GOMP_parallel_end'
shrinkwrap.c:(.text+0x1539): undefined reference to `GOMP_parallel_start'
shrinkwrap.c:(.text+0x1546): undefined reference to `GOMP_parallel_end'
/home/michael/svn-2.5/blender2.5/build/linux2/lib/libbf_blenkernel.a(smoke.o): In function `smoke_calc_transparency.omp_fn.0':
smoke.c:(.text+0x2a8b): undefined reference to `omp_get_num_threads'
smoke.c:(.text+0x2a96): undefined reference to `omp_get_thread_num'
/home/michael/svn-2.5/blender2.5/build/linux2/lib/libbf_blenkernel.a(smoke.o): In function `smoke_calc_transparency':
smoke.c:(.text+0x3ce4): undefined reference to `GOMP_parallel_start'
smoke.c:(.text+0x3cf1): undefined reference to `GOMP_parallel_end'
/home/michael/svn-2.5/blender2.5/build/linux2/lib/libbf_blenkernel.a(implicit.o): In function `dot_lfvector.omp_fn.1':
implicit.c:(.text+0x39b): undefined reference to `omp_get_num_threads'
implicit.c:(.text+0x3a3): undefined reference to `omp_get_thread_num'
/home/michael/svn-2.5/blender2.5/build/linux2/lib/libbf_blenkernel.a(implicit.o): In function `mul_bfmatrix_lfvector.omp_fn.0':
implicit.c:(.text+0x775): undefined reference to `GOMP_sections_next'
/home/michael/svn-2.5/blender2.5/build/linux2/lib/libbf_blenkernel.a(implicit.o): In function `cg_filtered':
implicit.c:(.text+0x3758): undefined reference to `GOMP_parallel_sections_start'
implicit.c:(.text+0x3765): undefined reference to `GOMP_parallel_end'
implicit.c:(.text+0x3d4b): undefined reference to `GOMP_parallel_start'
implicit.c:(.text+0x3d5d): undefined reference to `GOMP_parallel_end'
implicit.c:(.text+0x3e4d): undefined reference to `GOMP_parallel_sections_start'
implicit.c:(.text+0x3e5c): undefined reference to `GOMP_parallel_end'
implicit.c:(.text+0x41d8): undefined reference to `GOMP_parallel_start'
implicit.c:(.text+0x41e7): undefined reference to `GOMP_parallel_end'
implicit.c:(.text+0x45c1): undefined reference to `GOMP_parallel_start'
implicit.c:(.text+0x45d0): undefined reference to `GOMP_parallel_end'
implicit.c:(.text+0x4947): undefined reference to `GOMP_parallel_start'
implicit.c:(.text+0x4956): undefined reference to `GOMP_parallel_end'
/home/michael/svn-2.5/blender2.5/build/linux2/lib/libbf_blenkernel.a(implicit.o): In function `simulate_implicit_euler':
implicit.c:(.text+0x4c02): undefined reference to `GOMP_parallel_sections_start'
implicit.c:(.text+0x4c0f): undefined reference to `GOMP_parallel_end'
/home/michael/svn-2.5/blender2.5/build/linux2/lib/libbf_blenkernel.a(implicit.o): In function `cg_filtered_pre':
implicit.c:(.text+0x75b8): undefined reference to `GOMP_parallel_sections_start'
implicit.c:(.text+0x75c5): undefined reference to `GOMP_parallel_end'
implicit.c:(.text+0x7680): undefined reference to `GOMP_parallel_sections_start'
implicit.c:(.text+0x768d): undefined reference to `GOMP_parallel_end'
implicit.c:(.text+0x7a0e): undefined reference to `GOMP_parallel_sections_start'
implicit.c:(.text+0x7a1b): undefined reference to `GOMP_parallel_end'
implicit.c:(.text+0x7e1a): undefined reference to `GOMP_parallel_start'
implicit.c:(.text+0x7e27): undefined reference to `GOMP_parallel_end'
implicit.c:(.text+0x7e6b): undefined reference to `GOMP_parallel_start'
implicit.c:(.text+0x7e78): undefined reference to `GOMP_parallel_end'
implicit.c:(.text+0x7ff6): undefined reference to `GOMP_parallel_sections_start'
implicit.c:(.text+0x8005): undefined reference to `GOMP_parallel_end'
implicit.c:(.text+0x836a): undefined reference to `GOMP_parallel_start'
implicit.c:(.text+0x8379): undefined reference to `GOMP_parallel_end'
implicit.c:(.text+0x898d): undefined reference to `GOMP_parallel_start'
implicit.c:(.text+0x899a): undefined reference to `GOMP_parallel_end'
/home/michael/svn-2.5/blender2.5/build/linux2/lib/libbf_blenkernel.a(implicit.o): In function `mul_bfmatrix_lfvector.omp_fn.0':
implicit.c:(.text+0x789): undefined reference to `GOMP_sections_end_nowait'
/home/michael/svn-2.5/blender2.5/build/linux2/lib/libbf_blenlib.a(BLI_kdopbvh.o): In function `non_recursive_bvh_div_nodes.omp_fn.1':
BLI_kdopbvh.c:(.text+0x2437): undefined reference to `omp_get_num_threads'
BLI_kdopbvh.c:(.text+0x243e): undefined reference to `omp_get_thread_num'
/home/michael/svn-2.5/blender2.5/build/linux2/lib/libbf_blenlib.a(BLI_kdopbvh.o): In function `non_recursive_bvh_div_nodes':
BLI_kdopbvh.c:(.text+0x322c): undefined reference to `GOMP_parallel_start'
BLI_kdopbvh.c:(.text+0x3239): undefined reference to `GOMP_parallel_end'
/home/michael/svn-2.5/blender2.5/build/linux2/lib/libbf_blenlib.a(BLI_kdopbvh.o): In function `BLI_bvhtree_overlap.omp_fn.0':
BLI_kdopbvh.c:(.text+0x37bf): undefined reference to `omp_get_num_threads'
BLI_kdopbvh.c:(.text+0x37c7): undefined reference to `omp_get_thread_num'
/home/michael/svn-2.5/blender2.5/build/linux2/lib/libbf_blenlib.a(BLI_kdopbvh.o): In function `BLI_bvhtree_overlap':
BLI_kdopbvh.c:(.text+0x3d67): undefined reference to `GOMP_parallel_start'
BLI_kdopbvh.c:(.text+0x3d77): undefined reference to `GOMP_parallel_end'
collect2: ld returned 1 exit status
scons: *** [/home/michael/svn-2.5/blender2.5/build/linux2/bin/blender] Error 1
scons: building terminated because of errors.

I wish I could help, but you should always post the error messages, like Michael W did :slight_smile:
Even if it’s just the first few messages (they are usually the most helpful). It will really help other people to help you.

Also I’m not sure if I have the DirectX SDK.

You can find if it’s installed by looking at your software installation screen (the one in your Windows control panel). If it’s not there yet, you can find the sdk by following these steps:

  • Point your browser to http://msdn.microsoft.com (first stop to look at when you need an sdk on Windows)
  • Use the search function and type in what you’re looking for
  • In our situation, we’re looking for “DirectX SDK 2009”, with 2009 added so we can get the most recently made available version of the sdk
  • March 2009 seems to be latest, so you can click on that url to download the sdk. You’ll need a valid version of Windows to download the kit.

I’m intentionally not giving you a direct link to the download page, because it’s better to learn how to find that kind of stuff by yourself, so you can find new and other sdk’s as well :slight_smile:

And could a mod move this to off topic? Thanks.

You can also use the report button for that, it’s not for those who sell shoes only :stuck_out_tongue:

I don’t do Scons and I don’t use GCC either (not anymore), but have you tried adding “-Wl,-fopenmp” (without quotation marks) to LDFLAGS?

(and of course, you should leave it there in CCFLAGS as well)

Try adding it to the ‘LLIBS’ section.

It works, hence all the GOMP stuff, it just doesn’t look like it’s linking.

Like he did with the whole error message? I probably didn’t because I thought it was too long, but I will in the future.

Thanks.

You can find if it’s installed by looking at your software installation screen (the one in your Windows control panel). If it’s not there yet, you can find the sdk by following these steps:

  • Point your browser to http://msdn.microsoft.com (first stop to look at when you need an sdk on Windows)
  • Use the search function and type in what you’re looking for
  • In our situation, we’re looking for “DirectX SDK 2009”, with 2009 added so we can get the most recently made available version of the sdk
  • March 2009 seems to be latest, so you can click on that url to download the sdk. You’ll need a valid version of Windows to download the kit.

I’m intentionally not giving you a direct link to the download page, because it’s better to learn how to find that kind of stuff by yourself, so you can find new and other sdk’s as well :slight_smile:

Too late, already installed it. So I guess I didn’t have it. :stuck_out_tongue:

You can also use the report button for that, it’s not for those who sell shoes only :p[/quote]

Yep, but part of it is okay, too. Just make sure it’s the first few lines (10 or so) and not the last few lines (or just post everything if it’s not too much) :slight_smile:

Are you referring to the build log that you see in the output window when you’re building it in MSVC or a build log file somewhere else?

This Thread Needs to be Sticky-d!™

.-approved by felix.™ :yes:

(ps. there really should be a how to build blender sticky with links here)…

Lol @ felix…

Yes :yes:

(there 's indeed a more extensive build log to be found in the output directories, but they mostly contain additional information about compiler and linker settings that were used. Usually it’s fine to copy the text from the output window only)

Tried to build the trunk version with Jens’ user-config.py - works ok. But when I enable openmp (WITH_BF_OPENMP = ‘1’) building terminates with this:

Compiling ==> ‘WTURBULENCE.cpp’
{standard input}:14279:non-relocatable subtraction expression, “__ZZ57_ZN11WTURBULENCE18stepTurbulenceFullEfPfS0_S0_Ph.omp_fn.0E5C.207” minus “L00000000025$pb”
{standard input}:14279:symbol: “__ZZ57_ZN11WTURBULENCE18stepTurbulenceFullEfPfS0_S0_Ph.omp_fn.0E5C.207” can’t be undefined in a subtraction expression
{standard input}:14272:non-relocatable subtraction expression, “__ZZ57_ZN11WTURBULENCE18stepTurbulenceFullEfPfS0_S0_Ph.omp_fn.0E5C.206” minus “L00000000025$pb”
{standard input}:14272:symbol: “__ZZ57_ZN11WTURBULENCE18stepTurbulenceFullEfPfS0_S0_Ph.omp_fn.0E5C.206” can’t be undefined in a subtraction expression
{standard input}:14265:non-relocatable subtraction expression, “__ZZ57_ZN11WTURBULENCE18stepTurbulenceFullEfPfS0_S0_Ph.omp_fn.0E5C.205” minus “L00000000025$pb”
{standard input}:14265:symbol: “__ZZ57_ZN11WTURBULENCE18stepTurbulenceFullEfPfS0_S0_Ph.omp_fn.0E5C.205” can’t be undefined in a subtraction expression
{standard input}:14259:non-relocatable subtraction expression, “__ZZ57_ZN11WTURBULENCE18stepTurbulenceFullEfPfS0_S0_Ph.omp_fn.0E5C.204” minus “L00000000025$pb”
{standard input}:14259:symbol: “__ZZ57_ZN11WTURBULENCE18stepTurbulenceFullEfPfS0_S0_Ph.omp_fn.0E5C.204” can’t be undefined in a subtraction expression
{standard input}:14252:non-relocatable subtraction expression, “__ZZ57_ZN11WTURBULENCE18stepTurbulenceFullEfPfS0_S0_Ph.omp_fn.0E5C.203” minus “L00000000025$pb”
{standard input}:14252:symbol: “__ZZ57_ZN11WTURBULENCE18stepTurbulenceFullEfPfS0_S0_Ph.omp_fn.0E5C.203” can’t be undefined in a subtraction expression
{standard input}:14244:non-relocatable subtraction expression, “__ZZ57_ZN11WTURBULENCE18stepTurbulenceFullEfPfS0_S0_Ph.omp_fn.0E5C.202” minus “L00000000025$pb”
{standard input}:14244:symbol: “__ZZ57_ZN11WTURBULENCE18stepTurbulenceFullEfPfS0_S0_Ph.omp_fn.0E5C.202” can’t be undefined in a subtraction expression
scons: *** [/Users/fairefils/Baustelle/Build_Projects/bf-blender/2.5-py3.1sl-build/darwin/intern/smoke/intern/WTURBULENCE.o] Error 1
scons: building terminated because of errors.

Any suggestions?

Well, like my like coding teacher in school asked me once when he called me up to his desk after looking at my code, “Are you dyslexic?” And I replied, “yes… :(” He then said, “I thought so.”

So if anyone has or could be so kind as to do a video tutorial showing me how to build blender, that would help not only me, but probably a lot of people who can’t grasp the wording in the directions here. Like he also said, “You’re not stupid, you just don’t get it.” …not sure if that comment was helpful or not :slight_smile: