2 ali love peach Ali_love_Peach 于 2014.06.13 16:53 提问

链接了相关的库(里面是有这个函数定义的)但还是 “未定义的引用”

我最近想用一个数学库,在cygwin环境下,用gcc、gfortran编译器

gcc -O3 -O3 -fexceptions -fPIC -DNPARTITION -DNPARTITION -o cholmod_demo -I../Include -I../../SuiteSparse_config cholmod_demo.c ../Lib/libcholmod.a ../../AMD/Lib/libamd.a ../../COLAMD/Lib/libcolamd.a ../../SuiteSparse_config/libsuitesparseconfig.a ../../CCOLAMD/Lib/libccolamd.a ../../CAMD/Lib/libcamd.a /cygdrive/C/Users/lenovo/Desktop/SuiteSparse-4.3.0/SuiteSparse/libacml.a -lgfortran ../../SuiteSparse_config/xerbla/libcerbla.a -lm -lrt

报错:
../Lib/libcholmod.a(cholmod_super_numeric.o):cholmod_super_numeric.c:(.text+0xe1c):对‘dsyrk_’未定义的引用
../Lib/libcholmod.a(cholmod_super_numeric.o):cholmod_super_numeric.c:(.text+0xf43):对‘dgemm_’未定义的引用
(后面还有很多)

这些应该是在libacml.a这个库里实现的
$ nm ../libacml.a | grep dsyrk_
U dsyrk_
U dsyrk_
U dsyrk_
U dsyrk_
dsyrk_cw.o:
U dsyrk_
00000000 T dsyrk_

这样查看,应该是没问题的呀,libacml.a这个库里有它的定义呀
这种情况有可能是什么原因呢?

Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!