I've tested and confirmed that gromacs (and it's dep fftw) compile fine on ppc64 - please add to ~ppc64 for testing Reproducible: Always Steps to Reproduce:
this works for you? it breaks for me horribly: [...] ./../include/ppc_altivec.h:3551: error: parse error before "float" ../../include/ppc_altivec.h:3552: error: `v7' undeclared (first use in this function) ../../include/ppc_altivec.h:3552: error: parse error before "float" ../../include/ppc_altivec.h:3553: error: `v8' undeclared (first use in this function) ../../include/ppc_altivec.h:3553: error: parse error before "float" ../../include/ppc_altivec.h:3554: error: `v9' undeclared (first use in this function) ../../include/ppc_altivec.h:3554: error: parse error before "float" mpicc: No such file or directory make[3]: *** [fnbf.lo] Error 1 make[3]: *** Waiting for unfinished jobs.... mpicc -DHAVE_CONFIG_H -I. -I. -I../../src -I../../include -DGMXLIBDIR=\"/usr/share/gromacs-3.2.1/top\" -I/usr/include/libxml2 -O2 -g -I/usr/include/libxml2 -MT macros.lo -MD -MP -MF .deps/macros.Tpo -c macros.c -o macros.o make[3]: Leaving directory `/var/tmp/portage/gromacs-3.2.1/work/gromacs-3.2.1/src/gmxlib' make[2]: *** [all-recursive] Error 1 make[2]: Leaving directory `/var/tmp/portage/gromacs-3.2.1/work/gromacs-3.2.1/src' make[1]: *** [all] Error 2 make[1]: Leaving directory `/var/tmp/portage/gromacs-3.2.1/work/gromacs-3.2.1/src' make: *** [all-recursive] Error 1 !!! ERROR: sci-chemistry/gromacs-3.2.1 failed. !!! Function src_compile, Line 54, Exitcode 2 !!! (no error message) !!! If you need support, post the topmost build error, NOT this status message. Can you please provide emerge --info?
Portage 2.0.51.19 (default-linux/ppc64/2005.0, gcc-3.4.3, glibc-2.3.4.20041102-r 1, 2.6.11-gentoo-r6 ppc64) ================================================================= System uname: 2.6.11-gentoo-r6 ppc64 POWER5 (gr) Gentoo Base System version 1.4.16 Python: dev-lang/python-2.3.4-r1 [2.3.4 (#1, Apr 9 2005, 06:30:42) ] ccache version 2.3 [enabled] dev-lang/python: 2.3.4-r1 sys-devel/autoconf: 2.59-r6, 2.13 sys-devel/automake: 1.7.9-r1, 1.8.5-r3, 1.5, 1.4_p6, 1.6.3, 1.9.4 sys-devel/binutils: 2.15.90.0.3-r4 sys-devel/libtool: 1.5.10-r4 virtual/os-headers: 2.6.8.1-r2 ACCEPT_KEYWORDS="ppc64" AUTOCLEAN="yes" CFLAGS="-O2 -mcpu=power5 -mtune=power5 -pipe -fomit-frame-pointer" CHOST="powerpc64-unknown-linux-gnu" CONFIG_PROTECT="/etc /usr/kde/2/share/config /usr/kde/3/share/config /usr/lib/X1 1/xkb /usr/share/config /var/qmail/control" CONFIG_PROTECT_MASK="/etc/gconf /etc/terminfo /etc/env.d" CXXFLAGS="-O2 -mcpu=power5 -mtune=power5 -pipe -fomit-frame-pointer" DISTDIR="/usr/portage/distfiles" FEATURES="autoaddcvs autoconfig ccache distlocks sandbox sfperms strict" GENTOO_MIRRORS="http://mirror.datapipe.net/gentoo/" MAKEOPTS="-j6" PKGDIR="/usr/portage/packages" PORTAGE_TMPDIR="/var/tmp" PORTDIR="/usr/portage" PORTDIR_OVERLAY="/usr/local/portage" SYNC="rsync://rsync.gentoo.org/gentoo-portage" USE="X berkdb bitmap-fonts ccache cdr cups fortran gdbm gif gpm gtk ibm java jpe g ncurses nls nptl opengl pam perl png ppc64 python readline server slang ssl tc pd tiff truetype truetype-fonts type1-fonts unicode xml2 zlib" Unset: ASFLAGS, CBUILD, CTARGET, LANG, LC_ALL, LDFLAGS, LINGUAS
Works fine here on 3 different systems
This just does not compile on my G5. if I run configure with --disable-ppc-altivec it builds fine. I'm clueless :-/
If it makes you feel any better, I'm seeing a similar problem. The machines that Omkhar has been building on do not have altivec based procs. It build fine with or without altivec on my OpenPower boxes. I was testing a patch for the ebuild (will also attach) that enables the use of the altivec USE flag and decided to test on a JS20 blade, which does have altivec. And guess, what? same failure. I will check the usual candidates like make.profiles and see what comes of it. As for now, beer time ;)
Created attachment 57631 [details, diff] enables USE for altivec This allows you to turn off altivec (since the config assumes +altivec)
Ok last thing for tonight. With the patch applied, I did a : USE="-altivec" emerge gromacs and that worked. My make profile is as follows: /etc/make.profile -> ../usr/portage/profiles/default-linux/ppc64/2005.0 as with the non-altivec systems. CFLAGS="-O2 -pipe -mtune=970 -mcpu=970" USE="unicode pam berkdb bitmap-fonts gif jpeg nls ncurses perl png ppc64 python readline ssl tcpd truetype truetype-fonts type1-fonts zlib altivec fortran mysql" So perhaps some altivec voodoo foo is involved?
Created attachment 57692 [details, diff] gromacs-altivec.patch Same thing as ranger updated the bug with - just uses "use_with" per proper ebuild joo-joo
Created attachment 57694 [details, diff] gromacs-altivec.patch Sorry I'm just removing some digest g0rp
Created attachment 57757 [details, diff] gromacs-cleanup.patch OK there are some other things that should be cleaned up a little - here is a patch for a better one.
-altivec allows this to compile okey dokey Investigating why +altivec fails..
new gromacs-3.2.1-r1 in portage should work with ppc64 altivec
Well it breaks on amd64... [ebuild U ] sci-chemistry/gromacs-3.2.1-r1 [3.2.1] (-altivec) +mpi +xml2 0 kB * Applying gromacs-ppc64-altivec.patch ... * Failed Patch: gromacs-ppc64-altivec.patch ! * ( /usr/portage/sci-chemistry/gromacs/files/gromacs-ppc64-altivec.patch ) * * Include in your bugreport the contents of: * * /var/tmp/portage/gromacs-3.2.1-r1/temp/gromacs-ppc64-altivec.patch-12120.out !!! ERROR: sci-chemistry/gromacs-3.2.1-r1 failed. !!! Function epatch, Line 359, Exitcode 0 !!! Failed Patch: gromacs-ppc64-altivec.patch! !!! If you need support, post the topmost build error, NOT this status message. ***** gromacs-ppc64-altivec.patch ***** ======================================= PATCH COMMAND: patch -p0 -g0 --no-backup-if-mismatch < /usr/portage/sci-chemistry/gromacs/files/gromacs-ppc64-altivec.patch ======================================= patching file gromacs-3.2.1/include/ppc_altivec.h Hunk #1 FAILED at 33. 1 out of 1 hunk FAILED -- saving rejects to file gromacs-3.2.1/include/ppc_altivec.h.rej ======================================= PATCH COMMAND: patch -p1 -g0 --no-backup-if-mismatch < /usr/portage/sci-chemistry/gromacs/files/gromacs-ppc64-altivec.patch ======================================= can't find file to patch at input line 4 Perhaps you used the wrong -p or --strip option? The text leading up to this was: -------------------------- |diff -Naur gromacs-3.2.1/include/ppc_altivec.h gromacs-3.2.1-new/include/ppc_altivec.h |--- gromacs-3.2.1/include/ppc_altivec.h 2003-11-18 02:41:58.000000000 -0600 |+++ gromacs-3.2.1-new/include/ppc_altivec.h 2005-08-04 13:42:05.000000000 -0500 -------------------------- No file to patch. Skipping patch. 1 out of 1 hunk ignored ======================================= PATCH COMMAND: patch -p2 -g0 --no-backup-if-mismatch < /usr/portage/sci-chemistry/gromacs/files/gromacs-ppc64-altivec.patch ======================================= can't find file to patch at input line 4 Perhaps you used the wrong -p or --strip option? The text leading up to this was: -------------------------- |diff -Naur gromacs-3.2.1/include/ppc_altivec.h gromacs-3.2.1-new/include/ppc_altivec.h |--- gromacs-3.2.1/include/ppc_altivec.h 2003-11-18 02:41:58.000000000 -0600 |+++ gromacs-3.2.1-new/include/ppc_altivec.h 2005-08-04 13:42:05.000000000 -0500 -------------------------- No file to patch. Skipping patch. 1 out of 1 hunk ignored ======================================= PATCH COMMAND: patch -p3 -g0 --no-backup-if-mismatch < /usr/portage/sci-chemistry/gromacs/files/gromacs-ppc64-altivec.patch ======================================= missing header for unified diff at line 4 of patch can't find file to patch at input line 4 Perhaps you used the wrong -p or --strip option? The text leading up to this was: -------------------------- |diff -Naur gromacs-3.2.1/include/ppc_altivec.h gromacs-3.2.1-new/include/ppc_altivec.h |--- gromacs-3.2.1/include/ppc_altivec.h 2003-11-18 02:41:58.000000000 -0600 |+++ gromacs-3.2.1-new/include/ppc_altivec.h 2005-08-04 13:42:05.000000000 -0500 -------------------------- No file to patch. Skipping patch. 1 out of 1 hunk ignored ======================================= PATCH COMMAND: patch -p4 -g0 --no-backup-if-mismatch < /usr/portage/sci-chemistry/gromacs/files/gromacs-ppc64-altivec.patch ======================================= missing header for unified diff at line 4 of patch can't find file to patch at input line 4 Perhaps you used the wrong -p or --strip option? The text leading up to this was: -------------------------- |diff -Naur gromacs-3.2.1/include/ppc_altivec.h gromacs-3.2.1-new/include/ppc_altivec.h |--- gromacs-3.2.1/include/ppc_altivec.h 2003-11-18 02:41:58.000000000 -0600 |+++ gromacs-3.2.1-new/include/ppc_altivec.h 2005-08-04 13:42:05.000000000 -0500 -------------------------- No file to patch. Skipping patch. 1 out of 1 hunk ignored
$ emerge info Portage 2.0.51.22-r2 (default-linux/amd64/2005.0, gcc-3.4.3, glibc-2.3.5-r1, 2.6.12-gentoo-r6 x86_64) ================================================================= System uname: 2.6.12-gentoo-r6 x86_64 AMD Opteron(tm) Processor 246 Gentoo Base System version 1.6.13 dev-lang/python: 2.3.5 sys-apps/sandbox: 1.2.11 sys-devel/autoconf: 2.13, 2.59-r6 sys-devel/automake: 1.4_p6, 1.5, 1.6.3, 1.7.9-r1, 1.8.5-r3, 1.9.5 sys-devel/binutils: 2.15.92.0.2-r10 sys-devel/libtool: 1.5.18-r1 virtual/os-headers: 2.6.11-r2 ACCEPT_KEYWORDS="amd64" AUTOCLEAN="yes" CBUILD="x86_64-pc-linux-gnu" CFLAGS="-march=opteron -mtune=opteron -Os -pipe" CHOST="x86_64-pc-linux-gnu" CONFIG_PROTECT="/etc /usr/kde/2/share/config /usr/kde/3.4/env /usr/kde/3.4/share/config /usr/kde/3.4/shutdown /usr/kde/3/share/config /usr/lib/X11/xkb /usr/lib64/mozilldefaults/pref /usr/share/config /var/qmail/control" CONFIG_PROTECT_MASK="/etc/gconf /etc/splash /etc/terminfo /etc/env.d" CXXFLAGS="-march=opteron -mtune=opteron -Os -pipe" DISTDIR="/usr/portage/distfiles" FEATURES="autoconfig distlocks sandbox sfperms strict" GENTOO_MIRRORS="http://gentoo.ccccom.com http://mirrors.tds.net/gentoo ftp://gentoo.ccccom.com http://gentoo.osuosl.org http://www.ibiblio.org/pub/Linux/distributions/gtoo" MAKEOPTS="-j3" PKGDIR="/usr/portage/packages" PORTAGE_TMPDIR="/var/tmp" PORTDIR="/usr/portage" PORTDIR_OVERLAY="/usr/local/portage" SYNC="rsync://rsync.namerica.gentoo.org/gentoo-portage" USE="amd64 3xnowex X a52 aac alsa apache2 avi berkdb bitmap-fonts browserplugin cdr crypt cups curl directfb dvd dvdr dvdread encode esd extensions f77 fbcon ffmpeg fftfirefox flac foomaticdb fortran gb gd gdbm gif gnome gnutls gpm gtk gtk2 gtkhtml hal imagemagick imlib inkjar ithreads java jce jpeg jpg libgda lirc live lzw lzw-tiff m maildir mjpeg motif mozcalendar mozilla moznocompose moznoirc moznomail mozsvg mp3 mpeg mpi mpqc mysql ncurses netcdf network nls no_wxgtk1 nptl nvidia ogg oggvorbis ongl pam pdflib perl plotutils plugin png pnp ppds python quicktime readline rtc sasl sdl spell ssl svg tcltk tcpd threads tiff toolbar truetype truetype-fonts type1-fon usb userlocales v4l vorbis wmf xinetd xml xml2 xpm xprint xv xvid zlib userland_GNU kernel_linux elibc_glibc" Unset: ASFLAGS, CTARGET, LANG, LC_ALL, LDFLAGS, LINGUAS
Thats really wierd, the patch works fine even on x86 systems over here
ranger confirms an issue on his system, looks like possible corruption in the patch
omkhar: you have this line in the patch: static char *SRCID_ppc_altivec_h = "$Id: gromacs-ppc64-altivec.patch,v 1.1 2005/08/04 19:05:26 omkhar Exp $"; every time you commit it to cvs, cvs will change $Id. You have to add this file like this: cvs add -ko gromacs-ppc64-altivec.patch I have had exactly the same problem commiting a phpsysinfo patch ;-)
I'm getting the same altivec patch error, I added myself to cc keep me posted.
corsair was right, I've checked the patch back in with -ko, also changed up the ebuild so the patch will only apply when ppc64 && altivec. Now we wait for the patch to mill out into portage
Everything looks proper in portage - test away
OK everyone seems happy for now
stable. closing