undefined reference to 변수명 해결좀 부탁드립니다.
글쓴이: ksh3831 / 작성시간: 월, 2020/02/24 - 1:58오후
[sja3@tulip mgdsst2cdf]$ make (cd src/libnctool;make); make[1]: Entering directory `/home/sja3/ksh/final/mgdsst2cdf/src/libnctool' ar ru libnctool.a module_nctool.o make[1]: Leaving directory `/home/sja3/ksh/final/mgdsst2cdf/src/libnctool' (cd src ; make); make[1]: Entering directory `/home/sja3/ksh/final/mgdsst2cdf/src' pgf90 -I/usr/local/netcdf/413_pgi133/include -I. -Ilibnctool -o mgdsst2cdf module_time.o module_pregrid.o read_sst_data.o write_netcdf.o mgdsst2cdf.o -Llibnctool -lnctool -lnetcdf -L/usr/local/netcdf/413_pgi133/lib write_netcdf.o: In function `.STATICS1': write_netcdf.f90:(.data+0x88): undefined reference to `typesizes_' write_netcdf.f90:(.data+0x90): undefined reference to `netcdf_' mgdsst2cdf.o: In function `.STATICS1': mgdsst2cdf.f90:(.data+0x890): undefined reference to `typesizes_' mgdsst2cdf.f90:(.data+0x898): undefined reference to `netcdf_' libnctool/libnctool.a(module_nctool.o): In function `nctool_nt_strerror_': /home/sja3/ksh/final/mgdsst2cdf/src/libnctool/./module_nctool.f90:232: undefined reference to `netcdf_nf90_strerror_' libnctool/libnctool.a(module_nctool.o): In function `nctool_nt_open_': /home/sja3/ksh/final/mgdsst2cdf/src/libnctool/./module_nctool_io.f90:19: undefined reference to `netcdf_nf90_open_' /home/sja3/ksh/final/mgdsst2cdf/src/libnctool/./module_nctool_io.f90:19: undefined reference to `netcdf_nf90_strerror_' libnctool/libnctool.a(module_nctool.o): In function `nctool_nt_create_': /home/sja3/ksh/final/mgdsst2cdf/src/libnctool/./module_nctool_io.f90:40: undefined reference to `netcdf_nf90_create_' /home/sja3/ksh/final/mgdsst2cdf/src/libnctool/./module_nctool_io.f90:40: undefined reference to `netcdf_nf90_strerror_' /home/sja3/ksh/final/mgdsst2cdf/src/libnctool/./module_nctool_io.f90:47: undefined reference to `netcdf_nf90_put_att_text_' /home/sja3/ksh/final/mgdsst2cdf/src/libnctool/./module_nctool_io.f90:47: undefined reference to `netcdf_nf90_put_att_text_' /home/sja3/ksh/final/mgdsst2cdf/src/libnctool/./module_nctool_io.f90:47: undefined reference to `netcdf_nf90_put_att_text_'
make를 실행시 이러한 문구가 뜨면서 마지막에 에러가 발생합니다
옵션은
FC = pgf90 FCFLAGS = CC = gcc CFLAGS = # # Linux with ifc # #FC = ifort #FCFLAGS = -assume byterecl -convert big_endian #CC = gcc #CFLAGS = # # Sun OS with f90 # #FC = f90 #FCFLAGS = #CC = gcc #CFLAGS = # # General comand # AR = ar BITS = BIT64 CDF_INC = -I/usr/local/netcdf/413_pgi133/include -I. -Ilibnctool CDF_LIB = -L/usr/local/netcdf/413_pgi133/lib #CDF_INC = -I/usr/local/netcdf_pgf/include -I. -Ilibnctool #CDF_LIB = -L/usr/local/netcdf_pgf/lib .SUFFIXES: .f90 .F .F90 .o .f .c
이렇게 설정하고 실행하였습니다.
Forums:
pgf90 -I/usr/local/netcdf/413
-Llibnctool 링크가 잘못 됐네요. -lnctool 이렇게 되어야 합니다.
-Ilibnctool 링크가 잘못 됐네요. -lnctool 이렇게 합니다.
예를 들어 libc 라이브러리를 링크할 때, -L경로 -lc 이렇게 합니다.
-L/usr/lib -lc 이렇게요. 앞에 lib라는 문자를 뺍니다.
/usr/lib 은 LD_LIBRARY_PATH 에 경로가 설정되어 있으니 생략 가능하죠.
아... -Llibnctool -Ilibnctool
아...
-Llibnctool -Ilibnctool
이게 있는걸로 봐서 그게 경로인가 보군요....-L./libnctool -I./libnctool
이렇게 해주세요.흠.. https://www.unidata.ucar
흠.. https://www.unidata.ucar.edu/software/netcdf/docs/known_problems.html 에 보면
라고 되어 있는데 관련된 문제가 아닌가 싶네요.
댓글 달기