View previous topic :: View next topic |
Author |
Message |
strelok n00b
Joined: 05 Apr 2011 Posts: 43
|
Posted: Thu Dec 27, 2012 8:07 pm Post subject: emerge ppl |
|
|
Hello,
I have troubles to emerge ppl :
Quote: | configure: error: Cannot find GMP version 4.1.3 or higher.
GMP is the GNU Multi-Precision library:
see http://www.swox.com/gmp/ for more information.
When compiling the GMP library, do not forget to enable the C++ interface:
add --enable-cxx to the configuration options.
!!! Please attach the following file when seeking support:
!!! /var/tmp/portage/dev-libs/ppl-0.12.1/work/ppl-0.12.1/config.log
* ERROR: dev-libs/ppl-0.12.1 failed (configure phase):
* econf failed
*
* Call stack:
* ebuild.sh, line 93: Called src_configure
* environment, line 2026: Called econf '--docdir=/usr/share/doc/ppl-0.12.1' '--disable-debugging' '--disable-optimization' '--disable-documentation' '--disable-ppl_lpsol' '--disable-pch' '--enable-static' '--enable-interfaces=c cxx'
* phase-helpers.sh, line 505: Called die
* The specific snippet of code:
* die "econf failed"
*
* If you need support, post the output of `emerge --info '=dev-libs/ppl-0.12.1'`,
* the complete build log and the output of `emerge -pqv '=dev-libs/ppl-0.12.1'`.
* The complete build log is located at '/var/tmp/portage/dev-libs/ppl-0.12.1/temp/build.log'.
* The ebuild environment file is located at '/var/tmp/portage/dev-libs/ppl-0.12.1/temp/environment'.
* Working directory: '/var/tmp/portage/dev-libs/ppl-0.12.1/work/ppl-0.12.1'
* S: '/var/tmp/portage/dev-libs/ppl-0.12.1/work/ppl-0.12.1'
>>> Failed to emerge dev-libs/ppl-0.12.1, Log file:
|
What should I do ? |
|
Back to top |
|
|
lxg Veteran
Joined: 12 Nov 2005 Posts: 1019 Location: Aachen, Germany
|
Posted: Thu Dec 27, 2012 9:43 pm Post subject: |
|
|
What does emerge -pv ppl gmp say? _________________ lxg.de – codebits and tech talk |
|
Back to top |
|
|
strelok n00b
Joined: 05 Apr 2011 Posts: 43
|
Posted: Thu Dec 27, 2012 9:54 pm Post subject: |
|
|
Quote: | emerge -pv ppl gmp
These are the packages that would be merged, in order:
Calculating dependencies... done!
[ebuild R ] dev-libs/gmp-5.1.0 USE="cxx static-libs -doc" 0 kB
[ebuild N ] dev-libs/ppl-0.12.1 USE="static-libs -doc -lpsol -pch {-test}" 0 kB
Total: 2 packages (1 new, 1 reinstall), Size of downloads: 0 kB
* IMPORTANT: 1 news items need reading for repository 'gentoo'.
* Use eselect news to read news items.
|
|
|
Back to top |
|
|
lxg Veteran
Joined: 12 Nov 2005 Posts: 1019 Location: Aachen, Germany
|
Posted: Thu Dec 27, 2012 10:02 pm Post subject: |
|
|
May I ask why you're emerging with static-libs enabled? Have you tried emerging with this USE flag deactivated? _________________ lxg.de – codebits and tech talk |
|
Back to top |
|
|
strelok n00b
Joined: 05 Apr 2011 Posts: 43
|
Posted: Thu Dec 27, 2012 10:24 pm Post subject: |
|
|
I just tried : same message.
Quote: | These are the packages that would be merged, in order:
Calculating dependencies... done!
[ebuild R ] dev-libs/gmp-5.1.0 USE="cxx -doc -static-libs" 0 kB
[ebuild N ] dev-libs/ppl-0.12.1 USE="-doc -lpsol -pch -static-libs {-test}" 0 kB
Total: 2 packages (1 new, 1 reinstall), Size of downloads: 0 kB
* IMPORTANT: 1 news items need reading for repository 'gentoo'.
* Use eselect news to read news items.
|
I think libraries are not linked very well, but I don't know how to check... |
|
Back to top |
|
|
lxg Veteran
Joined: 12 Nov 2005 Posts: 1019 Location: Aachen, Germany
|
Posted: Thu Dec 27, 2012 10:39 pm Post subject: |
|
|
Um, how can they not be linked very well? They are either linked correctly or not …
If you want to see the links of a certain binary, you can test with ldd /path/to/file.
Did you build other packages linked statically, too? I mean on purpose, not in cases where Portage did so automatically or requested you to set this USE flag.
However, you might consider submitting a bug report on bugs.gentoo.org … but we should first try to find out more about your environment, in order to have a more meaningful bug report. _________________ lxg.de – codebits and tech talk |
|
Back to top |
|
|
Hu Moderator
Joined: 06 Mar 2007 Posts: 21633
|
Posted: Thu Dec 27, 2012 10:46 pm Post subject: Re: emerge ppl |
|
|
strelok wrote: | Quote: | !!! Please attach the following file when seeking support:
!!! /var/tmp/portage/dev-libs/ppl-0.12.1/work/ppl-0.12.1/config.log
|
|
|
|
Back to top |
|
|
strelok n00b
Joined: 05 Apr 2011 Posts: 43
|
Posted: Thu Dec 27, 2012 10:47 pm Post subject: |
|
|
I mean : I tried to compile gmp with official sources. If I tried to do "make install", maybe some links were erased.
I don't think I built anything statically but not sure...
My environment :
Quote: | emerge --info
Portage 2.1.11.38 (default/linux/amd64/10.0, gcc-4.6.3, glibc-2.16.0, 3.6.8-gentoo x86_64)
=================================================================
System uname: Linux-3.6.8-gentoo-x86_64-Intel-R-_Core-TM-_i5_CPU_M_460_@_2.53GHz-with-gentoo-2.2
Timestamp of tree: Thu, 27 Dec 2012 00:45:01 +0000
ld GNU ld (GNU Binutils) 2.23.1
app-shells/bash: 4.2_p39-r1
dev-java/java-config: 2.1.12-r1
dev-lang/python: 2.7.3-r3, 3.2.3-r2
dev-util/cmake: 2.8.10.2
dev-util/pkgconfig: 0.27.1
sys-apps/baselayout: 2.2
sys-apps/openrc: 0.11.8
sys-apps/sandbox: 2.6
sys-devel/autoconf: 2.13, 2.69
sys-devel/automake: 1.9.6-r3, 1.11.6, 1.12.6
sys-devel/binutils: 2.23.1
sys-devel/gcc: 4.6.3
sys-devel/gcc-config: 1.8
sys-devel/libtool: 2.4.2
sys-devel/make: 3.82-r4
sys-kernel/linux-headers: 3.7 (virtual/os-headers)
sys-libs/glibc: 2.16.0
Repositories: gentoo
ACCEPT_KEYWORDS="amd64 ~amd64"
ACCEPT_LICENSE="* -@EULA PUEL"
CBUILD="x86_64-pc-linux-gnu"
CFLAGS="-march=native -O2 -pipe"
CHOST="x86_64-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/share/gnupg/qualified.txt"
CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/dconf /etc/env.d /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"
CXXFLAGS="-march=native -O2 -pipe"
DISTDIR="/usr/portage/distfiles"
FCFLAGS="-O2 -pipe"
FEATURES="assume-digests binpkg-logs ccache config-protect-if-modified distlocks ebuild-locks fixlafiles merge-sync news parallel-fetch protect-owned sandbox sfperms strict unknown-features-warn unmerge-logs unmerge-orphans userfetch"
FFLAGS="-O2 -pipe"
GENTOO_MIRRORS="ftp://miroir.eleves.polytechnique.fr/linux/gentoo http://gentoo.osuosl.org"
LDFLAGS="-Wl,-O1 -Wl,--as-needed"
MAKEOPTS="-j2"
PKGDIR="/usr/portage/packages"
PORTAGE_CONFIGROOT="/"
PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress --force --whole-file --delete --stats --human-readable --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage"
PORTDIR_OVERLAY=""
SYNC="rsync://rsync/gentoo-portage"
USE="X a52 aac acl additions afpacket alsa amd64 amrnb autoipd berkdb bidi bzip2 caps cdda cdio cli consolekit cracklib crypt cups cxx dbus directfb divx divx4linux dri dts dump dvd extras ffmpeg flac fontconfig fortran freetype gdbm ggi git gmedia gnutls gpm httpd iconv icu ipv6 jack java jpeg live mad matroska matrox mmx modules mp2 mp3 mpeg mudflap multilib musepack ncurses nls nptl ogg oggvorbis opengl openmp oss pam pcap pcre png posix pppd quicktime readline realmedia reiserfs sdk sdl session sse sse2 ssl stream tcpd theora truetype udev unicode v4l v4l2 vcd vlm vorbis wmp wxwindows x264 xanim xv xvid 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" CALLIGRA_FEATURES="kexi words flow plan sheets stage tables krita karbon braindump" CAMERAS="ptp2" COLLECTD_PLUGINS="df interface irq load memory rrdtool swap syslog" ELIBC="glibc" GPSD_PROTOCOLS="ashtech aivdm earthmate evermore fv18 garmin garmintxt gpsclock itrax mtk3301 nmea ntrip navcom oceanserver oldstyle oncore rtcm104v2 rtcm104v3 sirf superstar2 timing tsip tripmate tnt ubx" INPUT_DEVICES="evdev" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LIBREOFFICE_EXTENSIONS="presenter-console presenter-minimizer" PHP_TARGETS="php5-3" PYTHON_SINGLE_TARGET="python2_7" PYTHON_TARGETS="python2_7 python3_2" RUBY_TARGETS="ruby18" USERLAND="GNU" VIDEO_CARDS="intel nouveau" 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, INSTALL_MASK, LANG, LC_ALL, PORTAGE_BUNZIP2_COMMAND, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS, USE_PYTHON
|
|
|
Back to top |
|
|
lxg Veteran
Joined: 12 Nov 2005 Posts: 1019 Location: Aachen, Germany
|
Posted: Thu Dec 27, 2012 10:53 pm Post subject: |
|
|
Could you please simply run revdep-rebuild? That should fix broken dependencies.
Btw, it's a very bad idea to directly install packages outside of Portage. You should always write an ebuild, so Portage can keep track of installed files.
And, why did you install gmp from the original sources at all? Did you encounter any problems with the package provided in Portage? _________________ lxg.de – codebits and tech talk |
|
Back to top |
|
|
strelok n00b
Joined: 05 Apr 2011 Posts: 43
|
Posted: Thu Dec 27, 2012 10:55 pm Post subject: |
|
|
I found this in config.log :
Quote: | configure:10038: checking for the GMP library version 4.1.3 or above
configure:10127: x86_64-pc-linux-gnu-g++ -o conftest -frounding-math -march=native -O2 -pipe -Wl,-O1 -Wl,--as-needed conftest.cpp -lgmpxx -lgmp >&5
configure:10127: $? = 0
configure:10127: ./conftest
GMP header (gmpxx.h) and library (ligmpxx.*) version mismatch:
header gives 5.0.5;
library gives 5.1.0.
configure:10127: $? = 1
configure: program exited with status 1 |
I think I was right, it is due to a "make install" because the version I downloaded is 5.0.5...
How to restore right headers ?
I already tried revdep, nothing changed.
I compiled gmp for student project. |
|
Back to top |
|
|
Hu Moderator
Joined: 06 Mar 2007 Posts: 21633
|
Posted: Fri Dec 28, 2012 2:20 am Post subject: |
|
|
Remove all files that were copied via make install. Keep only the files installed by Portage. |
|
Back to top |
|
|
ubersolid n00b
Joined: 30 Jan 2008 Posts: 13 Location: Finland
|
Posted: Fri Dec 28, 2012 7:25 am Post subject: |
|
|
ppl will not emerge with gmp-5.1.0, mask that one and emerge gmp-5.0.5 and ppl should go nicely. |
|
Back to top |
|
|
strelok n00b
Joined: 05 Apr 2011 Posts: 43
|
Posted: Fri Dec 28, 2012 11:10 am Post subject: |
|
|
Ok, problem solved : I did "make uninstall", reemerged gmp-5.0.5 and now everything is compiling perfectly
Thanks ! |
|
Back to top |
|
|
Poor Fred n00b
Joined: 10 Aug 2006 Posts: 7 Location: Russia
|
Posted: Mon Dec 31, 2012 12:38 pm Post subject: |
|
|
ubersolid wrote: | ppl will not emerge with gmp-5.1.0, mask that one and emerge gmp-5.0.5 and ppl should go nicely. |
Thank you. I also couldn't emerge ppl. Now emerged ok. |
|
Back to top |
|
|
Odysseus Apprentice
Joined: 23 Jun 2004 Posts: 250 Location: Miami, FL. I miss San Francisco!!!
|
Posted: Mon Dec 31, 2012 8:37 pm Post subject: |
|
|
You folks should check the Gentoo bugzilla when you have issues like this to both report said problem and to see if there is a suitable workaround. Over the years, I've found this to be the best way to solve issues especially when running ~arch or a mixed stable / ~arch system. I don't like masking newer versions of installed packages when I can avoid doing so. (My reason for this is the vast majority of package updates don't involve any ABI /API changes, they are for bug fixes, feature additions / improvements, and security fixes.)
In this case Gentoo Bug 447929 https://bugs.gentoo.org/show_bug.cgi?id=447928 was first reported on the 20th of December, with workarounds and patches being posted since the 22nd.
Several days ago a patch which fixes this issue for all versions of ppl currently in portage was accepted upstream into the ppl git.
Here's the ppl-gmp-5.1.0.patch:
Code: | --- src/p_std_bits.cc.org 2012-12-30 00:37:03.033948083 +0100
+++ src/mp_std_bits.cc 2012-12-30 00:44:12.893019313 +0100
@@ -25,6 +25,9 @@
#include "ppl-config.h"
#include "mp_std_bits.defs.hh"
+#if __GNU_MP_VERSION < 5 \
+ || (__GNU_MP_VERSION == 5 && __GNU_MP_VERSION_MINOR < 1)
+
const bool std::numeric_limits<mpz_class>::is_specialized;
const int std::numeric_limits<mpz_class>::digits;
const int std::numeric_limits<mpz_class>::digits10;
@@ -70,3 +73,6 @@
const bool std::numeric_limits<mpq_class>::traps;
const bool std::numeric_limits<mpq_class>::tininess_before;
const std::float_round_style std::numeric_limits<mpq_class>::round_style;
+
+#endif // __GNU_MP_VERSION < 5
+ // || (__GNU_MP_VERSION == 5 && __GNU_MP_VERSION_MINOR < 1)
--- src/mp_std_bits.defs.hh.org 2012-12-30 00:37:03.037948187 +0100
+++ src/mp_std_bits.defs.hh 2012-12-30 00:42:32.002424189 +0100
@@ -38,6 +38,9 @@
#endif // defined(PPL_DOXYGEN_INCLUDE_IMPLEMENTATION_DETAILS)
void swap(mpq_class& x, mpq_class& y);
+#if __GNU_MP_VERSION < 5 \
+ || (__GNU_MP_VERSION == 5 && __GNU_MP_VERSION_MINOR < 1)
+
namespace std {
#ifdef PPL_DOXYGEN_INCLUDE_IMPLEMENTATION_DETAILS
@@ -164,6 +167,9 @@
} // namespace std
+#endif // __GNU_MP_VERSION < 5
+ // || (__GNU_MP_VERSION == 5 && __GNU_MP_VERSION_MINOR < 1)
+
#include "mp_std_bits.inlines.hh"
#endif // !defined(PPL_mp_std_bits_defs_hh)
|
And here is a modified ppl-0.12.1.ebuild Code: | # Copyright 1999-2012 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: /var/cvsroot/gentoo-x86/dev-libs/ppl/ppl-0.12.1.ebuild,v 1.1 2012/04/29 06:51:32 dirtyepic Exp $
EAPI="3"
inherit eutils
DESCRIPTION="The Parma Polyhedra Library provides numerical abstractions for analysis of complex systems"
HOMEPAGE="http://bugseng.com/products/ppl"
SRC_URI="http://bugseng.com/products/ppl/download/ftp/releases/${PV}/${P}.tar.bz2"
LICENSE="GPL-3"
SLOT="0"
KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~sparc-fbsd ~x86-fbsd ~amd64-linux ~sparc-solaris"
IUSE="doc lpsol pch static-libs test"
RDEPEND=">=dev-libs/gmp-4.1.3[cxx]
lpsol? ( sci-mathematics/glpk )
!<dev-libs/cloog-ppl-0.15.10"
DEPEND="${RDEPEND}
sys-devel/m4"
pkg_setup() {
if use test; then
ewarn "The PPL testsuite will be run."
ewarn "Note that this can take several hours to complete on a fast machine."
epause 3
fi
}
src_configure() {
epatch "${FILESDIR}"/ppl-gmp-5.1.0.patch
econf \
--docdir="${EPREFIX}"/usr/share/doc/${PF} \
--disable-debugging \
--disable-optimization \
$(use_enable doc documentation) \
$(use_enable lpsol ppl_lpsol) \
$(use_enable pch) \
$(use_enable static-libs static) \
--enable-interfaces="c cxx" \
$(use test && echo --enable-check=quick)
}
src_test() {
# default src_test runs with -j1, overriding it here saves about
# 30 minutes and is recommended by upstream
if emake -j1 check -n &> /dev/null; then
emake check || die "tests failed"
fi
}
src_install() {
emake DESTDIR="${D}" install || die
use static-libs || rm -f "${D}"/usr/lib*/libppl*.la
local docsdir="${ED}/usr/share/doc/${PF}"
rm "${docsdir}"/gpl* "${docsdir}"/fdl* || die
if ! use doc; then
rm -r "${docsdir}"/*-html/ || die
fi
dodoc NEWS README* STANDARDS TODO
}
pkg_postinst() {
echo
ewarn "After an upgrade of PPL it is important that you rebuild"
ewarn "dev-libs/cloog-ppl."
ewarn
ewarn "If you use gcc-config to switch to an older compiler version than"
ewarn "the one PPL was built with, PPL must be rebuilt with that version."
ewarn
ewarn "In both cases failure to do this will get you this error when"
ewarn "graphite flags are used:"
ewarn
ewarn " sorry, unimplemented: Graphite loop optimizations cannot be used"
ewarn
echo
}
|
Just place the ebuild in dev-libs/ppl of your local overlay and the patch in the 'files' directory there, then 'ebuild digest' it.
It should then build and install without errors. Also remember to rebuild dev-libs/cloog-ppl afterwards.
I hope this helps,
Ciao |
|
Back to top |
|
|
|