media-gfx/blender-2.49b-r2 fails to build on systems running a linux-3.x kernel. Reproducible: Always Steps to Reproduce: 1. emerge =media-gfx/blender-2.49b-r2 2. fail in the very early compile stage 3. Actual Results: >>> Compiling source in /var/tmp/portage/media-gfx/blender-2.49b-r2/work/blender-2.49b ... scons: Reading SConscript files ... Command-line arguments No command-line arguments given Command-line targets No targets given, using default config/linux3-config.py doesn't exist Using user-config file: user-config.py Build with 7 parallel jobs IndexError: string index out of range: File "/var/tmp/portage/media-gfx/blender-2.49b-r2/work/blender-2.49b/SConstruct", line 299: if not B.root_build_dir[-1]==os.sep: * ERROR: media-gfx/blender-2.49b-r2 failed (compile phase): (Full build.log and enviroment logs attached) Expected Results: media-gfx/blender-2.49b-r2 to build and install. emerge --info Portage 2.1.10.11 (default/linux/amd64/10.0/desktop, gcc-4.4.6, glibc-2.13-r4, 3.0.3 x86_64) ================================================================= System uname: Linux-3.0.3-x86_64-AMD_Phenom-tm-_II_X6_1090T_Processor-with-gentoo-2.0.3 Timestamp of tree: Mon, 29 Aug 2011 22:00:01 +0000 (Full emerge --info added as attachment) There are still many add-ons that are not available for the blender-2.5 series. A working version of blender-2.49b would be very useful. Thank you. Tim
Created attachment 285037 [details] emerge --info
Created attachment 285039 [details] build.log
I confirm the same exactly behavior. Looks like "B.root_build_dir" appears to be an empty string...
(In reply to comment #3) > I confirm the same exactly behavior. > Looks like "B.root_build_dir" appears to be an empty string... And the reason "B.root_build_dir" appears to be an empty string is that config/linux3-config.py doesn't exist (from the build.log) In bug 276338 (media-gfx/blender-2.5 SVN) a patch was created (thanks Shannon) that simply added; if platform=='linux3': platform ='linux2' to the SConstuct file. That way the config/linux2-config.py configuration file would get used. Worked fine.
This post is to mention that the same happens with all newer versions of blender in portage.
ompiling ==> 'header_action.c' Compiling ==> 'butspace.c' Compiling ==> 'transform.c' Compiling ==> 'editipo_mods.c' Compiling ==> 'fsmenu.c' Compiling ==> 'drawipo.c' Compiling ==> 'buttons_scene.c' source/blender/src/buttons_scene.c: In function ‘ffmpeg_property_add’: source/blender/src/buttons_scene.c:2726:9: error: incompatible types when assigning to type ‘int’ from type ‘const union <anonymous>’ source/blender/src/buttons_scene.c:2731:9: error: incompatible types when assigning to type ‘float’ from type ‘const union <anonymous>’ source/blender/src/buttons_scene.c: In function ‘run_playanim’: source/blender/src/buttons_scene.c:1674:8: warning: ignoring return value of ‘system’, declared with attribute warn_unused_result scons: *** [/var/tmp/portage/media-gfx/blender-2.49b-r2/work/build/linux2/source/blender/src/buttons_scene.o] Error 1 scons: building terminated because of errors. * ERROR: media-gfx/blender-2.49b-r2 failed (compile phase): * !!! Please add "${S}/scons.config" when filing bugs reports \ * to bugs.gentoo.org * * Call stack: * ebuild.sh, line 91: Called src_compile * environment, line 4847: Called die * The specific snippet of code: * scons ${MAKEOPTS/-l[0-9]} || die '!!! Please add "${S}/scons.config" when filing bugs reports \ * to bugs.gentoo.org'; * * If you need support, post the output of 'emerge --info =media-gfx/blender-2.49b-r2', * the complete build log and the output of 'emerge -pqv =media-gfx/blender-2.49b-r2'. * The complete build log is located at '/var/log/portage/media-gfx:blender-2.49b-r2:20110922-091303.log'. * The ebuild environment file is located at '/var/tmp/portage/media-gfx/blender-2.49b-r2/temp/environment'. * S: '/var/tmp/portage/media-gfx/blender-2.49b-r2/work/blender-2.49b'
I can confirm what tman wrote: it doesn't compile in that spot (ffmpeg_property_add), but this doesn't seem to be a 3.x kernel issue. Got the same error: Compiling ==> 'resources.c' source/blender/src/buttons_scene.c: In function ‘run_playanim’: source/blender/src/buttons_scene.c:1674: warning: ignoring return value of ‘system’, declared with attribute warn_unused_result source/blender/src/buttons_scene.c: In function ‘ffmpeg_property_add’: source/blender/src/buttons_scene.c:2726: error: incompatible types when assigning to type ‘int’ from type ‘const union <anonymous>’ source/blender/src/buttons_scene.c:2731: error: incompatible types when assigning to type ‘float’ from type ‘const union <anonymous>’ scons: *** [/var/tmp/portage/media-gfx/blender-2.49b-r2/work/build/linux2/source/blender/src/buttons_scene.o] Error 1 It's not 3.x kernel dependent, so I think this should go into a seperate bug. Should it? ;)
(In reply to comment #4) > In bug 276338 (media-gfx/blender-2.5 SVN) a patch was created (thanks Shannon) > that simply added; > > if platform=='linux3': > platform ='linux2' > > to the SConstuct file. That way the config/linux2-config.py configuration file > would get used. Worked fine. Thanks for that! (In reply to comment #5) > This post is to mention that the same happens with all newer versions of > blender in portage. Adjusting bug subject accordingly. (In reply to comment #7) > It's not 3.x kernel dependent, so I think this should go into a seperate bug. > Should it? ;) Seconding that.
+ 29 Oct 2011; Sebastian Pipping <sping@gentoo.org> blender-2.57-r1.ebuild, + +files/blender-2.57-linux-3.patch: + Allow compilation of Blender 2.57-r1 against Linux 3.x (bug #381099) +
Fixing 2.49b took longer because (in a way) subversion 1.7 broke the build and the problem took me some time to figure out. This should be it. Closing. + 29 Oct 2011; Sebastian Pipping <sping@gentoo.org> blender-2.49b-r2.ebuild, + +files/blender-2.49b-subversion-1.7.patch: + Allow compilation of Blender 2.49b-r2 against Linux 3.x (bug #381099) and + Subversion 1.7 +