Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!

Bug 271019

Summary: dev-python/visual-5.03_rc1 does not compile with dev-libs/boost-1.37.0-r1
Product: Gentoo Linux Reporter: Sebastian Luther (few) <SebastianLuther>
Component: Current packagesAssignee: Tiziano Müller (RETIRED) <dev-zero>
Status: RESOLVED FIXED    
Severity: normal CC: cpp+disabled, dev-zero, djc, grozin, joost.ruis, python
Priority: High    
Version: unspecified   
Hardware: All   
OS: All   
Whiteboard:
Package list:
Runtime testing required: ---
Bug Depends on:    
Bug Blocks: 181653    
Attachments: build.log
patch that fixes dev-libs/boost header
https://svn.boost.org/trac/boost/changeset/53731/sandbox-branches/bhy/py3k modified to apply cleanly against boost-1.39.0
always use correct boost version
always use the correct boost version

Description Sebastian Luther (few) 2009-05-24 05:35:52 UTC
/usr/include/boost/python/detail/translate_exception.hpp:34: Fehler: expected nested-name-specifier before »add_reference«
/usr/include/boost/python/detail/translate_exception.hpp:34: Fehler: expected »;« before »<« token
/usr/include/boost/python/detail/translate_exception.hpp: In member function »bool boost::python::detail::translate_exception<ExceptionType, Translate>::operator()(const boost::python::detail::exception_handler&, const boost::function0<void>&, typename boost::call_traits<Translate>::param_type) const«:
/usr/include/boost/python/detail/translate_exception.hpp:56: Fehler: expected type-specifier before »exception_cref«
/usr/include/boost/python/detail/translate_exception.hpp:56: Fehler: expected `)' before »e«
/usr/include/boost/python/detail/translate_exception.hpp:56: Fehler: expected `{' before »e«
/usr/include/boost/python/detail/translate_exception.hpp:56: Fehler: »e« wurde in diesem Gültigkeitsbereich nicht definiert
/usr/include/boost/python/detail/translate_exception.hpp:56: Fehler: expected `;' before »)« token


Portage 2.1.6.13 (default/linux/x86/2008.0, gcc-4.3.3, glibc-2.8_p20080602-r1, 2.6.28-gentoo-r5 i686)
=================================================================
System uname: Linux-2.6.28-gentoo-r5-i686-AMD_Athlon-tm-_64_X2_Dual_Core_Processor_3800+-with-gentoo-2.0.0
Timestamp of tree: Fri, 22 May 2009 19:15:01 +0000
app-shells/bash:     4.0_p24
dev-lang/python:     2.5.4-r2, 2.6.2
dev-util/cmake:      2.6.4
sys-apps/baselayout: 2.0.0
sys-apps/openrc:     0.4.3-r2
sys-apps/sandbox:    1.9
sys-devel/autoconf:  2.13, 2.63-r1
sys-devel/automake:  1.5, 1.7.9-r1, 1.8.5-r3, 1.9.6-r2, 1.10.2
sys-devel/binutils:  2.19.1-r1
sys-devel/gcc-config: 1.4.1
sys-devel/libtool:   2.2.6a
virtual/os-headers:  2.6.29
ACCEPT_KEYWORDS="x86 ~x86"
CBUILD="i686-pc-linux-gnu"
CFLAGS="-O2 -march=i686 -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"
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/texmf/language.dat.d /etc/texmf/language.def.d /etc/texmf/updmap.d /etc/texmf/web2c /etc/udev/rules.d"
CXXFLAGS="-O2 -march=i686 -pipe"
DISTDIR="/usr/portage/distfiles"
FEATURES="distlocks fixpackages parallel-fetch protect-owned sandbox sfperms strict unmerge-orphans userfetch"
GENTOO_MIRRORS="http://distfiles.gentoo.org http://distro.ibiblio.org/pub/linux/distributions/gentoo"
LANG="de_DE.utf-8"
LC_ALL="de_DE.utf-8"
LDFLAGS="-Wl,-O1"
MAKEOPTS="-j1"
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/portage/local/layman/sunrise /usr/portage/local/layman/science"
SYNC="rsync://rsync.gentoo.org/gentoo-portage"
USE="acl berkdb boost bzip2 cli cracklib crypt cups dri fortran gdbm gpm iconv ipv6 isdnlog midi mudflap ncurses nls nptl nptlonly openmp pam pcre perl pppd python readline reflection session spl ssl sysfs tcpd unicode x86 xorg zlib" ALSA_CARDS="ali5451 als4000 atiixp atiixp-modem bt87x ca0106 cmipci emu10k1 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" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" USERLAND="GNU" VIDEO_CARDS="fbdev glint i810 intel mach64 mga neomagic nv r128 radeon savage sis tdfx trident vesa vga via vmware voodoo"
Unset:  CPPFLAGS, CTARGET, EMERGE_DEFAULT_OPTS, FFLAGS, INSTALL_MASK, LINGUAS, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS
Comment 1 Sebastian Luther (few) 2009-05-24 05:37:31 UTC
Created attachment 192262 [details]
build.log

That's not emerge's build.log but the log from work/../src/
Comment 2 Arfrever Frehtes Taifersar Arahesis (RETIRED) gentoo-dev 2009-05-24 15:14:20 UTC
(In reply to comment #0)
> /usr/include/boost/python/detail/translate_exception.hpp:56: Fehler: »e«
> wurde in diesem Gültigkeitsbereich nicht definiert

Je ne le comprends pas. Utilisez LC_ALL=C, s'il vous plaît.
Comment 3 Sebastian Luther (few) 2009-05-24 18:55:29 UTC
(In reply to comment #2)
> (In reply to comment #0)
> > /usr/include/boost/python/detail/translate_exception.hpp:56: Fehler: »e«
> > wurde in diesem Gültigkeitsbereich nicht definiert
> 
> Je ne le comprends pas. Utilisez LC_ALL=C, s'il vous plaît.
> 


Sorry for that, it means: "e" was not declared in this scope.

OT: The ebuild component is for new ebuilds, not for bugs involving ebuilds.
Comment 4 Fabio Erculiani (RETIRED) gentoo-dev 2009-08-01 14:33:08 UTC
Created attachment 199811 [details, diff]
patch that fixes dev-libs/boost header

This patch for dev-libs/boost should fix it.
Comment 5 Patrick Lauer gentoo-dev 2009-09-19 13:37:09 UTC
This looks like it needs boost patched. Adding maintainers.
Comment 6 Andrey Grozin gentoo-dev 2009-09-29 09:25:45 UTC
Same here: dev-python/visual-5.12 fails to compile with dev-libs/boost-1.39.0. Error messages are the same (only in another language :-)
Comment 7 Dirkjan Ochtman (RETIRED) gentoo-dev 2009-10-20 14:58:47 UTC
This is Boost bug https://svn.boost.org/trac/boost/ticket/2582.
Comment 8 Andrey Grozin gentoo-dev 2009-10-20 15:42:22 UTC
An easy workaround: boost is slotted. I installed and eselected boost-1.35, after that visual-5.12 emerged without problems.
Comment 9 Andrés Becerra Sandoval 2009-10-29 15:00:29 UTC
(In reply to comment #8)
> An easy workaround: boost is slotted. I installed and eselected boost-1.35,
> after that visual-5.12 emerged without problems.
> 

Yes, it merges, but executing examples in /usr/share/doc/visual-5.12/examples/ results in segmentation faults for me.


The same happened to me with visual-5.13, recently added to portage.

Comment 10 Michal Januszewski (RETIRED) gentoo-dev 2009-11-22 10:59:12 UTC
(In reply to comment #9)
> (In reply to comment #8)
> > An easy workaround: boost is slotted. I installed and eselected boost-1.35,
> > after that visual-5.12 emerged without problems.
> > 
> 
> Yes, it merges, but executing examples in /usr/share/doc/visual-5.12/examples/
> results in segmentation faults for me.

Same here.  Apparently this is a boost/python problem (it's reproducible with all versions of dev-python/visual).  I will attach a patch for boost which fixed  the problem for me. 

> 
> The same happened to me with visual-5.13, recently added to portage.
> 

Comment 11 Michal Januszewski (RETIRED) gentoo-dev 2009-11-22 11:00:20 UTC
Created attachment 210866 [details, diff]
https://svn.boost.org/trac/boost/changeset/53731/sandbox-branches/bhy/py3k modified to apply cleanly against boost-1.39.0
Comment 12 Sebastian Luther (few) 2009-11-23 16:40:05 UTC
I added the patches to the 1.39 and 1.40 ebuilds in my overlay [1]. 1.41 has both included.

[1] git://github.com/few/few-s-gentoo-overlay.git
Comment 13 Arfrever Frehtes Taifersar Arahesis (RETIRED) gentoo-dev 2009-11-24 08:30:03 UTC
dev-libs/boost maintainers: Please apply these patches.
Comment 14 Andrey Grozin gentoo-dev 2009-12-01 12:43:04 UTC
ping boost maintainers
Comment 15 Andrey Grozin gentoo-dev 2009-12-03 18:15:11 UTC
I've emerged boost-1.41 which just appeared in the tree, then re-emerged visual-5.13, and it works. Very nice (though I don't use it often). So, we can depend on >=dev-libs/boost-1.41, buth this does not solve the problem - boost is slotted, and a user can eselect some older boost. Is it possible for an ebuild (visual in our case) to use a specific slot of boost, ignoring what a user eselects? Something similar is done in the case of wxwidgets (eselect settings ignored), through wxwidgets.eclass. But, of course, it would be even better to fix all versions of boost present in the tree.
Comment 16 Sebastian Luther (few) 2009-12-03 19:02:20 UTC
(In reply to comment #15)
> I've emerged boost-1.41 which just appeared in the tree, then re-emerged
> visual-5.13, and it works. Very nice (though I don't use it often). So, we can
> depend on >=dev-libs/boost-1.41, buth this does not solve the problem - boost
> is slotted, and a user can eselect some older boost. Is it possible for an
> ebuild (visual in our case) to use a specific slot of boost, ignoring what a
> user eselects? Something similar is done in the case of wxwidgets (eselect
> settings ignored), through wxwidgets.eclass. But, of course, it would be even
> better to fix all versions of boost present in the tree.
> 

I'll write you a patch that makes it ignore the eselect setting (which is recommended way for all ebuilds) and I hope we get the other boost versions fixed too...
Comment 17 Sebastian Luther (few) 2009-12-03 20:01:31 UTC
Created attachment 211902 [details, diff]
always use correct boost version

This didn't workout very well. The configure script doesn't provide a way to specify the include and library directory for boost (it doesn't even check if boost is present). You should really make upstream fix that. As long this isn't fixed, I can only offer this hack. Once it's fixed you should use something like the patch on bug 295474.
Comment 18 Sebastian Luther (few) 2009-12-03 20:53:44 UTC
Created attachment 211906 [details, diff]
always use the correct boost version
Comment 19 Andrey Grozin gentoo-dev 2009-12-09 15:52:23 UTC
Thank you very much. In cvs.