我正在尝试编译 C++
调用 ARPACK 库的程序。
我的问题是,当一切都被链接时,ARPACK 库中的一些符号没有得到解析。他们是
__gfortran_transfer_integer
__gfortran_transfer_character
__gfortran_transfer_complex
__gfortran_compare_string
__gfortran_st_write_done
__gfortran_st_write
__gfortran_transfer_real
__gfortran_transfer_array
我对我的 lib
进行了暴力搜索目录,并没有找到提供所有这些符号的库。其中一些由 libf77blas
提供, 它看起来像 g95
有一些类似的符号(用 gfortran
替换为 g95
),但我完全不知道我可能还需要安装什么。我正在编译我的代码
g++-mp-4.5 -O3 -Wall -Wl,-search_paths_first -headerpad_max_install_names my.o -o my.out -L/opt/local/lib -larpack -lm -L/opt/local/lib -lgsl -lgslcblas -lm -lf77blas -llapack -larpack -lqblas -lsquack
和/opt/local/lib
实际上有我引用的所有库。
有没有人遇到过这个问题,或者可以指出解决方案?
最佳答案
添加到链接器 -lgfortran
................................
关于c++ - 在 OSX 上将我的代码与 ARPACK 链接时出现问题(将 MacPorts 用于 ARPACK),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5046226/