Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 253094 - media-gfx/blender-2.48a-r3 fails to build with USE=openmp
Summary: media-gfx/blender-2.48a-r3 fails to build with USE=openmp
Status: RESOLVED OBSOLETE
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All Linux
: High normal (vote)
Assignee: Luca Barbato
URL:
Whiteboard:
Keywords:
: 281214 296283 (view as bug list)
Depends on:
Blocks:
 
Reported: 2008-12-30 05:37 UTC by Daniel Black (RETIRED)
Modified: 2012-07-16 00:59 UTC (History)
5 users (show)

See Also:
Package list:
Runtime testing required: ---


Attachments
blender.2.48a-r3.ebuild.patch (blender-2.48a-r3.ebuild.patch,282 bytes, patch)
2009-08-15 15:43 UTC, MT
Details | Diff
blender-2.49a.ebuild.patch (blender-2.49a.ebuild.patch,284 bytes, patch)
2009-08-15 15:46 UTC, MT
Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Daniel Black (RETIRED) gentoo-dev 2008-12-30 05:37:28 UTC
Configuring program blenderplayer
>>> ../install/linux2 release/freedesktop/icons/scalable blender.svg
>>> ../install/linux2 release/freedesktop/icons/32x32 blender.svg
>>> ../install/linux2 release/freedesktop/icons/32x32 blender.png
>>> ../install/linux2 release/freedesktop/icons/16x16 blender.xcf.bz2
>>> ../install/linux2 release/freedesktop/icons/16x16 blender.png
>>> ../install/linux2 release/freedesktop/icons/22x22 blender.xcf.bz2
>>> ../install/linux2 release/freedesktop/icons/22x22 blender.png
>>> ../install/linux2 release/plugins bmake
>>> ../install/linux2 release/plugins Makefile
>>> ../install/linux2 release/plugins/texture tiles.c
>>> ../install/linux2 release/plugins/texture clouds2.c
>>> ../install/linux2 release/plugins/texture Makefile
>>> ../install/linux2 release/plugins/sequence scatter.c
>>> ../install/linux2 release/plugins/sequence color-correction-hsv.c
>>> ../install/linux2 release/plugins/sequence gamma.c
>>> ../install/linux2 release/plugins/sequence dnr.c
>>> ../install/linux2 release/plugins/sequence blur.c
>>> ../install/linux2 release/plugins/sequence Makefile
>>> ../install/linux2 release/plugins/sequence color-correction-yuv.c
scons: done reading SConscript files.
scons: Building targets ...
Compiling ==> 'SND_DummyDevice.cpp'
cc1plus: warning: command line option "-Wdeclaration-after-statement" is valid for C/ObjC but not for C++
cc1plus: error: unrecognized command line option "-fopenmp"
cc1plus: error: unrecognized command line option "-fopenmp"
cc1plus: error: unrecognized command line option "-fopenmp"
Compiling ==> 'SND_C-api.cpp'
scons: *** [/var/tmp/portage/media-gfx/blender-2.48a-r3/work/build/linux2/intern/SoundSystem/dummy/SND_DummyDevice.o] Error 1
cc1plus: warning: command line option "-Wdeclaration-after-statement" is valid for C/ObjC but not for C++
cc1plus: error: unrecognized command line option "-fopenmp"
cc1plus: error: unrecognized command line option "-fopenmp"
cc1plus: error: unrecognized command line option "-fopenmp"
scons: *** [/var/tmp/portage/media-gfx/blender-2.48a-r3/work/build/linux2/intern/SoundSystem/intern/SND_C-api.o] Error 1
scons: building terminated because of errors.
 *
 * ERROR: media-gfx/blender-2.48a-r3 failed.
 * Call stack:
 *               ebuild.sh, line   49:  Called src_compile
 *             environment, line 2624:  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";
 *  The die message:
 *   !!! Please add /var/tmp/portage/media-gfx/blender-2.48a-r3/work/blender-2.48a/scons.config when filing bugs reports to bugs.gentoo.org
 *
 * If you need support, post the topmost build error, and the call stack if relevant.
 * A complete build log is located at '/var/log/portage/media-gfx:blender-2.48a-r3:20081230-051446.log'.
 * The ebuild environment file is located at '/var/tmp/portage/media-gfx/blender-2.48a-r3/temp/environment'.
 *




emerge -pv blender

These are the packages that would be merged, in order:

Calculating dependencies... done!
[ebuild  N    ] media-gfx/blender-2.48a-r3  USE="jpeg nls openal openexr openmp player png -blender-game -ffmpeg -quicktime -verse" 0 kB

 emerge --info
