In fixing a large file bug (silently fixed upstream) I noticed that they moved netcdf 3.5.x and all older versions to an old/ subdir. So if not for the fact old sources are mirrored, the older ebuilds would've borked. The upstream source naming is slightly hinky, but at least they've clued up and added a .tar.gz in addition to the .tar.Z files (but only for 3.6.x). Talk about bleeding edge... Woohoo!!! Since 3.6.1 is already in beta, and our current 3.6.0 ebuild is ~everything, I think it might be a good idea to stabilize on the 3.6.0-r1 I'm about to commit (since I'm forcing the above bug fix and switch to the .tar.gz by removing the current 3.6.0 ebuild :) It seemed like a good idea at the time...
Can mips and hppa please at least stabilize on 3.5.1 and then everybody move to 3.6.0-r1? Thanks you...
Stable on amd64 - shouldn't you CC the other architectures if you want them to act on this bug?
Stable on hppa
Only mips and ia64 still need to stabilise. ;)
3.6.0-r1 stable on ia64
Only mips still need to stabilise.
Maybe we should just close this one? I'm about to open one for 3.6.1 (older builds of netcdf seem to cause TEXTRELs in other packages).
Okay, I've hacked at the fortran glitches, and barring any new issues (brain-dead configure most likely) please test and stablize this version (everybody but mips made it to 3.6.0-r1 - yay!). The new beta is already out, so there should be a new upstream release in the not-too-distant future. Thanks...
ppc64 stable
Stable on ppc.
Works and compiles nice in x86, should be marked as stable.
test files for the program would be nice in the future. Although finding a few wasn't that bad. x86 done though >^.^<
fails to compile (install actually) here: make[2]: Entering directory `/tmp/PORTAGE/var/portage/netcdf-3.6.1/work/netcdf-3.6.1/src/cxx' ar cru libnetcdf_c++.a netcdf.o ncvalues.o i686-pc-linux-gnu-ranlib libnetcdf_c++.a /bin/install -c libnetcdf_c++.a /tmp/PORTAGE/var/portage/netcdf-3.6.1/image//usr/lib/libnetcdf_c++.a /bin/install -c netcdfcpp.h /tmp/PORTAGE/var/portage/netcdf-3.6.1/image//usr/include/netcdfcpp.h /bin/install -c ncvalues.h /tmp/PORTAGE/var/portage/netcdf-3.6.1/image//usr/include/ncvalues.h /bin/install -c netcdf.hh /tmp/PORTAGE/var/portage/netcdf-3.6.1/image//usr/include/netcdf.hh make[2]: Leaving directory `/tmp/PORTAGE/var/portage/netcdf-3.6.1/work/netcdf-3.6.1/src/cxx' Returning to directory /tmp/PORTAGE/var/portage/netcdf-3.6.1/work/netcdf-3.6.1/src make[1]: Leaving directory `/tmp/PORTAGE/var/portage/netcdf-3.6.1/work/netcdf-3.6.1/src' mv: Aufruf von stat f
fails to compile (install actually) here: make[2]: Entering directory `/tmp/PORTAGE/var/portage/netcdf-3.6.1/work/netcdf-3.6.1/src/cxx' ar cru libnetcdf_c++.a netcdf.o ncvalues.o i686-pc-linux-gnu-ranlib libnetcdf_c++.a /bin/install -c libnetcdf_c++.a /tmp/PORTAGE/var/portage/netcdf-3.6.1/image//usr/lib/libnetcdf_c++.a /bin/install -c netcdfcpp.h /tmp/PORTAGE/var/portage/netcdf-3.6.1/image//usr/include/netcdfcpp.h /bin/install -c ncvalues.h /tmp/PORTAGE/var/portage/netcdf-3.6.1/image//usr/include/ncvalues.h /bin/install -c netcdf.hh /tmp/PORTAGE/var/portage/netcdf-3.6.1/image//usr/include/netcdf.hh make[2]: Leaving directory `/tmp/PORTAGE/var/portage/netcdf-3.6.1/work/netcdf-3.6.1/src/cxx' Returning to directory /tmp/PORTAGE/var/portage/netcdf-3.6.1/work/netcdf-3.6.1/src make[1]: Leaving directory `/tmp/PORTAGE/var/portage/netcdf-3.6.1/work/netcdf-3.6.1/src' mv: Aufruf von stat für »/tmp/PORTAGE/var/portage/netcdf-3.6.1/image/usr/share/man/man3/netcdf.3f90« nicht möglich: Datei oder Verzeichnis nicht gefunden !!! ERROR: sci-libs/netcdf-3.6.1 failed. Call stack: ebuild.sh, line 1545: Called dyn_install ebuild.sh, line 1019: Called src_install netcdf-3.6.1.ebuild, line 73: Called die !!! Failed to move man page !!! If you need support, post the topmost build error, and the call stack if relevant.
Arg, another fortran error... Can you please post your arch, package USE flags, gcc version and use flags, any other fortran compilers installed? Thanks...
(In reply to comment #12) > test files for the program would be nice in the future. Although finding a few > wasn't that bad. FEATURES=test emerge =netcdf-3.6.1 will do for this round, I guess. > x86 done though >^.^< HPPA done.
compile problem on x86: make[2]: Entering directory `/var/tmp/portage/netcdf-3.6.1/work/netcdf-3.6.1/src/fortran' i686-pc-linux-gnu-gcc -c -march=pentium4 -O2 -pipe -fomit-frame-pointer -I.. -I../libsrc fort-attio.c In file included from ncfortran.h:13, from fort-attio.c:6: cfortran.h:138:3: #error "cfortran.h: Can't find your environment among: - MIPS cc and f77 2.0. (e.g. Silicon Graphics, DECstations, ...) - IBM AIX XL C and FORTRAN Compiler/6000 Version 01.01.0000.0000 - VAX VMS CC 3.1 and FORTRAN 5.4. - Alpha VMS DEC C 1.3 and DEC FORTRAN 6.0. - Alpha OSF DEC C and DEC Fortran for OSF/1 AXP Version 1.2 - Apollo DomainOS 10.2 (sys5.3) with f77 10.7 and cc 6.7. - CRAY - NEC SX-4 SUPER-UX - CONVEX - Sun - PowerStation Fortran with Visual C++ - HP9000s300/s700/s800 Latest test with: HP-UX A.08.07 A 9000/730 - LynxOS: cc or gcc with f2c. - VAXUltrix: vcc,cc or gcc with f2c. gcc or cc with f77. - f77 with vcc works; but missing link magic for f77 I/O. - NO fort. None of gcc, cc or vcc generate required names. - f2c : Use #define f2cFortran, or cc -Df2cFortran - NAG f90: Use #define NAGf90Fortran, or cc -DNAGf90Fortran - Absoft UNIX F77: Use #define AbsoftUNIXFortran or cc -DAbsoftUNIXFortran - Absoft Pro Fortran: Use #define AbsoftProFortran - Portland Group Fortran: Use #define pgiFortran - PathScale Fortran: Use #define PATHSCALE_COMPILER" make[2]: *** [fort-attio.o] Fout 1 make[2]: Leaving directory `/var/tmp/portage/netcdf-3.6.1/work/netcdf-3.6.1/src/fortran' make[1]: *** [subdir_target] Fout 1 make[1]: Leaving directory `/var/tmp/portage/netcdf-3.6.1/work/netcdf-3.6.1/src' make: *** [fortran/all] Fout 2 !!! ERROR: sci-libs/netcdf-3.6.1 failed. Call stack: ebuild.sh, line 1539: Called dyn_compile ebuild.sh, line 939: Called src_compile netcdf-3.6.1.ebuild, line 54: Called die !!! make failed !!! If you need support, post the topmost build error, and the call stack if relevant.
Comment 13 and 16, try the updated ebuild. Comment 16: Something must be borked on your system, although I just updated the Fortran support in the ebuild (but I can't control what configure detects very well without explicit options). If you still have trouble, try syncing and maybe rebuilding gcc with fortran support (or else build netcdf with USE="-fortran"). If you have some other fortran compiler installed, then it probably needs to be in the standard path for portage to find it. The updated ebuild should detect ifc, which is the only other one currently in portage.
ncdump doesn't work when specifying no or an invalid argument, but marked it stable anyway on amd64
I get the following error message on amd64: >>> Emerging (1 of 1) sci-libs/netcdf-3.6.1 to / >>> checking ebuild checksums ;-) >>> checking auxfile checksums ;-) >>> checking miscfile checksums ;-) >>> checking netcdf-3.6.1.tar.gz ;-) * You need one of these Fortran Compilers: ifc * Installed are: ifort * Configuring for Intel Fortran... * You need one of these Fortran Compilers: g77 * Installed are: g77 * Current Fortran Compiler is set to ifort, which is not usable with this package ! !!! ERROR: sci-libs/netcdf-3.6.1 failed. Call stack: ebuild.sh, line 1555: Called dyn_setup ebuild.sh, line 668: Called pkg_setup netcdf-3.6.1.ebuild, line 38: Called need_fortran 'g77' fortran.eclass, line 148: Called die !!! Wrong Fortran Compiler ! !!! If you need support, post the topmost build error, and the call stack if relevant. What is wrong with `ifort'? Isn't `ifc' name is deprecated? By the way, `netcdf-3.6.0-r1' can be emerged without error.
Everything looks good here on SPARC and all tests pass, so you get the gold star of the day! :)
Okay, please try the new and improved (simplified) ebuild and tell me how it handles the ifc/ifort thing. Thanks in advance...
problem of comment #19 is solved. netcdf-3.6.1 emerges successfully on my amd64 platform.
I noticed the following problem after I had posted comment #22. Actually `ifort' is not detected, and Fortran-90 interface is not built. Below is a part of configure process: configure: netCDF 3.6.1 checking build system type... x86_64-pc-linux-gnu checking host system type... x86_64-pc-linux-gnu checking whether configure should try to set compiler flags... no checking whether netCDF is to be built in 64-bit mode... no checking where to put large files... . checking for top-level source-directory... /var/tmp/portage/netcdf-3.6.1/work/netcdf-3.6.1/src checking for x86_64-pc-linux-gnu-pathcc... no checking for x86_64-pc-linux-gnu-xlc... no checking for x86_64-pc-linux-gnu-icc... no checking for x86_64-pc-linux-gnu-cc... no checking for x86_64-pc-linux-gnu-c89... no checking for x86_64-pc-linux-gnu-acc... no checking for x86_64-pc-linux-gnu-gcc... x86_64-pc-linux-gnu-gcc checking for C compiler default output file name... a.out checking whether the C compiler works... yes checking whether we are cross compiling... no checking for suffix of executables... checking for suffix of object files... o checking whether we are using the GNU C compiler... yes checking whether x86_64-pc-linux-gnu-gcc accepts -g... yes checking for x86_64-pc-linux-gnu-gcc option to accept ANSI C... none needed checking for x86_64-pc-linux-gnu-pathCC... no checking for x86_64-pc-linux-gnu-cl... no checking for x86_64-pc-linux-gnu-KCC... no checking for x86_64-pc-linux-gnu-CC... no checking for x86_64-pc-linux-gnu-icpc... no checking for x86_64-pc-linux-gnu-cxx... no checking for x86_64-pc-linux-gnu-cc++... no checking for x86_64-pc-linux-gnu-xlC... no checking for x86_64-pc-linux-gnu-aCC... no checking for x86_64-pc-linux-gnu-c++... x86_64-pc-linux-gnu-c++ checking whether we are using the GNU C++ compiler... yes checking whether x86_64-pc-linux-gnu-c++ accepts -g... yes checking C++ compiler "x86_64-pc-linux-gnu-c++"... works checking for x86_64-pc-linux-gnu-pathf90... no checking for x86_64-pc-linux-gnu-xlf... no checking for x86_64-pc-linux-gnu-fort... no checking for x86_64-pc-linux-gnu-xlf95... no checking for x86_64-pc-linux-gnu-ifort... no checking for x86_64-pc-linux-gnu-ifc... no checking for x86_64-pc-linux-gnu-efc... no checking for x86_64-pc-linux-gnu-pgf95... no checking for x86_64-pc-linux-gnu-lf95... no checking for x86_64-pc-linux-gnu-g95... no checking for x86_64-pc-linux-gnu-f95... no checking for x86_64-pc-linux-gnu-gfortran... no checking for x86_64-pc-linux-gnu-frt... no checking for x86_64-pc-linux-gnu-pgf77... no checking for x86_64-pc-linux-gnu-f77... no checking for x86_64-pc-linux-gnu-fort77... no checking for x86_64-pc-linux-gnu-fl32... no checking for x86_64-pc-linux-gnu-af77... no checking for x86_64-pc-linux-gnu-f90... no checking for x86_64-pc-linux-gnu-xlf90... no checking for x86_64-pc-linux-gnu-pgf90... no checking for x86_64-pc-linux-gnu-epcf90... no checking for x86_64-pc-linux-gnu-g77... x86_64-pc-linux-gnu-g77 checking whether we are using the GNU Fortran compiler... yes checking whether x86_64-pc-linux-gnu-g77 accepts -g... yes checking for x86_64-pc-linux-gnu-x86_64-pc-linux-gnu-g77... (cached) x86_64-pc-linux-gnu-g77 checking whether we are using the GNU Fortran compiler... (cached) yes checking whether x86_64-pc-linux-gnu-g77 accepts -g... (cached) yes checking "x86_64-pc-linux-gnu-g77" as Fortran-90 compiler... failed to build test program checking for xlf90... no checking for f95... no checking for f90... no checking for pgf90... no checking for g95... no checking for gfortran... no configure: WARNING: "Could not find working Fortran-90 compiler" configure: WARNING: "The Fortran-90 interface will not be built"
*** Bug 143249 has been marked as a duplicate of this bug. ***
mips-i-fied
So what's the final word on ifort? The eclass seems like it should handle it, and it also appears to support g77 as the fallback (except for your comment above). If it still doesn't work, I'll install the Intel stuff again and test a bit more.
(In reply to comment #26) > So what's the final word on ifort? The eclass seems like it should handle it, > and it also appears to support g77 as the fallback (except for your comment > above). If it still doesn't work, I'll install the Intel stuff again and test > a bit more. You incorrectly quoted your arguments to need_fortran(), as I said on another bug.
> You incorrectly quoted your arguments to need_fortran(), as I said on another > bug. No. As I said in the mentioned bug, it absoutely makes no difference whether the arguments are all in $1 or $@. $@ simply expands to "$1 $2 $3 ..." I testet it: original version: ben netcdf # USE="debug" ebuild netcdf-3.6.1.ebuild unpack >>> checking ebuild checksums ;-) >>> checking auxfile checksums ;-) >>> checking miscfile checksums ;-) >>> checking netcdf-3.6.1.tar.gz ;-) ifort g77 * You need one of these Fortran Compilers: gfortran ifc g77 * Installed are: ifort g77 MY_FORTRAN: "" MY_FORTRAN: "g77" FORTRANC: "g77" --------------------- modified version without quoatation marks: ben netcdf # USE="debug" ebuild netcdf-3.6.1.ebuild unpack >>> checking ebuild checksums ;-) >>> checking auxfile checksums ;-) >>> checking miscfile checksums ;-) >>> checking netcdf-3.6.1.tar.gz ;-) ifort g77 * You need one of these Fortran Compilers: gfortran ifc g77 * Installed are: ifort g77 MY_FORTRAN: "" MY_FORTRAN: "g77" FORTRANC: "g77"
My bad, it's different with "$@" than $@
If you want to use the intel compiler you have to set F77="ifort": ben netcdf # F77="ifort" USE="debug" ebuild netcdf-3.6.1.ebuild compile >>> checking ebuild checksums ;-) >>> checking auxfile checksums ;-) >>> checking miscfile checksums ;-) >>> checking netcdf-3.6.1.tar.gz ;-) ifort g77 * You need one of these Fortran Compilers: gfortran ifc g77 * Installed are: ifort g77 MY_FORTRAN: "ifort" MY_FORTRAN: "ifort" FORTRANC: "ifort" >>> Unpacking source... >>> Unpacking netcdf-3.6.1.tar.gz to /var/tmp/portage/netcdf-3.6.1/work * Applying fPIC.patch ... [ ok ] >>> Source unpacked. >>> Compiling source in /var/tmp/portage/netcdf-3.6.1/work/netcdf-3.6.1/src ... * econf: updating netcdf-3.6.1/src/config.guess with /usr/share/gnuconfig/config.guess * econf: updating netcdf-3.6.1/src/config.sub with /usr/share/gnuconfig/config.sub ./configure --prefix=/usr --host=i686-pc-linux-gnu --mandir=/usr/share/man --infodir=/usr/share/info --datadir=/usr/share --sysconfdir=/etc --localstatedir=/var/lib CPPFLAGS=-Df2cFortran --build=i686-pc-linux-gnu configure: netCDF 3.6.1 checking build system type... i686-pc-linux-gnu checking host system type... i686-pc-linux-gnu checking whether configure should try to set compiler flags... no checking whether netCDF is to be built in 64-bit mode... no checking where to put large files... . checking for top-level source-directory... /var/tmp/portage/netcdf-3.6.1/work/netcdf-3.6.1/src checking for i686-pc-linux-gnu-pathcc... no checking for i686-pc-linux-gnu-xlc... no checking for i686-pc-linux-gnu-icc... no checking for i686-pc-linux-gnu-cc... no checking for i686-pc-linux-gnu-c89... no checking for i686-pc-linux-gnu-acc... no checking for i686-pc-linux-gnu-gcc... i686-pc-linux-gnu-gcc checking for C compiler default output file name... a.out checking whether the C compiler works... yes checking whether we are cross compiling... no checking for suffix of executables... checking for suffix of object files... o checking whether we are using the GNU C compiler... yes checking whether i686-pc-linux-gnu-gcc accepts -g... yes checking for i686-pc-linux-gnu-gcc option to accept ANSI C... none needed checking for i686-pc-linux-gnu-pathCC... no checking for i686-pc-linux-gnu-cl... no checking for i686-pc-linux-gnu-KCC... no checking for i686-pc-linux-gnu-CC... no checking for i686-pc-linux-gnu-icpc... no checking for i686-pc-linux-gnu-cxx... no checking for i686-pc-linux-gnu-cc++... no checking for i686-pc-linux-gnu-xlC... no checking for i686-pc-linux-gnu-aCC... no checking for i686-pc-linux-gnu-c++... i686-pc-linux-gnu-c++ checking whether we are using the GNU C++ compiler... yes checking whether i686-pc-linux-gnu-c++ accepts -g... yes checking C++ compiler "i686-pc-linux-gnu-c++"... works checking for i686-pc-linux-gnu-ifort... ifort checking whether we are using the GNU Fortran compiler... no checking whether ifort accepts -g... yes checking "ifort" as Fortran-90 compiler... works configure: checking for m4 preprocessor... checking for m4... m4 checking m4 flags... -B10000 checking how to make dependencies... false checking for special C compiler options needed for large files... no checking for _FILE_OFFSET_BITS value needed for large files... 64 checking for _LARGE_FILES value needed for large files... no configure: checking for ar utility... checking for ar... ar checking ar flags... cru configure: checking for nm utility... checking for nm... nm checking nm flags... checking for i686-pc-linux-gnu-ranlib... i686-pc-linux-gnu-ranlib checking for a BSD-compatible install... /bin/install -c checking CPPFLAGS... -Df2cFortran checking CC CFLAGS... i686-pc-linux-gnu-gcc -march=athlon-xp -O3 -pipe checking type i686-pc-linux-gnu-gcc... i686-pc-linux-gnu-gcc is /usr/lib/ccache/bin/i686-pc-linux-gnu-gcc checking CXX... i686-pc-linux-gnu-c++ checking CXXFLAGS... -march=athlon-xp -O3 -pipe checking type i686-pc-linux-gnu-c++... i686-pc-linux-gnu-c++ is /usr/lib/ccache/bin/i686-pc-linux-gnu-c++ checking FC... ifort checking FFLAGS... checking type ifort... ifort is /opt/intel/fortran90/bin/ifort checking F90... ifort checking F90FLAGS... checking type ifort... ifort is /opt/intel/fortran90/bin/ifort checking AR... ar checking ARFLAGS... cru checking type ar... ar is /usr/bin/ar checking NM... nm checking NMFLAGS... checking type nm... nm is /usr/bin/nm checking how to run the C preprocessor... i686-pc-linux-gnu-gcc -E checking user-defined Fortran-77 compiler "ifort"... works checking for Fortran .F compiler... checking if Fortran-77 compiler handles *.F files... yes checking for C-equivalent to Fortran routine "SUB"... sub_ checking for Fortran "byte"... yes checking for Fortran "integer*2"... yes checking if Fortran "byte" is C "signed char"... yes checking if Fortran "byte" is C "short"... no checking if Fortran "byte" is C "int"... no checking if Fortran "byte" is C "long"... no checking if Fortran "integer*2" is C "short"... yes checking if Fortran "integer*2" is C "int"... no checking if Fortran "integer*2" is C "long"... no checking if Fortran "integer" is C "int"... yes checking if Fortran "real" is C "float"... yes checking if Fortran "doubleprecision" is C "double"... yes checking for Fortran-equivalent to netCDF "byte"... byte checking for Fortran-equivalent to netCDF "short"... integer*2 ... --------------------- Using FC instead of F77 doesn't work: ben netcdf # FC="ifort" USE="debug" ebuild netcdf-3.6.1.ebuild unpack >>> checking ebuild checksums ;-) >>> checking auxfile checksums ;-) >>> checking miscfile checksums ;-) >>> checking netcdf-3.6.1.tar.gz ;-) ifort g77 * You need one of these Fortran Compilers: gfortran ifc g77 * Installed are: ifort g77 basename: missing operand Try `basename --help' for more information. MY_FORTRAN: "" MY_FORTRAN: "g77" FORTRANC: "g77" So I have to set the F77 Variable for switching on the Fortran90 compiler?
alpha stable.
All stable, closing.