New Ticket     Tickets     Wiki     Browse Source     Timeline     Roadmap     Ticket Reports     Search

Ticket #24582 (closed defect: fixed)

Opened 5 years ago

Last modified 4 years ago

nco compile fails

Reported by: ohtinsel@… Owned by: takeshi@…
Priority: Normal Milestone:
Component: ports Version: 1.8.2
Keywords: Cc: mikejmills@…
Port: nco

Description (last modified by jmr@…) (diff)

I'm having problems installing NCO. The basic issue is some sort of duplicate symbol problem with netcdf4:

ld: warning: directory '/lib' following -L not found
ld: duplicate symbol _nc_get_vara_string in /opt/local/lib/netcdf-devel/lib/libnetcdf.a(nc4var.o) and ./.libs/libnco.a(nco_netcdf.o)
collect2: ld returned 1 exit status

I've successfully installed other (non macport) software using the netcdf-devel library so that seems fine. I have not installed the basic netcdf port.

I have attached the debug of the build.

Mike

Attachments

nco_debug.txt (55.4 KB) - added by ohtinsel@… 5 years ago.

Change History

Changed 5 years ago by ohtinsel@…

comment:1 Changed 5 years ago by jmr@…

  • Keywords nco removed
  • Owner changed from macports-tickets@… to takeshi@…
  • Description modified (diff)

Please remember to cc the maintainer.

comment:2 Changed 4 years ago by mikejmills@…

  • Cc mikejmills@… added

Cc Me!

comment:3 Changed 4 years ago by mikejmills@…

I have been struggling with this same problem today. I have managed to install NCO with MacPorts on an identical Mac Pro at work, but not at home. I have also just installed successfully on my MacBook Pro. I noticed someone else had a similar problem, reported in Ticket #23645. I tried the commands suggested there, but no luck.

comment:4 Changed 4 years ago by takeshi@…

The help on #23645 is out of date. netcdf port is not required for nco; to avoid problems I separated netcdf-4 enabled version as netcdf-devel. I would like to take a look at configure messages. Could you clean nco and configure again? I would like to look at work/nco-4.0.1/config.log.

sudo port -d clean nco
sudo port -d configure nco

comment:5 Changed 4 years ago by ohtinsel@…

Okay, here is the debug dump.

Mike

