Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 295987 - dev-games/ogre-1.6.4 fails to emerge in install phase: undefined reference to `Ogre::StringInterface::msDictionaryMutex'
Summary: dev-games/ogre-1.6.4 fails to emerge in install phase: undefined reference to...
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: [OLD] Games (show other bugs)
Hardware: All Linux
: High normal (vote)
Assignee: Gentoo Games
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2009-12-06 17:19 UTC by Dennis Schridde
Modified: 2010-10-14 05:06 UTC (History)
1 user (show)

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


Attachments
build.log (build.log,704.32 KB, text/plain)
2009-12-06 17:20 UTC, Dennis Schridde
Details
Build log of failed build. (build.log,692.06 KB, text/plain)
2009-12-20 13:15 UTC, Niko Böckerman
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Dennis Schridde 2009-12-06 17:19:27 UTC
libtool: relink: x86_64-pc-linux-gnu-g++ -shared -nostdlib /usr/lib/gcc/x86_64-pc-linux-gnu/4.4.2/../../../../lib64/crti.o /usr/lib/gcc/x86_64-pc-linux-gnu/4.4.2/crtbeginS.o  .libs/OgreGLEngineDll.o .libs/OgreGLPlugin.o .libs/OgreGLGpuProgram.o .libs/OgreGLGpuNvparseProgram.o .libs/OgreGLGpuProgramManager.o .libs/OgreGLRenderSystem.o .libs/OgreGLSupport.o .libs/OgreGLTexture.o .libs/OgreGLTextureManager.o .libs/OgreGLHardwareBufferManager.o .libs/OgreGLHardwareIndexBuffer.o .libs/OgreGLHardwareOcclusionQuery.o .libs/OgreGLHardwareVertexBuffer.o .libs/OgreGLHardwarePixelBuffer.o .libs/OgreGLDefaultHardwareBufferManager.o .libs/OgreGLContext.o .libs/OgreGLPixelFormat.o .libs/OgreGLRenderTexture.o .libs/OgreGLRenderToVertexBuffer.o .libs/OgreGLFBORenderTexture.o .libs/OgreGLPBRenderTexture.o .libs/OgreGLFBOMultiRenderTarget.o .libs/OgreGLFrameBufferObject.o .libs/glew.o  -Wl,--whole-archive ../../../RenderSystems/GL/src/GLX/.libs/libsupport.a ../../../RenderSystems/GL/src/GLSL/src/.libs/libGLSL.a ../../../RenderSystems/GL/src/nvparse/.libs/libnvparse.a ../../../RenderSystems/GL/src/atifs/src/.libs/libatifs.a -Wl,--no-whole-archive  -L/var/tmp/portage/dev-games/ogre-1.6.4/work/ogre/OgreMain/src -Wl,--as-needed -L/var/tmp/portage/dev-games/ogre-1.6.4/image//usr/lib -L/usr/lib -lGLU -L/var/tmp/portage/dev-games/ogre-1.6.4/image//usr/lib64 -L/usr/lib64 -lSM -lICE -lXmu -lXt -lXi -lXrandr -lXxf86vm -lOgreMain -lzzip -lgtk-x11-2.0 -lgdk-x11-2.0 -latk-1.0 -lgdk_pixbuf-2.0 -lgio-2.0 -lresolv -lpangocairo-1.0 -lpangoft2-1.0 -lcairo -lpixman-1 -lglitz-glx -lGL -lXext -lglitz -lpng12 -lXrender -lpango-1.0 -lfontconfig -lfreetype -lexpat -lgobject-2.0 -lgmodule-2.0 -lglib-2.0 -lX11 -lxcb -lXau -lXdmcp -lXaw -lboost_thread -lpthread -lz -ldl -L/usr/lib/gcc/x86_64-pc-linux-gnu/4.4.2 -L/usr/lib/gcc/x86_64-pc-linux-gnu/4.4.2/../../../../lib64 -L/lib/../lib64 -L/usr/lib/../lib64 -L/usr/lib/gcc/x86_64-pc-linux-gnu/4.4.2/../../../../x86_64-pc-linux-gnu/lib -L/usr/lib/gcc/x86_64-pc-linux-gnu/4.4.2/../../.. -lstdc++ -lm -lc -lgcc_s /usr/lib/gcc/x86_64-pc-linux-gnu/4.4.2/crtendS.o /usr/lib/gcc/x86_64-pc-linux-gnu/4.4.2/../../../../lib64/crtn.o  -march=athlon64-sse3 -Wl,-z -Wl,defs -Wl,-O1 -Wl,--hash-style=gnu   -Wl,-soname -Wl,RenderSystem_GL.so -o .libs/RenderSystem_GL.so                                            
.libs/OgreGLGpuProgram.o: In function `Ogre::StringInterface::createParamDictionary(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)':                                                
OgreGLGpuProgram.cpp:(.text._ZN4Ogre15StringInterface21createParamDictionaryERKSs[Ogre::StringInterface::createParamDictionary(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)]+0x1c): undefined reference to `Ogre::StringInterface::msDictionaryMutex'
OgreGLGpuProgram.cpp:(.text._ZN4Ogre15StringInterface21createParamDictionaryERKSs[Ogre::StringInterface::createParamDictionary(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)]+0x7bb): undefined reference to `Ogre::StringInterface::msDictionaryMutex'
OgreGLGpuProgram.cpp:(.text._ZN4Ogre15StringInterface21createParamDictionaryERKSs[Ogre::StringInterface::createParamDictionary(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)]+0xaa8): undefined reference to `Ogre::StringInterface::msDictionaryMutex'
collect2: ld returned 1 exit status
libtool: install: error: relink `RenderSystem_GL.la' with the above command before installing it
make[5]: *** [install-pkglibLTLIBRARIES] Error 1

