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

Bug 208359

Summary: meshlab new package
Product: Gentoo Linux Reporter: Thomas Capricelli <orzel>
Component: Current packagesAssignee: Amy Liffey <amynka>
Status: RESOLVED OBSOLETE    
Severity: enhancement CC: alexxy, jinjiongxin, lordvan, luca.penasa, pq, sci, simon.haegler, taurus101v, walch.martin, weigt.mathias, xmw
Priority: High Keywords: EBUILD
Version: 2006.1   
Hardware: All   
OS: Linux   
URL: http://meshlab.sourceforge.net
Whiteboard: sunrise-suggested
Package list:
Runtime testing required: ---
Attachments: meshlab-1.1.0
new ebuild for meshlab 1.2.2
patch needed by meshlab-1.2.2.ebuild
updated ebuild (new patch)
modified patch to disable samplefilterdyn plugin
new ebuild for meshlab 1.2.3a
patch used by meshlab-1.2.3a ebuild (replaces some bundled libs)
modified ebuild for version 1.2.3a
patch for ebuild above
revised ebuild for meshlab 1.2.3a-r1
revised ebuild based on sunrise review
replaced bundled libs with gentoo packages
replaced bundled libs with gentoo packages
updated ebuild (needs exactly qhull-2003.1 and cleanups)
fixed rpaths
fixed $S
updated deps (>= gcc 4.4 for openmp compile flag)
just renamed
meshlab 1.3.0a
patch for meshlab 1.3.0a ebuild

Description Thomas Capricelli 2008-01-31 22:13:31 UTC
I can't do ebuilds myself, but this scientific software http://meshlab.sourceforge.net, is based on Qt, and seems quite active.

Reproducible: Always
Comment 1 Alexey Shvetsov archtester gentoo-dev 2008-02-02 14:27:26 UTC
Created attachment 142496 [details]
meshlab-1.1.0

