Voy a utilizar NetCDF en Windows y creo que tiene que compilarse con MinGW ya que mi programa principal y todas las demás bibliotecas ya están compiladas con MinGW.libtool: conflictos de nombre de objeto en el archivo (NETCDF + MinGW)
Pero cuando utilicé MinGW (gcc versión 4.6.2). Recibí algunos mensajes de error:
Making all in liblib
make[2]: Entering directory `/c/Users/ylylyl/Documents/CB/NETCDF/netcdf-4.2.1.1/liblib'
/bin/sh ../libtool --tag=CC --mode=compile gcc -DHAVE_CONFIG_H -I. -I.. -I../include -DDLL_NETCDF -DDLL_EXPORT -g -O2 -MT libnetcdf_la-stub.lo -MD -MP -MF .deps/libnetcdf_la-stub.Tpo -c -o libnetcdf_la-stub.lo `test -f 'stub.c' ||echo './'`stub.c
libtool: compile: gcc -DHAVE_CONFIG_H -I. -I.. -I../include -DDLL_NETCDF -DDLL_EXPORT -g -O2 -MT libnetcdf_la-stub.lo -MD -MP -MF .deps/libnetcdf_la-stub.Tpo -c stub.c -DDLL_EXPORT -DPIC -o .libs/libnetcdf_la-stub.o
libtool: compile: gcc -DHAVE_CONFIG_H -I. -I.. -I../include -DDLL_NETCDF -DDLL_EXPORT -g -O2 -MT libnetcdf_la-stub.lo -MD -MP -MF .deps/libnetcdf_la-stub.Tpo -c stub.c -o libnetcdf_la-stub.o >/dev/null 2>&1
mv -f .deps/libnetcdf_la-stub.Tpo .deps/libnetcdf_la-stub.Plo
/bin/sh ../libtool --tag=CC --mode=link gcc -g -O2 -version-info 9:0:2 -no-undefined -Wl,--output-def,netcdfdll.def -o libnetcdf.la -rpath /usr/local/lib libnetcdf_la-stub.lo ../libdispatch/libnetcdf2.la ../libdispatch/libdispatch.la ../libsrc/libnetcdf3.la -lm
libtool: link: gcc -shared .libs/libnetcdf_la-stub.o -Wl,--whole-archive ../libdispatch/.libs/libnetcdf2.a ../libdispatch/.libs/libdispatch.a ../libsrc/.libs/libnetcdf3.a -Wl,--no-whole-archive -O2 -Wl,--output-def -Wl,netcdfdll.def -o .libs/libnetcdf-7.dll -Wl,--enable-auto-image-base -Xlinker --out-implib -Xlinker .libs/libnetcdf.dll.a
Creating library file: .libs/libnetcdf.dll.a
libtool: link: (cd .libs/libnetcdf.lax/libnetcdf2.a && ar x "/c/Users/ylylyl/Documents/CB/NETCDF/netcdf-4.2.1.1/liblib/../libdispatch/.libs/libnetcdf2.a")
libtool: link: object name conflicts in archive: .libs/libnetcdf.lax/libnetcdf2.a//c/Users/ylylyl/Documents/CB/NETCDF/netcdf-4.2.1.1/liblib/../libdispatch/.libs/libnetcdf2.a
make[2]: *** [libnetcdf.la] Error 1
make[2]: Leaving directory `/c/Users/ylylyl/Documents/CB/NETCDF/netcdf-4.2.1.1/liblib'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/c/Users/ylylyl/Documents/CB/NETCDF/netcdf-4.2.1.1'
make: *** [all] Error 2
No tengo idea de cuál es el problema dentro de libtool. Pero creo que un comando necesita más entradas. Y tal vez hay algo mal al generar el script libtool?
He buscado en línea, pero no puedo encontrar ninguna versión MinGW NetCDF con interfaz fortran y f90. Por favor, échame una mano. Muchas gracias.
¡Me salvó el día, gracias! Para hacer un comentario: en mi caso olvidé la ruta de las bibliotecas en Windows PATH, y estaba ejecutando el msys sh en el cmd normal. Luego, ahora eliminé la RUTA y volví a msys, simplemente volví a hacer, y continuó donde dio el error. :) Básicamente revisa el camino chicos. – questioner
Oh cambiando A. Esto solucionó el problema. – NiteRain
Encontré este mismo problema bajo cygwin. Reordenar las entradas PATH lo arregló. – aroth