Esta es la primera vez que trato de compilar el código FORTRAN utilizando un archivo MAKE. El sistema operativo es Ubuntu 12.04 LTS 64 bit. Me encontré con los siguientes errores:"/ usr/bin/ld: no se puede encontrar la biblioteca"
gfortran -o przm3123.exe canopy.o chem.o cnfuns.o cropdate.o datemod.o debug.o debug_cn.o f2kcli.o floatcmp.o furrow.o general.o i_errchk.o infnan.o inivar.o ioluns.o iosubs.o lambertw.o m_readvars.o utils.o wind.o fcscnc.o przm3.o rsexec.o rsinp1.o rsinp2.o rsinp3.o rsmcar.o rsmisc.o rsprz1.o rsprz2.o rsprz3.o rsprzn.o rsutil.o rsvado.o -L ../libanne4.0/lib -lwdm -ladwdm -lutil
/usr/bin/ld: cannot find -lwdm
/usr/bin/ld: cannot find -ladwdm
collect2: ld returned 1 exit status
make: *** [przm3123.exe] Error 1
El elemento clave en el makefile es:
przm2_LIBS = -L ../libanne4.0/lib -lwdm -ladwdm -lutil
¿Hay algo que pueda hacer para corregir este error? ¿Debería probar otros compiladores?
Lo primero que comprobaría es si realmente tiene 'libwdm.so' y' libadwdm.so'. Supongo que deberían estar en este directorio 'libanne4.0/lib'. – birryree
Sí, 'libwdm.a' y' libadwdm.a' están ahí. –
Oh, bibliotecas estáticas. ¿Puedes probar esto en tu archivo MAKE? 'przm2_LIBS = -L ../ libanne4.0/lib -Wl, -Bdynamic -lutil -Wl, -Bstatic -lwdm -ladwdm' - Supongo que' util' es 'libutil.so' (una biblioteca compartida) ya que no No te quejes de eso. – birryree