not compiling =(
but i'll fix it soon
Comment 2 Simon Haegler 2010-03-06 15:41:03 UTC
Created attachment 222293 [details]
new ebuild for meshlab 1.2.2
Comment 3 Simon Haegler 2010-03-06 15:46:43 UTC
Created attachment 222295 [details, diff]
patch needed by meshlab-1.2.2.ebuild
Comment 4 Cliff Yapp 2010-03-06 20:10:29 UTC
Tried the ebuild, got build error:

make[2]: Leaving directory `/var/tmp/portage/sci-misc/meshlab-1.2.2/work/MeshLabSrc_AllInc_v122/meshlab/src/sampleplugins/samplefilter'
cd ../sampleplugins/samplefilterdyn/ && make -f Makefile.meshlabpluginsv12 
make[2]: Entering directory `/var/tmp/portage/sci-misc/meshlab-1.2.2/work/MeshLabSrc_AllInc_v122/meshlab/src/sampleplugins/samplefilterdyn'
make -f Makefile.meshlabpluginsv12.Release
make[3]: Entering directory `/var/tmp/portage/sci-misc/meshlab-1.2.2/work/MeshLabSrc_AllInc_v122/meshlab/src/sampleplugins/samplefilterdyn'
g++ -c -pipe -O2 -march=core2 -pipe -Wall -W -D_REENTRANT -fPIC -DGLEW_STATIC -DQT_NO_DEBUG -DQT_PLUGIN -DQT_XML_LIB -DQT_GUI_LIB -DQT_CORE_LIB -DQT_SHARED -I/usr/share/qt4/mkspecs/linux-g++ -I. -I/usr/include/qt4/QtCore -I/usr/include/qt4/QtGui -I/usr/include/qt4/QtXml -I/usr/include/qt4 -I../.. -I../../../../vcglib -I../../external/glew-1.5.1/include -Irelease -o release/samplefilterdyn.o samplefilterdyn.cpp
Assembler messages:
Fatal error: can't create release/samplefilterdyn.o: No such file or directory
In file included from ../../../../vcglib/vcg/complex/trimesh/closest.h:137,
                 from ../../../../vcglib/vcg/complex/trimesh/clean.h:226,
                 from samplefilterdyn.cpp:35:
../../../../vcglib/vcg/space/index/space_iterators.h:113: warning: floating constant truncated to zero
In file included from /usr/lib/gcc/x86_64-pc-linux-gnu/4.3.4/include/g++-v4/ext/hash_map:64,
                 from ../../../../vcglib/vcg/space/index/spatial_hashing.h:41,
                 from ../../../../vcglib/vcg/complex/trimesh/clean.h:228,
                 from samplefilterdyn.cpp:35:
/usr/lib/gcc/x86_64-pc-linux-gnu/4.3.4/include/g++-v4/backward/backward_warning.h:33:2: warning: #warning This file includes at least one deprecated or antiquated header which may be removed without further notice at a future date. Please use a non-deprecated interface with equivalent functionality instead. For a listing of replacement headers and interfaces, consult the file backward_warning.h. To disable this warning use -Wno-deprecated.
In file included from ../../meshlab/meshmodel.h:35,
                 from samplefilterdyn.cpp:30:
../../../../vcglib/vcg/simplex/face/component_ocf.h:522: warning: type qualifiers ignored on function return type
In file included from ../../meshlab/interfaces.h:31,
                 from samplefilterdyn.cpp:31:
../../meshlab/filterparameter.h:163: warning: unused parameter ‘name’
../../meshlab/filterparameter.h: In constructor ‘RichParameter::RichParameter(QString, Value*, ParameterDecoration*)’:
../../meshlab/filterparameter.h:445: warning: ‘RichParameter::pd’ will be initialized after
../../meshlab/filterparameter.h:443: warning:   ‘Value* RichParameter::val’
../../meshlab/filterparameter.h:447: warning:   when initialized here
../../meshlab/filterparameter.h: At global scope:
../../meshlab/filterparameter.h:603: warning: unused parameter ‘ext’
In file included from samplefilterdyn.cpp:31:
../../meshlab/interfaces.h:284: warning: type qualifiers ignored on function return type
../../meshlab/interfaces.h:290: warning: type qualifiers ignored on function return type
../../meshlab/interfaces.h:378: warning: type qualifiers ignored on function return type
../../meshlab/interfaces.h:517: warning: type qualifiers ignored on function return type
In file included from samplefilterdyn.cpp:39:
samplefilterdyn.h:48: warning: type qualifiers ignored on function return type
samplefilterdyn.cpp:78: warning: type qualifiers ignored on function return type
samplefilterdyn.cpp:99: warning: unused parameter ‘m’
samplefilterdyn.cpp:125: warning: unused parameter ‘filter’
samplefilterdyn.cpp:125: warning: unused parameter ‘cb’
make[3]: *** [release/samplefilterdyn.o] Error 2
make[3]: Leaving directory `/var/tmp/portage/sci-misc/meshlab-1.2.2/work/MeshLabSrc_AllInc_v122/meshlab/src/sampleplugins/samplefilterdyn'
make[2]: *** [release] Error 2
make[2]: Leaving directory `/var/tmp/portage/sci-misc/meshlab-1.2.2/work/MeshLabSrc_AllInc_v122/meshlab/src/sampleplugins/samplefilterdyn'
make[1]: *** [sub----sampleplugins-samplefilterdyn-make_default] Error 2
make[1]: Leaving directory `/var/tmp/portage/sci-misc/meshlab-1.2.2/work/MeshLabSrc_AllInc_v122/meshlab/src/meshlabplugins'
make: *** [sub-meshlabplugins-meshlabpluginsv12-pro-make_default] Error 2
Comment 5 Simon Haegler 2010-03-10 08:41:45 UTC
thanks for testing.

> Fatal error: can't create release/samplefilterdyn.o: No such file or directory

hm, strange. is your disk full? what is your "emerge --info"?

in the mean i will upload a new ebuild, where the offending plugin is disabled. later, i will add use flags for the plugins, some of them are very experimental.
Comment 6 Simon Haegler 2010-03-10 08:50:56 UTC
Created attachment 222957 [details]
updated ebuild (new patch)
Comment 7 Simon Haegler 2010-03-10 08:52:36 UTC
Created attachment 222959 [details, diff]
modified patch to disable samplefilterdyn plugin
Comment 8 Cliff Yapp 2010-04-04 16:13:57 UTC
Confirmed working with r1 ebuild and patch.

emerge --info
Portage 2.1.8.3 (default/linux/amd64/10.0/desktop, gcc-4.3.4, glibc-2.10.1-r1, 2.6.31-gentoo-r6 x86_64)
=================================================================
System uname: Linux-2.6.31-gentoo-r6-x86_64-AMD_Athlon-tm-_II_X2_245_Processor-with-gentoo-1.12.13
Timestamp of tree: Sun, 04 Apr 2010 01:15:01 +0000
app-shells/bash:     4.0_p35
dev-java/java-config: 2.1.10
dev-lang/python:     2.6.5-r1, 3.1.2-r1
dev-python/pycrypto: 2.1.0_beta1
dev-util/cmake:      2.8.1
sys-apps/baselayout: 1.12.13
sys-apps/sandbox:    1.6-r2
sys-devel/autoconf:  2.13, 2.63-r1
sys-devel/automake:  1.4_p6, 1.8.5-r3, 1.9.6-r3, 1.10.3
sys-devel/binutils:  2.18-r3
sys-devel/gcc:       4.3.4
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 dlj-1.1"
CBUILD="x86_64-pc-linux-gnu"
CFLAGS="-O2 -march=athlon64 -pipe"
CHOST="x86_64-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/share/X11/xkb /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/revdep-rebuild /etc/sandbox.d /etc/terminfo /etc/texmf/language.dat.d /etc/texmf/language.def.d /etc/texmf/updmap.d /etc/texmf/web2c"
CXXFLAGS="-O2 -march=athlon64 -pipe"
DISTDIR="/usr/portage/distfiles"
FEATURES="assume-digests collision-protect distlocks fixpackages news parallel-fetch protect-owned sandbox sfperms strict unmerge-logs unmerge-orphans userfetch"
GENTOO_MIRRORS="http://mirror.mcs.anl.gov/pub/gentoo/ http://mirror.lug.udel.edu/pub/gentoo/ ftp://ftp.gtlib.gatech.edu/pub/gentoo "
LANG="en_US.utf8"
LDFLAGS="-Wl,-O1"
MAKEOPTS="-j3"
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="/var/lib/layman/science /var/lib/layman/pro-audio /var/lib/layman/sunrise /var/lib/portage-local"
SYNC="rsync://rsync.namerica.gentoo.org/gentoo-portage"
USE="X a52 aac acl acpi alsa amd64 bash-completion berkdb blas bluetooth branding bzip2 cairo cddb cdparanoia cdr cegui cg cli consolekit cracklib crypt cups cxx dbus dc1394 devil doc double-precision dri dts dv dvb dvd dvdr dvdread emboss encode examples exif fam ffmpeg fftw firefox flac foomaticdb fortran gcj gd gdbm gif gmp gnome gpm gps grammar graphviz grass gtk hal hdf5 iconv imagemagick imap ipv6 jabber jack java jbig jpeg jpeg2k junit kde kpathsea lapack lash lcms ldap lesstif libnotify mad maildir math mbox mikmod mmx mng modules motif mp3 mp4 mpeg mplayer mtp mudflap multilib musepack musicbrainz ncurses nls nodrm nptl nptlonly nsplugin ocaml ofx ogg openal opengl openmp osc oss pam pango pcre pdf perl plotutils png ppds pppd python qt3support qt4 quicktime quotes rdesktop readline reflection regex rtsp samples sdl sdl-image session shout skins speex spell spl sqlite sqlite3 sse sse2 ssl startup-notification stream svg sysfs tcl tcpd theora thesaurus threads tiff tk truetype unicode usb vorbis wmf wordperfect wxwindows x264 xcb xine xml xorg xpm 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="evdev" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" RUBY_TARGETS="ruby18" USERLAND="GNU" VIDEO_CARDS="nvidia" 
Unset:  CPPFLAGS, CTARGET, EMERGE_DEFAULT_OPTS, FFLAGS, INSTALL_MASK, LC_ALL, LINGUAS, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS
Comment 9 Pekka Paalanen 2010-04-09 09:13:26 UTC
The download url in 1.2.2-r1 seems wrong, the file was not found on any mirror. I changed it to

SRC_URI="mirror://sourceforge/project/meshlab/meshlab/MeshLab%20v1.2.2/MeshLabSrc_AllInc_v122.tar.gz"

and the file was downloaded fine.
Comment 10 Pekka Paalanen 2010-04-13 07:13:02 UTC
The ebuild 1.2.2-r1 is missing dependencies:

- x11-libs/qt-core >= 4.4 (according to docs)

With my use-flags, that automatically pulls in x11-libs/qt-script, x11-libs/qt-dbus, x11-libs/qt-sql, x11-libs/qt-gui, and x11-libs/qt-qt3support.

- x11-libs/qt-opengl

With these installed first, meshlab compiles and I can at least view a PLY model. Btw. the compilation took over 15 hours on an Athlon64 3500+ machine. Any way to speed that up? Precompiled headers, somehow?
Comment 11 Pekka Paalanen 2010-04-15 10:27:39 UTC
Meshlab 1.2.2-r1 basic functionality works fine on amd64, I suggest adding amd64 to KEYWORDS.
Comment 12 Simon Haegler 2010-05-16 14:28:27 UTC
Created attachment 231673 [details]
new ebuild for meshlab 1.2.3a
Comment 13 Simon Haegler 2010-05-16 14:29:44 UTC
Created attachment 231675 [details, diff]
patch used by meshlab-1.2.3a ebuild (replaces some bundled libs)
Comment 14 Simon Haegler 2010-05-16 14:31:32 UTC
gentlemen,

thanks for your testing/comments. please try the new ebuild for meshlab 1.2.3a.
there are still some ugly things in it, like the bash wrappers for the binary.
Comment 15 Justin Lecher (RETIRED) gentoo-dev 2010-05-16 15:34:21 UTC
Hello, The Gentoo Team would like to firstly thank you for your ebuild 
submission. We also apologize for not being able to accommodate you in a timely
manner. There are simply too many new packages.

Allow me to use this opportunity to introduce you to Gentoo Sunrise. The 
sunrise overlay[1] is a overlay for Gentoo which we allow trusted users to 
commit to and all users can have ebuilds reviewed by Gentoo devs for entry 
into the overlay. So, the sunrise team is suggesting that you look into this 
and submit your ebuild to the overlay where even *you* can commit to. =)