--->  Computing dependencies for nco
--->  Fetching nco
--->  Verifying checksum(s) for nco
--->  Checksumming nco-4.0.1.tar.gz
--->  Extracting nco
--->  Extracting nco-4.0.1.tar.gz
--->  Configuring nco
checking build system type... i386-apple-darwin10.3.0
checking host system type... i386-apple-darwin10.3.0
checking target system type... i386-apple-darwin10.3.0
checking for grep that handles long lines and -e... /usr/bin/grep
checking for egrep... /usr/bin/grep -E
checking for a BSD-compatible install... /usr/bin/install -c
checking whether build environment is sane... yes
checking for a thread-safe mkdir -p... /opt/local/bin/mkdir -p
checking for gawk... no
checking for mawk... no
checking for nawk... no
checking for awk... awk
checking whether make sets $(MAKE)... yes
checking for gcc... /usr/bin/gcc-4.2
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 /usr/bin/gcc-4.2 accepts -g... yes
checking for /usr/bin/gcc-4.2 option to accept ISO C89... none needed
checking for style of include used by make... GNU
checking dependency style of /usr/bin/gcc-4.2... none
checking whether we are using the GNU C++ compiler... yes
checking whether /usr/bin/g++-4.2 accepts -g... yes
checking dependency style of /usr/bin/g++-4.2... none
checking how to run the C preprocessor... /usr/bin/gcc-4.2 -E
checking how to run the C++ preprocessor... /usr/bin/g++-4.2 -E
checking for /usr/bin/gcc-4.2 option to accept ISO C99... -std=gnu99
checking for /usr/bin/gcc-4.2 -std=gnu99 option to accept ISO Standard C... (cached) -std=gnu99
checking for flex... flex
checking lex output file root... lex.yy
checking lex library... -lfl
checking whether yytext is a pointer... yes
checking for bison... bison -y
checking whether ln -s works... yes
checking for a sed that does not truncate output... /usr/bin/sed
checking for fgrep... /usr/bin/grep -F
checking for ld used by /usr/bin/gcc-4.2 -std=gnu99... /usr/libexec/gcc/i686-apple-darwin10/4.2.1/ld
checking if the linker (/usr/libexec/gcc/i686-apple-darwin10/4.2.1/ld) is GNU ld... no
checking for BSD- or MS-compatible name lister (nm)... /usr/bin/nm
checking the name lister (/usr/bin/nm) interface... BSD nm
checking the maximum length of command line arguments... 196608
checking whether the shell understands some XSI constructs... yes
checking whether the shell understands "+="... yes
checking for /usr/libexec/gcc/i686-apple-darwin10/4.2.1/ld option to reload object files... -r
checking for objdump... no
checking how to recognize dependent libraries... pass_all
checking for ar... ar
checking for strip... strip
checking for ranlib... ranlib
checking command to parse /usr/bin/nm output from /usr/bin/gcc-4.2 -std=gnu99 object... ok
checking for dsymutil... dsymutil
checking for nmedit... nmedit
checking for lipo... lipo
checking for otool... otool
checking for otool64... no
checking for -single_module linker flag... yes
checking for -exported_symbols_list linker flag... yes
checking for ANSI C header files... yes
checking for sys/types.h... yes
checking for sys/stat.h... yes
checking for stdlib.h... yes
checking for string.h... yes
checking for memory.h... yes
checking for strings.h... yes
checking for inttypes.h... yes
checking for stdint.h... yes
checking for unistd.h... yes
checking for dlfcn.h... yes
checking whether we are using the GNU C++ compiler... (cached) yes
checking whether /usr/bin/g++-4.2 accepts -g... (cached) yes
checking dependency style of /usr/bin/g++-4.2... (cached) none
checking how to run the C++ preprocessor... /usr/bin/g++-4.2 -E
checking for objdir... .libs
checking if /usr/bin/gcc-4.2 -std=gnu99 supports -fno-rtti -fno-exceptions... no
checking for /usr/bin/gcc-4.2 -std=gnu99 option to produce PIC... -fno-common -DPIC
checking if /usr/bin/gcc-4.2 -std=gnu99 PIC flag -fno-common -DPIC works... yes
checking if /usr/bin/gcc-4.2 -std=gnu99 static flag -static works... no
checking if /usr/bin/gcc-4.2 -std=gnu99 supports -c -o file.o... yes
checking if /usr/bin/gcc-4.2 -std=gnu99 supports -c -o file.o... (cached) yes
checking whether the /usr/bin/gcc-4.2 -std=gnu99 linker (/usr/libexec/gcc/i686-apple-darwin10/4.2.1/ld) supports shared libraries... yes
checking dynamic linker characteristics... darwin10.3.0 dyld
checking how to hardcode library paths into programs... immediate
checking whether stripping libraries is possible... yes
checking if libtool supports shared libraries... yes
checking whether to build shared libraries... yes
checking whether to build static libraries... yes
checking for ld used by /usr/bin/g++-4.2... /usr/libexec/gcc/i686-apple-darwin10/4.2.1/ld
checking if the linker (/usr/libexec/gcc/i686-apple-darwin10/4.2.1/ld) is GNU ld... no
checking whether the /usr/bin/g++-4.2 linker (/usr/libexec/gcc/i686-apple-darwin10/4.2.1/ld) supports shared libraries... yes
checking for /usr/bin/g++-4.2 option to produce PIC... -fno-common -DPIC
checking if /usr/bin/g++-4.2 PIC flag -fno-common -DPIC works... yes
checking if /usr/bin/g++-4.2 static flag -static works... no
checking if /usr/bin/g++-4.2 supports -c -o file.o... yes
checking if /usr/bin/g++-4.2 supports -c -o file.o... (cached) yes
checking whether the /usr/bin/g++-4.2 linker (/usr/libexec/gcc/i686-apple-darwin10/4.2.1/ld) supports shared libraries... yes
checking dynamic linker characteristics... darwin10.3.0 dyld
checking how to hardcode library paths into programs... immediate
checking whether to enable maintainer-specific portions of Makefiles... no
checking for working memcmp... yes
checking whether lstat dereferences a symlink specified with a trailing slash... no
checking whether stat accepts an empty string... no
checking for working strtod... yes
checking for canonicalize_file_name... no
checking for floor... yes
checking for gethostname... yes
checking for getpagesize... yes
checking for getrusage... yes
checking for memchr... yes
checking for memmove... yes
checking for memset... yes
checking for mkstemp... yes
checking for pow... yes
checking for readlink... yes
checking for realpath... yes
checking for regcomp... yes
checking for setlocale... yes
checking for sqrt... yes
checking for strchr... yes
checking for strerror... yes
checking for strpbrk... yes
checking for strrchr... yes
checking for strstr... yes
checking for strtol... yes
checking for ANSI C header files... (cached) yes
checking getopt.h usability... yes
checking getopt.h presence... yes
checking for getopt.h... yes
checking libintl.h usability... yes
checking libintl.h presence... yes
checking for libintl.h... yes
checking limits.h usability... yes
checking limits.h presence... yes
checking for limits.h... yes
checking locale.h usability... yes
checking locale.h presence... yes
checking for locale.h... yes
checking netinet/in.h usability... yes
checking netinet/in.h presence... yes
checking for netinet/in.h... yes
checking for stdlib.h... (cached) yes
checking for string.h... (cached) yes
checking for unistd.h... (cached) yes
checking cstdlib usability... yes
checking cstdlib presence... yes
checking for cstdlib... yes
checking for an ANSI C-conforming const... yes
checking for inline... inline
checking for pid_t... yes
checking for size_t... yes
checking whether struct tm is in sys/time.h or time.h... time.h
checking for uid_t in sys/types.h... yes
checking for ptrdiff_t... yes
checking size of int*... 8
checking whether C++ compiler implements namespaces... yes
checking whether C++ compiler has working valarray<T>... yes
checking for special C compiler options needed for large files... no
checking for _FILE_OFFSET_BITS value needed for large files... no
Beginning generic tests for DAP support
DEBUG: enable_dap_netcdf = yes and enable_dap_opendap = no
Testing for DAP-netCDF support (is DAP in libnetcdf.a?)...
checking for nc__opendap in -lnetcdf... yes
configure: DAP support enabled
checking netcdf.h usability... yes
checking netcdf.h presence... yes
checking for netcdf.h... yes
#################################
#  Test for netCDF4 support     #
#################################
User set '--enable-netcdf4' but did not set NETCDF4_ROOT
Assuming netCDF4 is on standard path...
checking for nc4_enddef_netcdf4_file in -lnetcdf... no
DEBUG: After netCDF4 section LIBS = -lnetcdf 
DEBUG: After netCDF4 section header_defines_nc_chunked = 
DEBUG: After netCDF3 section LIBS = -lnetcdf 
checking for getopt_long... yes
checking for _g95_ac_array in -lf95... no
checking for sin in -lm... yes
checking for sinf in -lsunmath... no
checking for gettext in -lintl... yes
checking for res_init in -lresolv... yes
checking for main in -lsocket... no
checking for main in -lthread... no
checking for nco_open in -lnco... no
checking for nc_inq_format... no
checking for getopt... yes
checking for getopt_long... (cached) yes
checking for atan2... yes
checking for acosf... yes
checking for asinf... yes
checking for atanf... yes
checking for atan2f... yes
checking for cosf... yes
checking for expf... yes
checking for fabsf... yes
checking for fmodf... yes
checking for log10f... yes
checking for logf... yes
checking for powf... yes
checking for sinf... yes
checking for sqrtf... yes
checking for tanf... yes
checking for erff... yes
checking for erfcf... yes
checking for gammaf... no
checking for acoshf... yes
checking for asinhf... yes
checking for atanhf... yes
checking for coshf... yes
checking for sinhf... yes
checking for tanhf... yes
checking for ceilf... yes
checking for floorf... yes
checking for nearbyintf... yes
checking for rintf... yes
checking for roundf... yes
checking for truncf... yes
checking for getopt_long... (cached) yes
checking for strdup... yes
checking for strcasecmp... yes
##########################################################
#     Sorting out MacOSX build parameters                #
##########################################################
DEBUG: enable_libnco =  and MACOSX = 1
DEBUG: After library checks LIBS=-lresolv -lintl -lm -lnetcdf 
#################################
#  Testing for ANTLR support    #
#################################
checking for runantlr... yes
checking antlr/CommonToken.hpp usability... yes
checking antlr/CommonToken.hpp presence... yes
checking for antlr/CommonToken.hpp... yes
INFO: ANTLR development support found---will build nco++ directory and ncap2
DEBUG: enable_mpi = ''
########################################
#     Testing for GSL support          #
########################################
configure: These GSL library and header tests must succeed for GSL support:
checking for gsl_sf_gamma_inc in -lgsl... yes
checking for /opt/local/include/gsl/gsl_sf_gamma.h... yes
configure: GSL support enabled
DEBUG: After GSL tests LIBS = -lgsl -L/opt/local/lib -lgsl -lgslcblas -lm -lresolv -lintl -lm -lnetcdf 
checking regex.h usability... yes
checking regex.h presence... yes
checking for regex.h... yes
checking for sys/types.h... (cached) yes
checking for regexec... yes
checking for regcomp... (cached) yes
checking for regfree... yes
########################################
#     Testing for UDUNITS support      #
########################################
Beginning generic tests for UDUnits
DEBUG: enable_udunits = yes and enable_udunits2 = no
checking for tdelete... yes
checking for /usr/local/etc/udunits.dat... no
configure: WARNING: file /usr/local/etc/udunits.dat was not found but will still attempt to build NCO with UDUnits support.
checking for tdelete... (cached) yes
configure: NB: Following tests of UDUnits library and header must succeed for UDUnits support:
checking for utInit in -ludunits... yes
checking udunits.h usability... yes
checking udunits.h presence... yes
checking for udunits.h... yes
configure: UDUnits support enabled
DEBUG: After UDUnits tests LIBS = -ludunits -lgsl -L/opt/local/lib -lgsl -lgslcblas -lm -lresolv -lintl -lm -lnetcdf  -ludunits
DEBUG: After UDUnits2 tests LIBS = -ludunits -lgsl -L/opt/local/lib -lgsl -lgslcblas -lm -lresolv -lintl -lm -lnetcdf  -ludunits
checking for ncgen... /opt/local/lib/netcdf-devel/bin/ncgen
configure: Creating sample netCDF data files for self-tests
###############################
#    Require Shared Libs?     #
###############################
DEBUG: enable_shared: no 
DEBUG: enable_shared: rejected due to netcdf4 requirement
DEBUG: enable_ncoxx: yes and NCOXX = nco++
configure: creating ./config.status
config.status: creating Makefile
config.status: creating data/Makefile
config.status: creating src/Makefile
config.status: creating src/nco/Makefile
config.status: creating man/Makefile
config.status: creating doc/Makefile
config.status: creating src/nco_c++/Makefile
config.status: creating src/nco++/Makefile
config.status: creating config.h
config.status: executing depfiles commands
config.status: executing libtool commands