Portage 2.2_rc20 (default/linux/x86/2008.0, gcc-4.1.2, glibc-2.7-r2, 2.6.24-gentoo-r8 x86_64)
=================================================================
System uname: Linux-2.6.24-gentoo-r8-x86_64-AMD_Athlon-tm-_64_X2_Dual_Core_Processor_4200+-with-glibc2.0
Timestamp of tree: Tue, 30 Dec 2008 01:15:02 +0000
distcc[2313] (dcc_mkdir) ERROR: mkdir '/home/nulus/.distcc' failed: No such file or directory [disabled]
app-shells/bash:     3.2_p33
dev-java/java-config: 1.3.7-r1, 2.1.6-r1
dev-lang/python:     2.5.2-r7
dev-util/cmake:      2.6.2
sys-apps/baselayout: 1.12.11.1
sys-apps/sandbox:    1.2.18.1-r2
sys-devel/autoconf:  2.13, 2.61-r2
sys-devel/automake:  1.4_p6, 1.5, 1.7.9-r1, 1.8.5-r3, 1.9.6-r2, 1.10.2
sys-devel/binutils:  2.18-r4
sys-devel/gcc-config: 1.4.0-r4
sys-devel/libtool:   1.5.26
virtual/os-headers:  2.6.23-r3
ACCEPT_KEYWORDS="x86"
CBUILD="i686-pc-linux-gnu"
CFLAGS="-O2 -march=prescott -pipe"
CHOST="i686-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/kde/3.5/env /usr/kde/3.5/share/config /usr/kde/3.5/shutdown /usr/share/config /var/lib/hsqldb"
CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/env.d /etc/env.d/java/ /etc/fonts/fonts.conf /etc/gconf /etc/php/apache2-php5/ext-active/ /etc/php/cgi-php5/ext-active/ /etc/php/cli-php5/ext-active/ /etc/revdep-rebuild /etc/terminfo /etc/udev/rules.d"
CXXFLAGS="-O2 -march=prescott -pipe"
DISTDIR="/usr/portage/distfiles"
FEATURES="distlocks fixpackages parallel-fetch preserve-libs protect-owned sandbox sfperms strict unmerge-orphans userfetch userpriv usersandbox"
GENTOO_MIRRORS="http://mirror.internode.on.net/pub/gentoo               http://mirror.linux.org.au/gentoo               http://ftp.swin.edu.au/gentoo/              http://mirror.pacific.net.au/linux/Gentoo/              http://ftp.swin.edu.au/gentoo           http://gentoo.gg3.net/          http://gentoo.channelx.biz/                 http://ftp.iij.ad.jp/pub/linux/gentoo/          http://mirrors.64hosting.com/pub/mirrors/gentoo/           http://gentoo.oregonstate.edu            http://distro.ibiblio.org/pub/linux/distributions/gentoo"
LDFLAGS="-Wl,-O1"
LINGUAS="en_GB en_AU"
MAKEOPTS="-j2"
PKGDIR="/usr/portage/packages"
PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress --force --whole-file --delete --stats --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage"
PORTDIR_OVERLAY="/usr/local/layman/sunrise"
SYNC="rsync://mirror.internode.on.net/gentoo-portage"
(32bit chroot on x86_64 machine)

works with USE=-openmp
Comment 1 Azamat H. Hackimov 2009-02-18 10:45:36 UTC
-fopenmp, ASAP, require gcc-4.2 with enabled USE-flag openmp, that because blender wont be compiled.

I think, there must be USE-check against >=sys-devel/gcc-4.2[openmp]
Comment 2 Shinji 2009-04-26 04:46:12 UTC
Bug confirmed.

(In reply to comment #1)
> -fopenmp, ASAP, require gcc-4.2 with enabled USE-flag openmp, that because
> blender wont be compiled.
> 
> I think, there must be USE-check against >=sys-devel/gcc-4.2[openmp]
> 

running the following emerges gcc with the correct use flag and so blender should emerge properly with the flag enabled also:

USE="openmp" emerge --newuse gcc

^  should force gcc to reinstall with the new useflag

This error seems to happen because GCC was installed before openmp was added to the USE variable, so when blender goes to update it knows openmp is there, but gcc doesn't (and wasn't configured with it either).
Comment 3 Ben McKenzie 2009-05-16 16:20:38 UTC
I'm having this problem with Blender as well, and I already have openmp compiled into gcc. Other programs with the openmp flag have not had this problem. (Imagemagick is currently compiled with openmp support.)

Error:

scons: done reading SConscript files.
scons: Building targets ...
Compiling ==> 'SND_DummyDevice.cpp'
Compiling ==> 'SND_WaveSlot.cpp'
cc1plus: warning: command line option "-Wdeclaration-after-statement" is valid for C/ObjC but not for C++
cc1plus: error: unrecognized command line option "-fopenmp"
cc1plus: error: unrecognized command line option "-fopenmp"
cc1plus: error: unrecognized command line option "-fopenmp"
cc1plus: warning: command line option "-Wdeclaration-after-statement" is valid for C/ObjC but not for C++
cc1plus: error: unrecognized command line option "-fopenmp"
cc1plus: error: unrecognized command line option "-fopenmp"
cc1plus: error: unrecognized command line option "-fopenmp"
scons: *** [/var/tmp/portage/media-gfx/blender-2.48a-r3/work/build/linux2/intern/SoundSystem/dummy/SND_DummyDevice.o] Error 1
scons: *** [/var/tmp/portage/media-gfx/blender-2.48a-r3/work/build/linux2/intern/SoundSystem/intern/SND_WaveSlot.o] Error 1
scons: building terminated because of errors.
 * 
 * ERROR: media-gfx/blender-2.48a-r3 failed.
 * Call stack:
 *               ebuild.sh, line   48:  Called src_compile
 *             environment, line 2697:  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";
 *  The die message:
 *   !!! Please add /var/tmp/portage/media-gfx/blender-2.48a-r3/work/blender-2.48a/scons.config when filing bugs reports to bugs.gentoo.org
 * 
 * If you need support, post the topmost build error, and the call stack if relevant.
 * A complete build log is located at '/var/tmp/portage/media-gfx/blender-2.48a-r3/temp/build.log'.
 * The ebuild environment file is located at '/var/tmp/portage/media-gfx/blender-2.48a-r3/temp/environment'.
 * 

>>> Failed to emerge media-gfx/blender-2.48a-r3, Log file:

>>>  '/var/tmp/portage/media-gfx/blender-2.48a-r3/temp/build.log'

 * Messages for package media-gfx/blender-2.48a-r3:

 * enabling openmp
 * 
 * ERROR: media-gfx/blender-2.48a-r3 failed.
 * Call stack:
 *               ebuild.sh, line   48:  Called src_compile
 *             environment, line 2697:  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";
 *  The die message:
 *   !!! Please add /var/tmp/portage/media-gfx/blender-2.48a-r3/work/blender-2.48a/scons.config when filing bugs reports to bugs.gentoo.org
 * 
 * If you need support, post the topmost build error, and the call stack if relevant.
 * A complete build log is located at '/var/tmp/portage/media-gfx/blender-2.48a-r3/temp/build.log'.
 * The ebuild environment file is located at '/var/tmp/portage/media-gfx/blender-2.48a-r3/temp/environment'.
 * 


emerge -pv gcc 

[ebuild   R   ] sys-devel/gcc-4.3.2-r3  USE="fortran gtk mudflap nls objc objc++ objc-gc openmp (-altivec) -bootstrap -build -doc (-fixed-point) -gcj (-hardened) -ip28 -ip32r10k -libffi (-multilib) -multislot (-n32) (-n64) -nocxx -nopie -test -vanilla" 0 kB

I'm still unsure why Blender will not compile with openmp if other programs will.
Comment 4 Kris Kersey 2009-05-21 13:41:29 UTC
I was having the same problem.  The simple fix was making sure the right gcc was selected with gcc-config.  Be sure you're using >gcc-4.2.
Comment 5 Christian Weiske 2009-08-15 07:22:04 UTC
*** Bug 281214 has been marked as a duplicate of this bug. ***
Comment 6 Christian Weiske 2009-08-15 07:36:52 UTC
I can confirm blender compiled fine using gcc 4.3.2 and failed with gcc 4.1.2. Please add a gcc check to the ebuild!
Comment 7 MT 2009-08-15 15:41:57 UTC
(In reply to comment #6)
> I can confirm blender compiled fine using gcc 4.3.2 and failed with gcc 4.1.2.
> Please add a gcc check to the ebuild!

for @lu_zero (Luca Barbato):

the OpenMP Standard v2.5 has been introduced into gcc from the version 4.2.0, so attached there is an ebuild patch for the blender ebuild that adds the gcc check. hope to be useful.

Comment 8 MT 2009-08-15 15:43:13 UTC
Created attachment 201339 [details, diff]
blender.2.48a-r3.ebuild.patch
Comment 9 MT 2009-08-15 15:46:51 UTC
Created attachment 201341 [details, diff]
blender-2.49a.ebuild.patch
Comment 10 Jude D'Cruz 2009-12-09 07:37:54 UTC
*** Bug 296283 has been marked as a duplicate of this bug. ***
Comment 11 Arne Babenhauserheide 2009-12-10 09:10:39 UTC
Is it possible to add another check, so the emerge prompts to use gcc-config to set the current gcc? 

If the user updated the gcc but didn't select the new version, the emerge just fails, even though gcc 4.3.x is installed (that error led me here :) ). 
Comment 12 Simone Gianni 2010-02-26 00:35:48 UTC
I have update gcc to 4.3.2, even tried to re-emerge it with openmp, but still receive that error. However, if I run scons inside the unpacked source, it compiles just fine. Seems like scons keeps on using the old gcc, or some other misconfiguration happens, but only when running from emerge.
Comment 13 Diego Elio Pettenò (RETIRED) gentoo-dev 2012-07-16 00:59:02 UTC
This should be fixed with 2.63a and pkg_pretend checks.