Thanks,
On behalf of the Gentoo Sunrise Team,
Justin.

[1]: http://www.gentoo.org/proj/en/sunrise/
[2]: http://overlays.gentoo.org/proj/sunrise/wiki/SunriseFaq
Comment 16 Pekka Paalanen 2010-05-25 10:18:54 UTC
In the meshlab-1.2.3a.ebuild, S seems to be set wrong, the use-system-libs.patch fails. This fixes it:

-S="${WORKDIR}"
+S="${WORKDIR}/MeshLabSrc_AllInc_v${PV//./}"
Comment 17 Pekka Paalanen 2010-05-26 07:32:59 UTC
Intermediate compilation result: compilation fails after 7.5 hours due to:
cc1plus: error: unrecognized command line option "-fopenmp"
make[1]: *** [filter_isoparametrization.o] Error 1

I realize I do have openmp USE-flag enabled, but the ebuild does not seem to use it. Anyway, I will try again with USE="-openmp" and provide a better report then.

gcc (GCC) 4.1.2 (Gentoo 4.1.2)
OpenMP support requires gcc >=4.2, says use.desc.
Comment 18 Pekka Paalanen 2010-05-27 07:20:11 UTC
Indeed, even without USE=openmp, the compilation fails after 7.5 hours with:

make[1]: Entering directory `/var/tmp/portage/sci-visualization/meshlab-1.2.3a/work/MeshLabSrc_AllInc_v123a/meshlab/src/meshlabplugins/filter_isoparametrization'
x86_64-pc-linux-gnu-g++ -c -pipe -fopenmp -D_USE_OMP -march=athlon64 -O2 -pipe -fno-omit-frame-pointer -Wall -W -D_REENTRANT -fPIC -DQT_NO_DEBUG -DQT_PLUGIN -DQT_XML_LIB -DQT_OPENGL_LIB -DQT_GUI_LIB -DQT_CORE_LIB -DQT_SHARED -I/usr/share/qt4/mkspecs/linux-g++ -I. -I/usr/include/qt4/QtCore -I/usr/include/qt4/QtGui -I/usr/include/qt4/QtOpenGL -I/usr/include/qt4/QtXml -I/usr/include/qt4 -I../.. -I../../../../vcglib -I/usr/include/GL/include -I. -I../../external/levmar-2.3 -I/usr/include -I. -o filter_isoparametrization.o filter_isoparametrization.cpp
cc1plus: error: unrecognized command line option "-fopenmp"
make[1]: *** [filter_isoparametrization.o] Error 1
make[1]: Leaving directory `/var/tmp/portage/sci-visualization/meshlab-1.2.3a/work/MeshLabSrc_AllInc_v123a/meshlab/src/meshlabplugins/filter_isoparametrization'
make: *** [sub-meshlabplugins-filter_isoparametrization-make_default-ordered] Error 2

You may want to start applying the openmp USE-flag.


