A new version is available, it requires to set the TOOLROOT as "${D}/usr" and apparently it links itself to the wrong libstdc++ (the system one) while looking for the open64 one when invoking the be executable from the toolchain.
The amd fork is scary. It's not directly downloadable, and they don't seem to cooperate with open64 upstream. I'll have to ignore that one :)
Well 4.2.3 is not an AMD fork
4.2.4 is out already
Treecleaner: Please mask this package for removal. It hasn't been bumped in ages and deps on a version of bison that's been removed from the tree. Patrick already stated on IRC that this package is difficult to maintain and may not even compile with recent versions of GCC.
This package compiles well with recent gcc and bison. at least with ./configure && make -j 12 But i havent succeeded in compiling it with ebuild.
based on the latest comment, this package seems that it may actually compile. Do you still want to punt the ebuild?
(In reply to comment #6) > based on the latest comment, this package seems that it may actually compile. > Do you still want to punt the ebuild? At least build problems are no due to bison as it was told. It's something wrong with package build system, it seems that it uses both 64 and 32 binaries. maybe problem is due to gcc-4.2.0 used to bootstrap it. ../configure --prefix=/opt/open64 --with-build-compiler=GNU CC=gcc-4.2.4 CXX=g++-4.2.4 FC=gfortran-4.2.4 and make -j 12 made it compile. but i dont know why ebuild fails with same configure options. maybe it's due to --target in ebuild, i'll check it. Pls dont close this bug yet.
compiler also can compile itself( just tested ), though it makes lots of warnings on wrong CFLAGS. i'll check its build system this week, maybe i'll find problem.
64-bit libhugetlbfs fails to build with emerge /usr/lib/gcc/x86_64-pc-linux-gnu/4.5.2/../../../../x86_64-pc-linux-gnu/bin/ld: duplicate version tag `VERS_1.0' /usr/lib/gcc/x86_64-pc-linux-gnu/4.5.2/../../../../x86_64-pc-linux-gnu/bin/ld: setup_libhugetlbfs: undefined version: VERS_1.0 /usr/lib/gcc/x86_64-pc-linux-gnu/4.5.2/../../../../x86_64-pc-linux-gnu/bin/ld: __setup_hugepage: undefined version: VERS_1.0 /usr/lib/gcc/x86_64-pc-linux-gnu/4.5.2/../../../../x86_64-pc-linux-gnu/bin/ld: hugetlbfs_unlinked_fd: undefined version: VERS_1.0 /usr/lib/gcc/x86_64-pc-linux-gnu/4.5.2/../../../../x86_64-pc-linux-gnu/bin/ld: hugetlbfs_find_path: undefined version: VERS_1.0 /usr/lib/gcc/x86_64-pc-linux-gnu/4.5.2/../../../../x86_64-pc-linux-gnu/bin/ld: hugetlbfs_test_path: undefined version: VERS_1.0 /usr/lib/gcc/x86_64-pc-linux-gnu/4.5.2/../../../../x86_64-pc-linux-gnu/bin/ld: gethugepagesize: undefined version: VERS_1.0 /usr/lib/gcc/x86_64-pc-linux-gnu/4.5.2/../../../../x86_64-pc-linux-gnu/bin/ld: failed to set dynamic section sizes: Bad value any ideas?
gcc -m32 -DKEY -DOPEN64_SPIN -DFE_GNU_4_2_0 -O2 -DTARG_X8664 -DIN_GCC -W -Wall -Wwrite-strings -Wstrict-prototypes -Wmissing-prototypes -pedantic -Wno-long-long -Wno-variadic-macros -Wno-overlength-strings -Wold-style-definition -Wmissing-format-attribute -DHAVE_CONFIG_H -o cc1-dummy c-lang.o stub-objc.o attribs.o c-errors.o c-lex.o c-pragma.o c-decl.o c-typeck.o c-convert.o c-aux-info.o c-common.o c-opts.o c-format.o c-semantics.o c-incpath.o cppdefault.o c-ppoutput.o c-cppbuiltin.o prefix.o c-objc-common.o c-dump.o c-pch.o c-parser.o c-gimplify.o tree-mudflap.o c-pretty-print.o c-omp.o dummy-checksum.o \ main.o libbackend.a ../../osprey/targdir/libspin_4_2_0/libgspin42.a ../libcpp/libcpp.a ../libdecnumber/libdecnumber.a ../libcpp/libcpp.a ../libiberty/libiberty.a ../libdecnumber/libdecnumber.a gcc: ../../osprey/targdir/libspin_4_2_0/libgspin42.a: No such file or directory there's some weirdness in the makefiles, building with newer gcc seems impossible
gcc-4.1 or 4.2 is hard dependency as i see.
Created attachment 292629 [details] My attempt to write an ebuild file for Open64 5.0 Open64 5.0 is out. I tried to compile it on my own, using the attached ebuild, but I failed; depending on the CFLAGS used (and maybe also depending on luck), I got errors from different places. My latest build error: /usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/../../../../x86_64-pc-linux-gnu/bin/ld: i386:x86-64 architecture of input file `../../../osprey/targdir/libspin_4_2_0/libgspin42.a(gspin-tree.o)' is incompatible with i386 output /usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/../../../../x86_64-pc-linux-gnu/bin/ld: i386:x86-64 architecture of input file `../../../osprey/targdir/libspin_4_2_0/libgspin42.a(gspin-mempool.o)' is incompatible with i386 output /usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/../../../../x86_64-pc-linux-gnu/bin/ld: i386:x86-64 architecture of input file `../../../osprey/targdir/libspin_4_2_0/libgspin42.a(gspin-io.o)' is incompatible with i386 output /usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/../../../../x86_64-pc-linux-gnu/bin/ld: i386:x86-64 architecture of input file `../../../osprey/targdir/libspin_4_2_0/libgspin42.a(gspin-tel.o)' is incompatible with i386 output /usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/../../../../x86_64-pc-linux-gnu/bin/ld: i386:x86-64 architecture of input file `../../../osprey/targdir/libspin_4_2_0/libgspin42.a(gspin-list.o)' is incompatible with i386 output /usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/../../../../x86_64-pc-linux-gnu/bin/ld: final link failed: Invalid operation collect2: ld returned 1 exit status make[4]: *** [cc1-dummy] Error 1 The ebuild has all the dependencies mentioned in the Open64 docs; although they say it needs GCC between 4.0 and 4.4, I added 4.5 as well to test it with my existing environment. Additionally, two patches are applied that I had to create to overcome some path oddities in one of the Makefiles (the same problem as in comment #10) and in one of the configure scripts. I’ve become a bit frustrated so I gave up building it… but maybe someone else can make it run. After all, I’m not experienced with Makefile stuff and compiling compilers. --- My environment: Portage 2.1.10.11 (default/linux/amd64/10.0/desktop, gcc-4.5.3, glibc-2.12.2-r0, 3.1.0-gentoo x86_64) ================================================================= System uname: Linux-3.1.0-gentoo-x86_64-AMD_Phenom-tm-_II_X4_965_Processor-with-gentoo-2.1 Timestamp of tree: Mon, 14 Nov 2011 06:30:01 +0000 app-shells/bash: 4.1_p9 dev-java/java-config: 2.1.11-r3 dev-lang/python: 2.7.2-r3, 3.1.4-r3 dev-util/cmake: 2.8.4-r1 dev-util/pkgconfig: 0.26 sys-apps/baselayout: 2.1 sys-apps/openrc: 0.9.4 sys-apps/sandbox: 2.5 sys-devel/autoconf: 2.13, 2.68 sys-devel/automake: 1.10.3, 1.11.1 sys-devel/binutils: 2.21.1-r1 sys-devel/gcc: 4.5.3-r1 sys-devel/gcc-config: 1.4.1-r1 sys-devel/libtool: 2.4-r1 sys-devel/make: 3.82-r1 sys-kernel/linux-headers: 2.6.39 (virtual/os-headers) sys-libs/glibc: 2.12.2 Repositories: gentoo spring roslin x-portage ACCEPT_KEYWORDS="amd64" ACCEPT_LICENSE="* -@EULA @FREE ut2003 skype-eula RTCW-ETEULA dlj-1.1 PUEL teamspeak3 AdobeFlash-10 AdobeFlash-10.1" CBUILD="x86_64-pc-linux-gnu" CFLAGS="-march=amdfam10 -O2 -mfpmath=sse -pipe" CHOST="x86_64-pc-linux-gnu" CONFIG_PROTECT="/etc /usr/share/config /usr/share/gnupg/qualified.txt /usr/share/openvpn/easy-rsa /var/lib/hsqldb" CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/dconf /etc/env.d /etc/env.d/java/ /etc/fonts/fonts.conf /etc/gconf /etc/gentoo-release /etc/php/apache2-php5.3/ext-active/ /etc/php/cgi-php5.3/ext-active/ /etc/php/cli-php5.3/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=amdfam10 -O2 -mfpmath=sse -pipe" DISTDIR="/usr/portage/distfiles" FEATURES="assume-digests binpkg-logs candy compress-build-logs distlocks ebuild-locks fixlafiles fixpackages news parallel-fetch protect-owned sandbox sfperms strict unknown-features-warn unmerge-logs unmerge-orphans userfetch usersync" FFLAGS="" GENTOO_MIRRORS="http://distfiles.gentoo.org" LANG="nds_DE.utf8" LDFLAGS="-Wl,-O1 -Wl,--as-needed" LINGUAS="en de ja ru" MAKEOPTS="-j1" PKGDIR="/usr/portage/packages" PORTAGE_COMPRESS="xz" PORTAGE_COMPRESS_FLAGS="-9e" 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/Spring /var/lib/layman/roslin /usr/local/portage" SYNC="rsync://rsync.gentoo.org/gentoo-portage" USE="3dnow 3dnowext X Xaw3d a52 aac acl acpi aim alsa amd64 amr anthy ao apm audiofile bash-completion berkdb bidi bzip2 cairo cdda cddb cdparanoia cdr chroot cjk cli consolekit cracklib crypt css cups curl cxx dbus dri dts dvd dvdnav dvdr eds emboss enca encode exif faac faad fam fbcon ffmpeg firefox flac fontconfig foomaticdb ftp gcrypt gd gdbm gdu geoip gif gimp gloox gmp gnome gnutls gpm gs gstreamer gtk iconv icq icu id3 id3tag idn imagemagick imap imlib immqt-bc ipod ipv6 irc jabber jack java java6 javascript joystick jpeg jpeg2k kde lame lcms libcaca libnotify libsamplerate libwww lm_sensors logitech-mouse lzma lzo m17n-lib mad matroska memlimit midi mikmod mime mmap mmx mmxext mng modplug modules mp2 mp3 mp4 mpeg mplayer mudflap multilib musepack nautilus ncurses network nls nntp nptl nptlonly nsplugin offensive ogg openal opengl openmp oscar otr pam pango pcre pdf pic png policykit posix ppds pppd prime qt3support qt4 quicktime rar readline realmedia recode rss rtsp samba sasl sdl session sharedmem sndfile snmp sockets socks5 soundtouch speex sse sse2 sse3 sse4a ssl startup-notification subversion svg sysfs syslog system-sqlite sysvipc taglib tcpd theora threads tiff truetype twolame udev unicode usb vdpau videos vorbis vpx wavpack webm wma wmf x264 xcb xft xine xml xorg xpm xprint xulrunner xv xvid xvmc 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 cgi cgid 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 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 keyboard mouse joystick" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LINGUAS="en de ja ru" PHP_TARGETS="php5-3" RUBY_TARGETS="ruby18" USERLAND="GNU" VIDEO_CARDS="fglrx" 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, LC_ALL, PORTAGE_BUNZIP2_COMMAND, PORTAGE_RSYNC_EXTRA_OPTS
Created attachment 292631 [details, diff] files/5.0-makefile-dirfix.patch This patch seems to fix the Makefile error. It looks to me as if the Open64 devs simply forget one ".." in the path.
Created attachment 292633 [details, diff] files/5.0-configure-dirfix.patch One of the configure scripts seems to point to the wrong location of "xgcc": the scripts omits the HOST_SUBDIR although it’s necessary.
Created attachment 295451 [details] Working ebuild for open64-5.0 After diving deeper into how the Open64 build process and Portage itself work, I finally got a working ebuild. In contradiction to the Portage maintainers, it builds fine with bison-2.4.3 so there is no need to hard-mask >=open64-5.0. Also, I successfully used gcc-4.5.3-r1 so you can also use GCC 4.5 (the Open64 devs advise to use something from 4.0 to 4.4) Caveats: * Fortran support doesn’t work because something fails in the building process (missing file), so don’t enable the +fortran USE flag. Since I don’t need Fortran support, I can get along without it. If someone knows how to fix this, please do it. * The attached ebuild installs Open64 into /usr/local. On my system, this shouldn’t be necessary because Open64 has no file collisions with other packages. But since I’m only one Gentoo user, there may be other cases where there are collisions. Maybe setting the prefix to /opt/open64 would be a better approach. * I’m not an expert at ebuilds so I think that some things in there might be bad style. * I had to drop the CFLAGS and LDFLAGS variable exports to make the compile work, Open64 seems to be sensitive there. Otherwise you get an error like in comment #9. This means that your own flags from make.conf won’t be used at all. Just so you know.
AR /var/tmp/portage/dev-lang/open64-5.0/work/build/osprey/targdir_lib2/libacml_mv/libacml_mv.a RANLIB /var/tmp/portage/dev-lang/open64-5.0/work/build/osprey/targdir_lib2/libacml_mv/libacml_mv.a LD /var/tmp/portage/dev-lang/open64-5.0/work/build/osprey/targdir_lib2/libacml_mv/libacml_mv.so.1 LN /var/tmp/portage/dev-lang/open64-5.0/work/build/osprey/targdir_lib2/libacml_mv/libacml_mv.so.1 make last make[1]: Leaving directory `/var/tmp/portage/dev-lang/open64-5.0/work/build/osprey/targdir_lib2' make: *** [lib2] Error 2 make: Leaving directory `/var/tmp/portage/dev-lang/open64-5.0/work/build' * ERROR: dev-lang/open64-5.0 failed (compile phase): * emake failed Doesn't work for me, but thanks for trying.
Patrick, could you please retry to build it with the MAKEOPTS parameter -j1 (instead of higher values)? Your snippet doesn’t contain an actual error message from the compilation, so I assume that the error happened before, in another make process.
MAKE default in /var/tmp/portage/dev-lang/open64-5.0/work/build/libhugetlbfs VERSION version string: 1.3 CC32 obj32/elflink.o AS32 obj32/sys-elf_i386.o CC32 obj32/hugeutils.o CC32 obj32/version.o CC32 obj32/init.o CC32 obj32/morecore.o CC32 obj32/debug.o LD32 (shared) obj32/libhugetlbfs_open64.so /usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/../../../../x86_64-pc-linux-gnu/bin/ld: duplicate version tag `VERS_1.0' /usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/../../../../x86_64-pc-linux-gnu/bin/ld: setup_libhugetlbfs: undefined version: VERS_1.0 /usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/../../../../x86_64-pc-linux-gnu/bin/ld: __setup_hugepage: undefined version: VERS_1.0 /usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/../../../../x86_64-pc-linux-gnu/bin/ld: setup_libhugetlbfs: undefined version: VERS_1.0 /usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/../../../../x86_64-pc-linux-gnu/bin/ld: __setup_hugepage: undefined version: VERS_1.0 /usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/../../../../x86_64-pc-linux-gnu/bin/ld: hugetlbfs_unlinked_fd: undefined version: VERS_1.0 /usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/../../../../x86_64-pc-linux-gnu/bin/ld: hugetlbfs_find_path: undefined version: VERS_1.0 /usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/../../../../x86_64-pc-linux-gnu/bin/ld: hugetlbfs_test_path: undefined version: VERS_1.0 /usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/../../../../x86_64-pc-linux-gnu/bin/ld: gethugepagesize: undefined version: VERS_1.0 /usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/../../../../x86_64-pc-linux-gnu/bin/ld: failed to set dynamic section sizes: Bad value collect2: ld returned 1 exit status make[3]: *** [obj32/libhugetlbfs_open64.so] Error 1 make[2]: *** [default] Error 2 make[1]: *** [libhugetlbfs] Error 2 make[1]: Leaving directory `/var/tmp/portage/dev-lang/open64-5.0/work/build/osprey/targdir_lib' make: *** [lib] Error 2 make: Leaving directory `/var/tmp/portage/dev-lang/open64-5.0/work/build'
Removed from tree