2015-08-13 4 views
0

Я получаю неопределенные опорные ошибки при построении LSDMap (локально масштабированной карты диффузии). Какие библиотеки содержат недостающие ссылки?Неопределенная ссылка на `blacs_gridinfo_ '

[email protected] LSDMap]$ make 
mpifort -O3 -ffree-line-length-none src/p_wlsdmap.o -o p_wlsdmap -L/home/demo/LSDMap -lparpack_LINUX -larpack_LINUX 
/home/demo/LSDMap/libparpack_LINUX.a(pdmout.o): In function `pdmout_': 
pdmout.f:(.text+0x41): undefined reference to `blacs_gridinfo_' 
/home/demo/LSDMap/libparpack_LINUX.a(pdsaupd.o): In function `pdsaupd_': 
pdsaupd.f:(.text+0x678): undefined reference to `blacs_gridinfo_' 
/home/demo/LSDMap/libparpack_LINUX.a(pdlamch.o): In function `pdlamch_': 
pdlamch.f:(.text+0xf4): undefined reference to `dgamx2d_' 
pdlamch.f:(.text+0x197): undefined reference to `dgamn2d_' 
/home/demo/LSDMap/libparpack_LINUX.a(pdnorm2.o): In function `pdnorm2_': 
pdnorm2.f:(.text+0x8f): undefined reference to `dgamx2d_' 
pdnorm2.f:(.text+0x116): undefined reference to `dgsum2d_' 
/home/demo/LSDMap/libparpack_LINUX.a(pivout.o): In function `pivout_': 
pivout.f:(.text+0x3a): undefined reference to `blacs_gridinfo_' 
/home/demo/LSDMap/libparpack_LINUX.a(pdvout.o): In function `pdvout_': 
pdvout.f:(.text+0x3a): undefined reference to `blacs_gridinfo_' 
/home/demo/LSDMap/libparpack_LINUX.a(pdsaup2.o): In function `pdsaup2_': 
pdsaup2.f:(.text+0x11b9): undefined reference to `dgsum2d_' 
/home/demo/LSDMap/libparpack_LINUX.a(pdgetv0.o): In function `pdgetv0_': 
pdgetv0.f:(.text+0x2f8): undefined reference to `dgsum2d_' 
pdgetv0.f:(.text+0x449): undefined reference to `dgsum2d_' 
pdgetv0.f:(.text+0x609): undefined reference to `dgsum2d_' 
/home/demo/LSDMap/libparpack_LINUX.a(pdsaitr.o): In function `pdsaitr_': 
pdsaitr.f:(.text+0x77b): undefined reference to `dgsum2d_' 
/home/demo/LSDMap/libparpack_LINUX.a(pdsaitr.o):pdsaitr.f:(.text+0x84f): more undefined references to `dgsum2d_' follow 
/home/demo/LSDMap/libparpack_LINUX.a(pdlarnv.o): In function `pdlarnv_': 
pdlarnv.f:(.text+0x38): undefined reference to `blacs_gridinfo_' 
pdlarnv.f:(.text+0xb7): undefined reference to `igsum2d_' 
/home/demo/LSDMap/libarpack_LINUX.a(second.o): In function `second_': 
second.f:(.text+0x11): undefined reference to `etime_' 
/home/demo/LSDMap/libarpack_LINUX.a(xerbla.o): In function `xerbla_': 
xerbla.f:(.text+0x18): undefined reference to `s_wsfe' 
xerbla.f:(.text+0x2f): undefined reference to `do_fio' 
xerbla.f:(.text+0x46): undefined reference to `do_fio' 
xerbla.f:(.text+0x50): undefined reference to `e_wsfe' 
xerbla.f:(.text+0x64): undefined reference to `s_stop' 
collect2: error: ld returned 1 exit status 
make: *** [p_wlsdmap] Error 1 

ответ

1

От BLACS. Уведомление blacs_gridinfo_ и простой поиск в Google идентифицируют другие (например, google.com/search?q=pdlarnv&oq=pdlarnv), а также от BLACS или ARPACK.

Etime() является нестандартным встроенным в некоторых компиляторах (https://gcc.gnu.org/onlinedocs/gfortran/ETIME.html), но ваш компилятор этого не знает. Вам нужно будет найти замену.

Как правило, я рекомендую вам искать свою любимую поисковую систему для пропущенного имени без подчеркивания, и нетрудно найти соответствующую библиотеку.