# emerge --info
Portage 2.1.8.3 (default/linux/amd64/10.0/desktop, gcc-4.1.2, glibc-2.10.1-r1, 2.6.31-gentoo-r6 x86_64)
=================================================================
System uname: Linux-2.6.31-gentoo-r6-x86_64-AMD_Athlon-tm-_64_Processor_3500+-with-gentoo-1.12.13
Timestamp of tree: Wed, 28 Apr 2010 06:45:01 +0000
app-shells/bash:     4.0_p37
dev-java/java-config: 2.1.10
dev-lang/python:     2.5.4-r3, 2.6.4-r1
dev-util/cmake:      2.6.4-r3
sys-apps/baselayout: 1.12.13
sys-apps/sandbox:    1.6-r2
sys-devel/autoconf:  2.13, 2.63-r1
sys-devel/automake:  1.4_p6, 1.5, 1.6.3, 1.7.9-r1, 1.8.5-r3, 1.9.6-r2, 1.10.3, 1.11.1
sys-devel/binutils:  2.18-r3
sys-devel/gcc:       4.1.2, 4.3.4
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"
CBUILD="x86_64-pc-linux-gnu"
CFLAGS="-march=athlon64 -O2 -pipe -fno-omit-frame-pointer"
CHOST="x86_64-pc-linux-gnu"
CONFIG_PROTECT="/etc /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/revdep-rebuild /etc/sandbox.d /etc/terminfo /etc/texmf/language.dat.d /etc/texmf/language.def.d /etc/texmf/updmap.d /etc/texmf/web2c"
CXXFLAGS="-march=athlon64 -O2 -pipe -fno-omit-frame-pointer"
DISTDIR="/usr/portage/distfiles"
FEATURES="assume-digests distlocks fixpackages news nostrip parallel-fetch protect-owned sandbox sfperms strict unmerge-logs unmerge-orphans userfetch"
GENTOO_MIRRORS="http://trumpetti.atm.tut.fi/gentoo http://distfiles.gentoo.org http://www.ibiblio.org/pub/Linux/distributions/gentoo"
LDFLAGS="-Wl,-O1"
LINGUAS="en en_GB fi"
MAKEOPTS="-j2"
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="/var/portage"
PORTDIR_OVERLAY="/usr/portage/local/layman/x11 /usr/portage/local/layman/science /usr/portage/local/layman/sunrise /usr/local/portage"
SYNC="rsync://rsync.europe.gentoo.org/gentoo-portage"
USE="X a52 aac acl acpi alsa amd64 branding bzip2 cairo cdr cli consolekit cracklib crypt cups cxx dga dri dts dvd dvdr emboss encode exif fam firefox flac fortran gdbm gif gpm gtk gtk2 hal iconv imap jbig jpeg jpeg2k lcms libnotify mad maildir mbox mikmod mmx mng modules mozilla mp3 mp4 mpeg mudflap multilib ncurses nptl nptlonly ogg opengl pam pango pch pcre pdf perl png ppds pppd python qt3support readline reflection sdl session spell spl sse sse2 ssl startup-notification svg sysfs tcpd tetex tiff truetype unicode usb v4l v4l2 vorbis x264 xcb xml xorg xulrunner xv xviD 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="evdev keyboard mouse" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LINGUAS="en en_GB fi" RUBY_TARGETS="ruby18" USERLAND="GNU" VIDEO_CARDS="nv v4l vesa nvidia nouveau" 
Unset:  CPPFLAGS, CTARGET, EMERGE_DEFAULT_OPTS, FFLAGS, INSTALL_MASK, LANG, LC_ALL, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS

# gcc --version
gcc (GCC) 4.1.2 (Gentoo 4.1.2)
Comment 19 Pekka Paalanen 2010-05-27 07:52:09 UTC
I switched to gcc 4.3.4, which works around the openmp problem, and seems to speed up the compilation. After 20 minutes, I get this failure:

x86_64-pc-linux-gnu-g++ -Wl,-O1 -Wl,-rpath,/usr/lib64/qt4 -shared -o libfilter_func.so filter_func.o moc_filter_func.o   -L/usr/lib64/qt4 -L/usr/lib64 -L../../distrib -lcommon -L/usr/lib -lGLEW -lmuparser -lQtXml -L/usr/lib64 -L/usr/lib64/qt4 -lQtOpenGL -L/usr/X11R6/lib -lQtGui -lQtCore -lgthread-2.0 -lrt -lglib-2.0 -lGLU -lGL -lpthread  
/usr/lib/gcc/x86_64-pc-linux-gnu/4.3.4/../../../../x86_64-pc-linux-gnu/bin/ld: cannot find -lmuparser
collect2: ld returned 1 exit status
make[1]: *** [../../distrib/plugins/libfilter_func.so] Error 1
make[1]: Leaving directory `/var/tmp/portage/sci-visualization/meshlab-1.2.3a/work/MeshLabSrc_AllInc_v123a/meshlab/src/fgt/filter_func'
make: *** [sub-fgt-filter_func-make_default-ordered] Error 2


As I don't have the time to find the fix for this myself, I will wait for updates to the proposed ebuild.  I'll be glad to provide further information.

Thanks.
Comment 20 Martin Walch 2010-06-02 15:03:18 UTC
(In reply to comment #19)
> x86_64-pc-linux-gnu-g++ -Wl,-O1 -Wl,-rpath,/usr/lib64/qt4 -shared -o
> libfilter_func.so filter_func.o moc_filter_func.o   -L/usr/lib64/qt4
> -L/usr/lib64 -L../../distrib -lcommon -L/usr/lib -lGLEW -lmuparser -lQtXml
> -L/usr/lib64 -L/usr/lib64/qt4 -lQtOpenGL -L/usr/X11R6/lib -lQtGui -lQtCore
> -lgthread-2.0 -lrt -lglib-2.0 -lGLU -lGL -lpthread  
> /usr/lib/gcc/x86_64-pc-linux-gnu/4.3.4/../../../../x86_64-pc-linux-gnu/bin/ld:
> cannot find -lmuparser
> collect2: ld returned 1 exit status
> make[1]: *** [../../distrib/plugins/libfilter_func.so] Error 1
> make[1]: Leaving directory
> `/var/tmp/portage/sci-visualization/meshlab-1.2.3a/work/MeshLabSrc_AllInc_v123a/meshlab/src/fgt/filter_func'
> make: *** [sub-fgt-filter_func-make_default-ordered] Error 2
> 
> 
> As I don't have the time to find the fix for this myself, I will wait for
> updates to the proposed ebuild.  I'll be glad to provide further information.