build.log attached

[ebuild     U ] dev-games/ogre-1.6.4 [1.6.3] USE="gtk threads -cg -devil -doc -double-precision -examples" 0 kB

Reproducible: Always




Portage 2.2_rc55 (default/linux/amd64/10.0/desktop, gcc-4.4.2, glibc-2.11-r1, 2.6.32-gentoo x86_64)                                                                                                                 
=================================================================                                                                                                                                                   
System uname: Linux-2.6.32-gentoo-x86_64-AMD_Athlon-tm-_64_X2_Dual_Core_Processor_5000+-with-gentoo-2.0.1                                                                                                           
Timestamp of tree: Sun, 06 Dec 2009 11:15:01 +0000                                                                                                                                                                  
app-shells/bash:     4.0_p35                                                                                                                                                                                        
dev-java/java-config: 2.1.10                                                                                                                                                                                        
dev-lang/python:     2.6.4, 3.1.1-r1                                                                                                                                                                                
dev-python/pycrypto: 2.1.0_beta1                                                                                                                                                                                    
dev-util/cmake:      2.8.0                                                                                                                                                                                          
sys-apps/baselayout: 2.0.1                                                                                                                                                                                          
sys-apps/openrc:     0.5.3                                                                                                                                                                                          
sys-apps/sandbox:    2.2                                                                                                                                                                                            
sys-devel/autoconf:  2.13, 2.64                                                                                                                                                                                     
sys-devel/automake:  1.8.5-r3, 1.9.6-r2, 1.10.2, 1.11                                                                                                                                                               
sys-devel/binutils:  2.20                                                                                                                                                                                           
sys-devel/gcc-config: 1.4.1                                                                                                                                                                                         
sys-devel/libtool:   2.2.6b                                                                                                                                                                                         
virtual/os-headers:  2.6.30-r1                                                                                                                                                                                      
ACCEPT_KEYWORDS="amd64 ~amd64"                                                                                                                                                                                      
ACCEPT_LICENSE="* -@EULA"                                                                                                                                                                                           
CBUILD="x86_64-pc-linux-gnu"                                                                                                                                                                                        
CFLAGS="-pipe -O2 -march=athlon64-sse3 -fstack-protector -ftree-vectorize"
CHOST="x86_64-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/kde/3.5/env /usr/kde/3.5/share/config /usr/kde/3.5/shutdown /usr/share/X11/xkb /usr/share/config"
CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/env.d /etc/env.d/java/ /etc/fonts/fonts.conf /etc/gconf /etc/gentoo-release /etc/php/apache2-php5/ext-active/ /etc/php/cgi-php5/ext-active/ /etc/php/cli-php5/ext-active/ /etc/revdep-rebuild /etc/sandbox.d /etc/splash /etc/terminfo /etc/texmf/language.dat.d /etc/texmf/language.def.d /etc/texmf/updmap.d /etc/texmf/web2c"
CXXFLAGS="-pipe -O2 -march=athlon64-sse3 -fstack-protector -ftree-vectorize"
DISTDIR="/var/cache/portage/distfiles"
EMERGE_DEFAULT_OPTS="--with-bdeps y"
FEATURES="assume-digests distlocks fixpackages metadata-transfer news parallel-fetch preserve-libs protect-owned sandbox sfperms strict unmerge-logs unmerge-orphans userfetch userpriv usersandbox usersync"
GENTOO_MIRRORS="ftp://linux.rz.ruhr-uni-bochum.de/gentoo-mirror/ http://distfiles.gentoo.org http://distro.ibiblio.org/pub/linux/distributions/gentoo"
LANG="en_GB.UTF-8"
LDFLAGS="-Wl,-O1 -Wl,--hash-style=gnu -Wl,--as-needed"
LINGUAS="de"
MAKEOPTS="-j3"
PKGDIR="/var/cache/portage/packages"
PORTAGE_COMPRESS="xz"
PORTAGE_CONFIGROOT="/"
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="/var/cache/portage/gentoo"
PORTDIR_OVERLAY="/var/cache/portage/layman/oss-overlay /var/cache/portage/layman/sunrise /var/cache/portage/layman/java-overlay /var/cache/portage/layman/pcsx2 /var/cache/portage/layman/mpd /var/cache/portage/layman/kde /var/cache/portage/local"
SYNC="rsync://rsync.europe.gentoo.org/gentoo-portage"
[...]
Unset:  CPPFLAGS, CTARGET, FFLAGS, INSTALL_MASK, LC_ALL, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS
Comment 1 Dennis Schridde 2009-12-06 17:20:14 UTC
Created attachment 212247 [details]
build.log
Comment 2 Bernd Lehmann 2009-12-08 14:07:22 UTC
I had the same error while updating from 1.6.3 to 1.6.4