Configuration Parameters:
AR_FLAGS............. cru
CC................... /usr/bin/gcc-4.2 -std=gnu99
CFLAGS............... -fno-common -O2 -arch x86_64 -std=c99 -D_BSD_SOURCE 
CPP.................. /usr/bin/gcc-4.2 -E
CPPFLAGS............. -I/opt/local/include -I/usr/include/malloc -I/opt/local/lib/netcdf-devel/include -I/opt/local/include -I/opt/local/include
CXX.................. /usr/bin/g++-4.2
CXXFLAGS............. -O2 -arch x86_64
ENABLE_DAP_NETCDF.... yes
ENABLE_DAP_OPENDAP... no
ENABLE_DAP........... yes
ENABLE_GSL........... yes
ENABLE_MPI........... 
ENABLE_NETCDF4....... no
ENABLE_UDUNITS....... yes
ENABLE_UDUNITS2...... no
GSL_ROOT............. /opt/local
HAVE_NETCDF4_H....... 
HOST................. 
host................. i386-apple-darwin10.3.0
HOSTNAME............. boreas.giss.nasa.gov
LDFLAGS.............. -L/opt/local/lib/netcdf-devel/lib -L/opt/local/lib -L/opt/local/lib
LIBS................. -ludunits -lgsl -L/opt/local/lib -lgsl -lgslcblas -lm -lresolv -lintl -lm -lnetcdf  -ludunits
NETCDF4_ROOT......... 
*******************************************************************
Configuration complete. You are now ready to run 'make'.
Ensure 'make' points to GNU Make (AT&T Make chokes on GNU syntax).
If the build fails, please examine the file 'configure.eg'
in the top-level NCO directory.  It contains examples known to
build NCO for various platforms and compilers.
*******************************************************************

comment:6 Changed 4 years ago by takeshi@…

You have netcdf-4 disabled version of netcdf-devel. netcdf-devel should be netcdf-4 enabled by default. I would like to look the results of the two commands:

port installed netcdf-devel

and

/opt/local/lib/netcdf-devel/bin/nc-config --has-nc4

comment:7 Changed 4 years ago by ohtinsel@…

Okay,

 port installed netcdf-devel

The following ports are currently installed:
  netcdf-devel @4.1.1_0 (active)
/opt/local/lib/netcdf-devel/bin/nc-config --has-nc4
yes

Thanks for working on this!

comment:8 Changed 4 years ago by takeshi@…

netcdf and netcdf-devel have been merged (r69159). Do you still have a problem?

comment:9 Changed 4 years ago by takeshi@…

  • Status changed from new to closed
  • Resolution set to fixed
Note: See TracTickets for help on using tickets.