Emerging dev-cpp/muParser before meshlab should fix this (needs to be added to $DEPEND in the ebuild).
Comment 21 Pekka Paalanen 2010-06-03 07:18:14 UTC
(In reply to comment #20)
> Emerging dev-cpp/muParser before meshlab should fix this (needs to be added to
> $DEPEND in the ebuild).

Yes, you are right. Now meshlab 1.2.3a compiles successfully.

However:

$ meshlab
/usr/lib/meshlab/meshlab: error while loading shared libraries: libcommon.so.1:
cannot open shared object file: No such file or directory

but this works:
$ LD_LIBRARY_PATH=/usr/lib/meshlab meshlab

I loaded a VRML file, which is a 3D-scan of a face, and it looks good. I did not try anything else than just viewing it.


Actually, also this works:
$ LD_LIBRARY_PATH=/nonexistant meshlab

The meshlab wrapper script needs 'export' directive for LD_LIBRARY_PATH. Should it also protect against an empty path element (when LD_LIBRARY_PATH is originally unset or empty)?
Comment 22 Simon Haegler 2010-06-03 10:56:39 UTC
thanks for your tests. i'll hope to update the ebuild soon...
Comment 23 Martin Walch 2010-06-04 04:29:22 UTC
Created attachment 234061 [details]
modified ebuild for version 1.2.3a

This i my current version of the last ebuild. The major difference is that it does not use LD_LIBRARY_PATH, but rpath. A modified patch is necessary (next attachment).
Comment 24 Martin Walch 2010-06-04 04:30:35 UTC
Created attachment 234063 [details, diff]
patch for ebuild above
Comment 25 Simon Haegler 2010-06-06 14:46:17 UTC
the rpath modifications work fine, thanks.

although, i had to switch back to S="${WORKDIR}", where does the additional subdirectory MeshLabSrc_AllInc_v${MY_PV} come from on your systems?
Comment 26 Simon Haegler 2010-06-06 15:41:45 UTC
Created attachment 234317 [details]
revised ebuild for meshlab 1.2.3a-r1

i fixed some minor repoman complaints and put the ebuild on pastebin (ebuild http://www.pastebin.org/312919, patch http://www.pastebin.org/312923) to submit it to sunrise (via irc).
Comment 27 Simon Haegler 2010-06-06 19:52:57 UTC
Created attachment 234337 [details]
revised ebuild based on sunrise review

thanks to xmw from #gentoo-sunrise for the review
Comment 28 Martin Walch 2010-06-06 21:25:07 UTC
(In reply to comment #25)
> although, i had to switch back to S="${WORKDIR}", where does the additional
> subdirectory MeshLabSrc_AllInc_v${MY_PV} come from on your systems?

This is part of the tarball MeshLabSrc_AllInc_v123a.tgz from sourceforge:

tar -tvpf /usr/portage/distfiles/MeshLabSrc_AllInc_v123a.tgz | head 
-rwx------ test/staff      193 2010-05-21 09:32 ./._MeshLabSrc_AllInc_v123a
drwx------ test/staff        0 2010-05-21 09:32 MeshLabSrc_AllInc_v123a/
-rw------- test/staff       82 2010-05-21 09:32 MeshLabSrc_AllInc_v123a/._.DS_Store
-rw------- test/staff     6148 2010-05-21 09:32 MeshLabSrc_AllInc_v123a/.DS_Store
-rw-r--r-- test/staff      193 2010-05-05 21:48 MeshLabSrc_AllInc_v123a/._how_to_compile.txt
-rw-r--r-- test/staff      150 2010-05-05 21:48 MeshLabSrc_AllInc_v123a/how_to_compile.txt
-rwxr-xr-x test/staff      193 2010-05-21 09:19 MeshLabSrc_AllInc_v123a/._meshlab
drwxr-xr-x test/staff        0 2010-05-21 09:19 MeshLabSrc_AllInc_v123a/meshlab/
-rw-r--r-- test/staff       82 2010-05-21 09:20 MeshLabSrc_AllInc_v123a/meshlab/._.DS_Store
-rw-r--r-- test/staff     6148 2010-05-21 09:20 MeshLabSrc_AllInc_v123a/meshlab/.DS_Store
Comment 29 Michael Weber (RETIRED) gentoo-dev 2010-06-07 02:35:06 UTC
bug 321815 might bring in the missing bundled lib.
Comment 30 Simon Haegler 2010-06-13 21:59:20 UTC
Created attachment 235219 [details]
replaced bundled libs with gentoo packages

updated ebuild: removed all bundled libs and added new dependencies, one of them is bug 321815
Comment 31 Simon Haegler 2010-06-13 22:01:49 UTC
Created attachment 235221 [details, diff]
replaced bundled libs with gentoo packages
Comment 32 Simon Haegler 2010-06-13 22:14:06 UTC
oops, r3 only starts with
LD_LIBRARY_PATH=/usr/lib/meshlab meshlab

it seems i forgot part of the rpath patch... will look into that later.

ps: meshlab-1.2.3a-r3.ebuild is the current one, even if it somehow got marked as obsolete
Comment 33 Pekka Paalanen 2010-06-15 12:23:37 UTC
(In reply to comment #32)
> ps: meshlab-1.2.3a-r3.ebuild is the current one, even if it somehow got marked
> as obsolete

After fighting through the levmar installation, this new meshlab ebuild fails with:

 * CPV:  sci-visualization/meshlab-1.2.3a-r3
 * REPO: 
 * USE:  amd64 elibc_glibc kernel_linux multilib userland_GNU
>>> Unpacking source...
>>> Unpacking MeshLabSrc_AllInc_v123a.tgz to /var/tmp/portage/sci-visualization/meshlab-1.2.3a-r3/work
>>> Source unpacked in /var/tmp/portage/sci-visualization/meshlab-1.2.3a-r3/work
>>> Preparing source in /var/tmp/portage/sci-visualization/meshlab-1.2.3a-r3/work ...
/var/tmp/portage/sci-visualization/meshlab-1.2.3a-r3/temp/environment: line 439: pushd: /var/tmp/portage/sci-visualization/meshlab-1.2.3a-r3/work/meshlab/src: No such file or directory
 * Applying meshlab-1.2.3a-r3-use-system-libs-rpath.patch ... [ ok ]
/var/tmp/portage/sci-visualization/meshlab-1.2.3a-r3/temp/environment: line 471: popd: directory stack empty
>>> Source prepared.
>>> Configuring source in /var/tmp/portage/sci-visualization/meshlab-1.2.3a-r3/work ...
 * Running qmake ...
 *  - fixed CONFIG in MeshLabSrc_AllInc_v123a/vcglib/apps/tridecimator/tridecimator.pro
 *  - fixed CONFIG in MeshLabSrc_AllInc_v123a/vcglib/apps/sample/img_filters/img_filters.pro
Cannot find file: meshlabv12.pro.  [ !! ]

 * Running qmake has failed! (see above for details)
 * This shouldn't happen - please send a bug report to http://bugs.gentoo.org/

 * ERROR: sci-visualization/meshlab-1.2.3a-r3 failed:
 *   eqmake4 failed
 * 
 * Call stack:
 *     ebuild.sh, line   54:  Called src_configure
 *   environment, line 2862:  Called eqmake4 'meshlabv12.pro'
 *   environment, line 1560:  Called die
 * The specific snippet of code:
 *           die "eqmake4 failed";

It is the same problem with S as before, this seems to work:
S="${WORKDIR}/MeshLabSrc_AllInc_v${PV//./}/meshlab/src"

For the record, this is the path that exists on my file system:
/var/tmp/portage/sci-visualization/meshlab-1.2.3a-r3/work/MeshLabSrc_AllInc_v123a/meshlab/src/
Comment 34 Pekka Paalanen 2010-06-15 12:41:50 UTC
...and failed, see comment #12 in the levmar bug #321815 .
Comment 35 Simon Haegler 2010-06-19 12:59:26 UTC
> It is the same problem with S as before, this seems to work:
> S="${WORKDIR}/MeshLabSrc_AllInc_v${PV//./}/meshlab/src"
> 
> For the record, this is the path that exists on my file system:
> /var/tmp/portage/sci-visualization/meshlab-1.2.3a-r3/work/MeshLabSrc_AllInc_v123a/meshlab/src/
 
i do not understand why the package is extracted to a different path on your system. over here the ebuild extracts the meshlab source to: 
/var/tmp/portage/media-gfx/meshlab-1.2.3a-r3/work/meshlab/src
Comment 36 Martin Walch 2010-06-19 13:20:12 UTC
Looks like this problem is a showstopper for this ebuild. To find out what is going on there, maybe everyone can post their emerge --info outputs.

I need the path S="${WORKDIR}/MeshLabSrc_AllInc_v${PV//./}/meshlab/src" and my emerge --info looks like this:

Portage 2.1.8.3 (default/linux/amd64/10.0/desktop/kde, gcc-4.4.4, glibc-2.10.1-r1, 2.6.32-gentoo-r7 x86_64)
=================================================================
System uname: Linux-2.6.32-gentoo-r7-x86_64-Intel-R-_Core-TM-2_CPU_4300_@_1.80GHz-with-gentoo-2.0.1
Timestamp of tree: Thu, 17 Jun 2010 10:15:02 +0000
ccache version 2.4 [enabled]
app-shells/bash:     4.0_p37
dev-java/java-config: 2.1.10
dev-lang/python:     2.6.5-r2, 3.1.2-r3
dev-util/ccache:     2.4-r7
dev-util/cmake:      2.6.4-r3
sys-apps/baselayout: 2.0.1
sys-apps/openrc:     0.6.0-r1
sys-apps/sandbox:    1.6-r2
sys-devel/autoconf:  2.13, 2.65
sys-devel/automake:  1.8.5-r4, 1.9.6-r3, 1.10.3, 1.11.1
sys-devel/binutils:  2.20.1-r1
sys-devel/gcc:       4.4.4
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="@FREE bea.ri.jsr173 dom4j GPL-2-with-MySQL-FLOSS-exception icu JasPer2.0 jaxen JDOM NCSA-HDF Radiance saxpath wxWinFDL-3 freedist unRAR MSttfEULA MOTIF AdobeFlash-10 GPL"
CBUILD="x86_64-pc-linux-gnu"
CFLAGS="-march=native -O2 -fgcse-after-reload -pipe -g -ggdb"
CHOST="x86_64-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/share/X11/xkb /usr/share/config /var/lib/hsqldb"
CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/env.d /etc/env.d/java/ /etc/eselect/postgresql /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/terminfo /etc/texmf/language.dat.d /etc/texmf/language.def.d /etc/texmf/updmap.d /etc/texmf/web2c"
CXXFLAGS="-march=native -O2 -fgcse-after-reload -pipe -g -ggdb"
DISTDIR="/usr/portage/distfiles"
FEATURES="assume-digests ccache collision-protect distlocks fixpackages metadata-transfer news nostrip parallel-fetch protect-owned sandbox sfperms strict unmerge-logs unmerge-orphans userfetch"
GENTOO_MIRRORS="http://ftp.snt.utwente.nl/pub/os/linux/gentoo http://mirror.switch.ch/ftp/mirror/gentoo/ http://mirror.jamit.de/gentoo/ http://mirror.cambrium.nl/pub/os/linux/gentoo/ http://mirror.netcologne.de/gentoo/ http://mirror.ovh.net/gentoo-distfiles/"
LANG="de_DE.utf8"
LC_ALL="de_DE.utf8"
LDFLAGS="-Wl,-O1"
LINGUAS="de"
MAKEOPTS="-j3"
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="/var/lib/layman/java-overlay /var/lib/layman/pcsx2 /var/lib/layman/x11 /var/lib/layman/zugaina /var/lib/layman/unknown-horizons /usr/local/portage /usr/local/portage/worldforge"
SYNC="rsync://rsync.europe.gentoo.org/gentoo-portage"
USE="64bit X Xaw3d a52 aac aalib accessibility acl acpi agg akode alsa amarok amd64 apache2 autoipd avahi bash-completion bazaar berkdb bittorrent blender blender-game branding bzip2 cairo captury cdaudio cdr cdrom cegui cjk cli clucene consolekit cracklib crypt cups curl cviewer cvs cxx daap dbus default-font designer-plugin desktopglobe devil dga dirac djvu doc dri dts dvd dvdnav dvdr dxr3 emacs embedded emboss encode exif fam fbcon ffmpeg fftw firefox fits flac fltk fortran gallium gcj gdbm ggi git glitz gmm gopher gpg gpm gpu grub gstreamer guile gzip hdri htmlhandbook i18n iceweasel icons iconv icq icu idn imagemagick insecure-savers intel ipv6 jabber jack java java5 java6 javascript jingle jpeg kde kde4 kdebuild kdecards kdehiddenvisibility kdepim kdm kontact ktts latex lcms ldap libcaca libnotify libssh2 libwww lm_sensors logitech-mouse lua lzma lzo matroska mdnsresponder-compat mercurial mikmod mmx mng modules mpeg mpeg2 mpi mudflap mule multilib musepack mysql ncurses neon nepomuk networkmanager nio2 nls noamazon nova nptl nptlonly nsplugin offensive ogg ogg123 openal openexr opengl openmp openssl opensslcrypt openstreetmap openxml oscar oss otr oxygen pae pam pango pcre pdf perl phonon plasma player png posix povray ppds pppd python qt3support qt4 readline redland reflection reiser4 reiserfs rss schroedinger sdl sdl-image semantic-desktop sensord session sndfile solver songs sound speex spell spl sse sse2 ssl ssse3 startup-notification subversion svg sysfs systemtap tcpd tetex theora threads tidy tiff tk tools truetype type1 udev unicode usb vhook videos visualization vorbis vpx wav wavpack wikipedia wmf wxwindows x264 xcb xcomposite xemacs xhtml xine xml xorg xosd xprint xrandr xscreensaver xulrunner xv xvid xvmc zeroconf zfs zip 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 auth_digest authn_anon authn_dbd 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 dbd deflate dir disk_cache env expires ext_filter file_cache filter headers ident imagemap include info log_config logio mem_cache mime mime_magic negotiation proxy proxy_ajp proxy_balancer proxy_connect proxy_http rewrite setenvif so speling status unique_id userdir usertrack vhost_alias" ELIBC="glibc" INPUT_DEVICES="evdev" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LINGUAS="de" RUBY_TARGETS="ruby18" USERLAND="GNU" VIDEO_CARDS="intel vesa" XTABLES_ADDONS="quota2 psd pknock lscan length2 ipv4options ipset ipp2p iface geoip fuzzy condition tee tarpit sysrq steal rawnat logmark ipmark dhcpmac delude chaos account" 
Unset:  CPPFLAGS, CTARGET, EMERGE_DEFAULT_OPTS, FFLAGS, INSTALL_MASK, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS
Comment 37 Simon Haegler 2010-06-19 14:16:13 UTC
(In reply to comment #36)
> Looks like this problem is a showstopper for this ebuild. To find out what is
> going on there, maybe everyone can post their emerge --info outputs.

here's mine:

Portage 2.1.8.3 (default/linux/x86/10.0, gcc-4.4.3, glibc-2.11.1-r0, 2.6.29-gentoo-r1 i686)
=================================================================
System uname: Linux-2.6.29-gentoo-r1-i686-Intel-R-_Core-TM-2_Duo_CPU_T9400_@_2.53GHz-with-gentoo-2.0.1
Timestamp of tree: Sat, 19 Jun 2010 11:00:01 +0000
app-shells/bash:     4.1_p7
dev-java/java-config: 2.1.9-r1
dev-lang/python:     2.4.4-r13, 2.5.4-r2, 2.6.5-r2
dev-util/cmake:      2.8.1-r1
sys-apps/baselayout: 2.0.1
sys-apps/openrc:     0.6.1-r1
sys-apps/sandbox:    2.2
sys-devel/autoconf:  2.13, 2.65
sys-devel/automake:  1.4_p6, 1.5, 1.6.3, 1.7.9-r1, 1.8.5-r3, 1.9.6-r2, 1.10.3, 1.11.1
sys-devel/binutils:  2.20.1-r1
sys-devel/gcc:       4.1.2, 4.3.4, 4.4.3-r2
sys-devel/gcc-config: 1.4.1
sys-devel/libtool:   2.2.8
virtual/os-headers:  2.6.33
ACCEPT_KEYWORDS="x86 ~x86"
ACCEPT_LICENSE="*"
CBUILD="i686-pc-linux-gnu"
CFLAGS="-O2 -march=core2 -pipe"
CHOST="i686-pc-linux-gnu"
CONFIG_PROTECT="/etc /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/terminfo /etc/texmf/language.dat.d /etc/texmf/language.def.d /etc/texmf/updmap.d /etc/texmf/web2c"
CXXFLAGS="-O2 -march=core2 -pipe"
DISTDIR="/usr/portage/distfiles"
FEATURES="assume-digests distlocks fixpackages news parallel-fetch protect-owned sandbox sfperms strict unmerge-logs unmerge-orphans userfetch"
GENTOO_MIRRORS="ftp://gentoo.inf.elte.hu/ ftp://ftp.dei.uc.pt/pub/linux/gentoo/ http://mirror.cambrium.nl/pub/os/linux/gentoo/ ftp://gentoo.wheel.sk/pub/linux/gentoo/ http://212.219.56.131/sites/www.ibiblio.org/gentoo/"
LANG="en_US.UTF-8"
LDFLAGS="-Wl,-O1"
LINGUAS="en de"
MAKEOPTS="-j3"
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="/var/lib/layman/sunrise /usr/local/portage/local_overlay"
SYNC="rsync://rsync.gentoo.org/gentoo-portage"
USE="X acl acpi alsa bash-completion berkdb bluetooth bzip2 cdparanoia cdr cdrkit cdrom cli cracklib crypt cups cxx dbus dri dssi dvd dvdarchive dvdchapjump dvdnav dvdr dvdread encode ffmpeg fluidsynth fortran gdbm gpm gtk iconv ipv6 jack jpeg jpeg2k kde ladspa lame mmx modules mp3 mudflap musicbrainz ncurses networkmanager nls nptl nptlonly ntfs openexr opengl openmp oxygen pam pch pcre perl png pppd pulseaudio python qt3support qt4 readline realmedia reflection samba session spl sse sse2 ssl sysfs tcpd tiff unicode usb x264 x86 xcomposite xinerama xorg xulrunner xv xvmc zlib" ALSA_CARDS="hda-intel" 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" LINGUAS="en de" RUBY_TARGETS="ruby18" USERLAND="GNU" VIDEO_CARDS="nvidia" XTABLES_ADDONS="quota2 psd pknock lscan length2 ipv4options ipset ipp2p iface geoip fuzzy condition tee tarpit sysrq steal rawnat logmark ipmark dhcpmac delude chaos account" 
Unset:  CPPFLAGS, CTARGET, EMERGE_DEFAULT_OPTS, FFLAGS, INSTALL_MASK, LC_ALL, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS
Comment 38 Simon Haegler 2010-06-19 16:36:27 UTC
Created attachment 235963 [details]
updated ebuild (needs exactly qhull-2003.1 and cleanups)

i'm still looking into the extraction-path issue, but i already made some other changes:
- currently, meshlab exactly needs qhull-2003.1 (qhull-2010.1 does not install headers, see bug 324689)
- fixed the patch to correclty set rpaths again
- some cleanups (call to emake is not needed, it is the default)
Comment 39 Simon Haegler 2010-06-19 16:37:10 UTC
Created attachment 235965 [details]
fixed rpaths
Comment 40 Simon Haegler 2010-06-19 17:49:09 UTC
Created attachment 235971 [details]
fixed $S

the extraction path issue is resolved - i used an outdated tarball (upstream modified the tarball without bumping the version). sorry about the confusion.
Comment 41 Simon Haegler 2010-06-20 15:56:22 UTC
Created attachment 236077 [details]
updated deps (>= gcc 4.4 for openmp compile flag)
Comment 42 Simon Haegler 2010-06-20 15:57:21 UTC
Created attachment 236079 [details]
just renamed
Comment 43 luca 2010-07-12 14:53:49 UTC
for me patching does not work! 
when the ebuild try to apply the patch an error is raised!

compiling without patch give an error about sub-meshlabplugins-io_3ds-make_default-ordered

is there anybody who succesfully compiled meshlab with this ebuild??

Thanks
Comment 44 Simon Haegler 2010-07-13 13:19:46 UTC
(In reply to comment #43)
> for me patching does not work! 
> when the ebuild try to apply the patch an error is raised!
> 
> compiling without patch give an error about
> sub-meshlabplugins-io_3ds-make_default-ordered

hi, can you post your emerge info and the error?
Comment 45 Pekka Paalanen 2010-08-10 10:14:27 UTC
After getting the levmar bug #321815 solved, I tried the 1.2.3a-r3 ebuild again and it compiled fine. The executable had a library path issue, but otherwise runs. I will try r5 next.
Comment 46 Pekka Paalanen 2010-08-11 09:06:12 UTC
About the r5 ebuild, IMO the dependency on >=sys-devel/gcc-4.4 is wrong because:
a) DEPENDing on it does not guarantee it is the active compiler (set via gcc-config).
b) According to use.desc, openmp "requires >=sys-devel/gcc-4.2 built with USE="openmp", so you should settle with version 4.3 (since 4.2 does not have a stable version), and
c) still honour and use the openmp USE flag, since it can be disabled, or require it on the active compiler.

I'm sure there are proper functions to check for the active compiler version and that it has USE=openmp, but I do not know what they are.

In my current system, the r5 ebuild works fine, and there seem to be no library path issues.
Comment 47 Michael Weber (RETIRED) gentoo-dev 2010-08-11 09:43:19 UTC
(In reply to comment #46)
> About the r5 ebuild, IMO the dependency on >=sys-devel/gcc-4.4 is wrong
> because:
> a) DEPENDing on it does not guarantee it is the active compiler (set via
> gcc-config).
no idea on how to handle this proper, maybe some pkg_setup() test on `gcc-config -c -C` ...

> b) According to use.desc, openmp "requires >=sys-devel/gcc-4.2 built with
> USE="openmp", so you should settle with version 4.3 (since 4.2 does not have a
> stable version), and
Erm unlikely but there's a chance to get a stable version, please don't over-specify dependency versions.

> c) still honour and use the openmp USE flag, since it can be disabled, or
> require it on the active compiler.
> 
> I'm sure there are proper functions to check for the active compiler version
> and that it has USE=openmp, but I do not know what they are.
in EAPI-2 and beyond, you can express this as "use dependencies" http://www.gentoo.org/proj/en/qa/pms.xml
>=sys-devel/gcc-4.2[openmp]

feel free to join #gentoo-dev-help or #gentoo-sunrise on irc.freenode.net if ou're interested in this. Michael
Comment 48 Kacper Kowalik (Xarthisius) (RETIRED) gentoo-dev 2010-08-11 09:48:13 UTC
(In reply to comment #47)
> (In reply to comment #46)
Proper way to depend on openmp:
 1) RDEP/DEP on gcc-4.3[openmp]
 2) use tc-has-openmp from toolchain-funcs

Check out media-gfx/imagemagick-6.6.3.0 for optional dependency (with use flag) or sci-biology/shrimp-2.0.1 (mandatory).
Cheers,
Kacper Kowalik
Comment 49 Sébastien Fabbro (RETIRED) gentoo-dev 2010-08-11 14:10:44 UTC
> Proper way to depend on openmp:
>  1) RDEP/DEP on gcc-4.3[openmp]
>  2) use tc-has-openmp from toolchain-funcs

Actually, I would not recommend 1) because the user could use another compiler than gcc. Also 2) only checks if gcc has openmp, so you should use something like 
[[ $(tc-getCC) == *gcc* ]] && tc-has-openmp
Comment 50 Kacper Kowalik (Xarthisius) (RETIRED) gentoo-dev 2010-08-11 15:36:47 UTC
(In reply to comment #49)
> Actually, I would not recommend 1) because the user could use another compiler
> than gcc. Also 2) only checks if gcc has openmp, so you should use something
> like 
> [[ $(tc-getCC) == *gcc* ]] && tc-has-openmp
Agree, that's only solution for gcc. I don't know if something more general is available. 

Comment 51 Simon Haegler 2011-07-10 19:21:55 UTC
Created attachment 279677 [details]
meshlab 1.3.0a

adapted ebuild for meshlab 1.3.0a
Comment 52 Simon Haegler 2011-07-10 19:22:44 UTC
Created attachment 279679 [details, diff]
patch for meshlab 1.3.0a ebuild
Comment 53 Thomas Capricelli 2014-11-11 17:19:48 UTC
explication for those reaching this page : there's now an ebuild in the official tree, that's why this ticket was marked as 'obsolete'