After some research I have fond similar problem: http://bugs.gentoo.org/222997

I have fix it with:

emerge -C ogre
emerge ogre
Comment 3 Dennis Schridde 2009-12-16 15:39:45 UTC
I do not consider unmerging the old version prior to updating a proper "fix".

-> The issue persists.
Comment 4 Tupone Alfredo gentoo-dev 2009-12-16 21:18:24 UTC
Should be fixed now. Thanks for report
Comment 5 Niko Böckerman 2009-12-20 13:15:00 UTC
Created attachment 213559 [details]
Build log of failed build.

This bug is not completely fixed yet. I can get an error of undefined reference to `Ogre::StringInterface::msDictionaryMutex' which doesn't appear if I don't have Ogre installed.

An easy way reproduce this is to compile ogre without threads useflag and then with threads useflag.

My emerge --info:
~ # emerge --info ogre
Portage 2.2_rc60 (default/linux/amd64/10.0/desktop, gcc-4.3.4, glibc-2.9_p20081201-r2, 2.6.31-gentoo-r6 x86_64)
=================================================================
                        System Settings
=================================================================
System uname: Linux-2.6.31-gentoo-r6-x86_64-Intel-R-_Core-TM-2_Quad_CPU_Q9550_@_2.83GHz-with-gentoo-2.0.1
Timestamp of tree: Sat, 19 Dec 2009 11:15:03 +0000
ccache version 2.4 [disabled]
app-shells/bash:     4.0_p35
dev-java/java-config: 2.1.9-r1
dev-lang/python:     2.6.4
dev-python/pycrypto: 2.1.0_beta1
dev-util/ccache:     2.4-r7
dev-util/cmake:      2.6.4-r3
sys-apps/baselayout: 2.0.1
sys-apps/openrc:     0.5.3
sys-apps/sandbox:    2.2
sys-devel/autoconf:  2.13, 2.63-r1
sys-devel/automake:  1.9.6-r2, 1.10.2
sys-devel/binutils:  2.18-r3
sys-devel/gcc-config: 1.4.1
sys-devel/libtool:   2.2.6b
virtual/os-headers:  2.6.30-r1
ACCEPT_KEYWORDS="amd64"
ACCEPT_LICENSE="* -@EULA @FSF-APPROVED @EULA"
CBUILD="x86_64-pc-linux-gnu"
CFLAGS="-march=core2 -O2 -pipe"
CHOST="x86_64-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/share/X11/xkb /var/lib/hsqldb"
CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/env.d /etc/env.d/java/ /etc/fonts/fonts.conf /etc/gconf /etc/gentoo-release /etc/revdep-rebuild /etc/sandbox.d /etc/terminfo /etc/udev/rules.d"
CXXFLAGS="-march=core2 -O2 -pipe"
DISTDIR="/var/portage/distfiles"
FEATURES="assume-digests distlocks fixpackages news parallel-fetch paraller-fetch preserve-libs protect-owned sandbox sfperms strict unmerge-logs unmerge-orphans userfetch userpriv usersandbox"
GENTOO_MIRRORS="ftp://trumpetti.atm.tut.fi/gentoo/ http://mirror.mdfnet.se/mirror/gentoo http://trumpetti.atm.tut.fi/gentoo/"
LANG="en_GB.UTF8@euro"
LDFLAGS="-Wl,-O1,--as-needed"
LINGUAS="en en_GB"
MAKEOPTS="-j5"
PKGDIR="/usr/portage/packages"
PORTAGE_CONFIGROOT="/"
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/portage/layman/sunrise /usr/local/portage/layman/flameeyes-overlay /usr/local/portage/layman/roslin /usr/local/portage/layman/finnish /usr/local/portage/layman/enlightenment /usr/local/portage/layman/gnome /usr/local/portage/my_overlay"
SYNC="rsync://rsync.europe.gentoo.org/gentoo-portage"
USE="X a52 aac acl acpi alsa amd64 avahi bash-completion berkdb bluetooth branding bzip2 cairo cdr cjk cli consolekit cracklib crypt cups cxx dbus dri dts dvb dvd dvdr eds emboss encode evo fam ffmpeg firefox flac fortran ftp gdbm gif gnome gpm gstreamer gtk hal htmlhandbook iconv ipv6 jack java jpeg ldap libnotify logitech-mouse mad mikmod mmx mng modules mono mp3 mp4 mpeg mudflap multilib nautilus ncurses nls nntp nptl nptlonly nsplugin ogg opengl openmp pam pcre pdf perl png ppds pppd pulseaudio python qt3support quicktime readline reflection samba sdl session smp spell spl sse sse2 ssl ssse3 startup-notification svg sysfs tcpd threads thunar tiff truetype unicode usb vim-syntax vorbis x264 xcomposite xml xorg xscreensaver xulrunner xv xvid zlib" ALSA_CARDS="ali5451 als4000 atiixp atiixp-modem bt87x ca0106 cmipci emu10k1x ens1370 ens1371 es1938 es1968 fm801 hda-intel intel8x0 intel8x0m maestro3 trident usb-audio via82xx via82xx-modem ymfpci" ALSA_PCM_PLUGINS="adpcm alaw asym copy dmix dshare dsnoop empty extplug file hooks iec958 ioplug ladspa lfloat linear meter mmap_emul mulaw multi null plug rate route share shm softvol" APACHE2_MODULES="actions alias auth_basic authn_alias authn_anon authn_dbm authn_default authn_file authz_dbm authz_default authz_groupfile authz_host authz_owner authz_user autoindex cache dav dav_fs dav_lock deflate dir disk_cache env expires ext_filter file_cache filter headers include info log_config logio mem_cache mime mime_magic negotiation rewrite setenvif speling status unique_id userdir usertrack vhost_alias" ELIBC="glibc" INPUT_DEVICES="keyboard mouse evdev joystick" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LINGUAS="en en_GB" RUBY_TARGETS="ruby18" USERLAND="GNU" VIDEO_CARDS="fglrx" 
Unset:  CPPFLAGS, CTARGET, EMERGE_DEFAULT_OPTS, FFLAGS, INSTALL_MASK, LC_ALL, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS

=================================================================
                        Package Settings
=================================================================

dev-games/ogre-1.6.4 was built with the following:
USE="devil gtk (multilib) -cg -doc -double-precision -examples -threads"
Comment 6 Tupone Alfredo gentoo-dev 2009-12-20 14:32:30 UTC
see comment #5
Comment 7 Tupone Alfredo gentoo-dev 2009-12-23 11:32:19 UTC
I cannot duplicate. I'm following the exact method you told and it builds. Are you sure you updated the tree? (asking even If I see my changes there, looking at your build log)
Comment 8 Niko Böckerman 2010-01-12 14:57:32 UTC
I completely forgot to response. Sorry for that. But I still get the same error when I have ogre-1.6.4 installed without threads use flags and try to emerge it with threads use flag.

And yes, I have updated my tree :)
Comment 9 Niko Böckerman 2010-01-12 16:15:24 UTC
And I get the same error with ogre-1.6.5 when first installed without threads use flag and then without it.

That RenderSystem_GL.so still gets linked against the existing libOgreMain.so found in /usr/lib and not against the one that is compiled at the same emerge. In compile phase it gets linked correctly but in install phase it gets relinked against the wrong lib. I've been trying to fix that but haven't had any success.
Comment 10 Mr. Bones. (RETIRED) gentoo-dev 2010-10-14 05:06:09 UTC
it's ugly but I added a self-blocker to the ebuild to force people to build with a clean system.  I would accept a working patch in a new bug as an enhancement.