Dsplib / libdspl-2.0

libdspl-2.0 is opensource cross-platform digital signal processing algorithm library, written in C language.
GNU Lesser General Public License v3.0
91 stars 27 forks source link

Linking to included liblapack fails on macOS: Undefined symbols: "_lsame_" #5

Open barracuda156 opened 1 year ago

barracuda156 commented 1 year ago

Linking to included lapack fails on macOS:

make[1]: Entering directory `/opt/local/var/macports/build/_opt_PPCRosettaPorts_math_dspl/dspl/work/Dsplib-libdspl-2.0-945a7fd/dspl'
/opt/local/var/macports/build/_opt_PPCRosettaPorts_math_dspl/dspl/work/compwrap/cc/opt/local/bin/gcc-mp-12 -shared -o ../_release/libdspl.so  obj/array.o obj/convolution.o obj/dft.o obj/filter_design.o obj/gnuplot.o obj/inout.o obj/math.o obj/math_ellipj.o obj/math_poly.o obj/matrix.o obj/mt19937.o obj/psd.o obj/randgen.o obj/resampling.o obj/signals.o obj/statistic.o obj/trapint.o obj/types.o obj/unwrap.o obj/verification.o obj/win.o obj/xcorr.o -lm  -Llapack/bin -llapack_complex -llapack_double -Lblas/bin -lblas -lgfortran
Undefined symbols:
  "_lsame_", referenced from:
      _zgees_ in liblapack_complex.a(zgees.o)
      _zgees_ in liblapack_complex.a(zgees.o)
      _zgees_ in liblapack_complex.a(zgees.o)
      _zgees_ in liblapack_complex.a(zgees.o)
      _dgesdd_ in liblapack_double.a(dgesdd.o)
      _dgesdd_ in liblapack_double.a(dgesdd.o)
      _dgesdd_ in liblapack_double.a(dgesdd.o)
      _dgesdd_ in liblapack_double.a(dgesdd.o)
      _dgesdd_ in liblapack_double.a(dgesdd.o)
      _dgesdd_ in liblapack_double.a(dgesdd.o)
      _zlacpy_ in liblapack_complex.a(zlacpy.o)
      _zlacpy_ in liblapack_complex.a(zlacpy.o)
      _dlange_ in liblapack_double.a(dlange.o)
      _dlange_ in liblapack_double.a(dlange.o)
      _dlange_ in liblapack_double.a(dlange.o)
      _dlange_ in liblapack_double.a(dlange.o)
      _dlange_ in liblapack_double.a(dlange.o)
      _dorgbr_ in liblapack_double.a(dorgbr.o)
      _dorgbr_ in liblapack_double.a(dorgbr.o)
      _zlascl_ in liblapack_complex.a(zlascl.o)
      _zlascl_ in liblapack_complex.a(zlascl.o)
      _zlascl_ in liblapack_complex.a(zlascl.o)
      _zlascl_ in liblapack_complex.a(zlascl.o)
      _zlascl_ in liblapack_complex.a(zlascl.o)
      _zlascl_ in liblapack_complex.a(zlascl.o)
      _zlascl_ in liblapack_complex.a(zlascl.o)
      _dlacpy_ in liblapack_double.a(dlacpy.o)
      _dlacpy_ in liblapack_double.a(dlacpy.o)
      _zhseqr_ in liblapack_complex.a(zhseqr.o)
      _zhseqr_ in liblapack_complex.a(zhseqr.o)
      _zhseqr_ in liblapack_complex.a(zhseqr.o)
      _zhseqr_ in liblapack_complex.a(zhseqr.o)
      _zhseqr_ in liblapack_complex.a(zhseqr.o)
      _dlascl_ in liblapack_double.a(dlascl.o)
      _dlascl_ in liblapack_double.a(dlascl.o)
      _dlascl_ in liblapack_double.a(dlascl.o)
      _dlascl_ in liblapack_double.a(dlascl.o)
      _dlascl_ in liblapack_double.a(dlascl.o)
      _dlascl_ in liblapack_double.a(dlascl.o)
      _dlascl_ in liblapack_double.a(dlascl.o)
      _dlamch_ in liblapack_complex.a(dlamch.o)
      _dlamch_ in liblapack_complex.a(dlamch.o)
      _dlamch_ in liblapack_complex.a(dlamch.o)
      _dlamch_ in liblapack_complex.a(dlamch.o)
      _dlamch_ in liblapack_complex.a(dlamch.o)
      _dlamch_ in liblapack_complex.a(dlamch.o)
      _dlamch_ in liblapack_complex.a(dlamch.o)
      _dlamch_ in liblapack_complex.a(dlamch.o)
      _dlamch_ in liblapack_complex.a(dlamch.o)
      _dlamch_ in liblapack_complex.a(dlamch.o)
      _dlaset_ in liblapack_double.a(dlaset.o)
      _dlaset_ in liblapack_double.a(dlaset.o)
      _zlange_ in liblapack_complex.a(zlange.o)
      _zlange_ in liblapack_complex.a(zlange.o)
      _zlange_ in liblapack_complex.a(zlange.o)
      _zlange_ in liblapack_complex.a(zlange.o)
      _zlange_ in liblapack_complex.a(zlange.o)
      _zgebak_ in liblapack_complex.a(zgebak.o)
      _zgebak_ in liblapack_complex.a(zgebak.o)
      _zgebak_ in liblapack_complex.a(zgebak.o)
      _zgebak_ in liblapack_complex.a(zgebak.o)
      _zgebak_ in liblapack_complex.a(zgebak.o)
      _zgebak_ in liblapack_complex.a(zgebak.o)
      _zgebak_ in liblapack_complex.a(zgebak.o)
      _zgebak_ in liblapack_complex.a(zgebak.o)
      _zgebak_ in liblapack_complex.a(zgebak.o)
      _zgebak_ in liblapack_complex.a(zgebak.o)
      _zgebak_ in liblapack_complex.a(zgebak.o)
      _zgebak_ in liblapack_complex.a(zgebak.o)
      _zgebal_ in liblapack_complex.a(zgebal.o)
      _zgebal_ in liblapack_complex.a(zgebal.o)
      _zgebal_ in liblapack_complex.a(zgebal.o)
      _zgebal_ in liblapack_complex.a(zgebal.o)
      _zgebal_ in liblapack_complex.a(zgebal.o)
      _zgebal_ in liblapack_complex.a(zgebal.o)
      _zgebal_ in liblapack_complex.a(zgebal.o)
      _ztrsen_ in liblapack_complex.a(ztrsen.o)
      _ztrsen_ in liblapack_complex.a(ztrsen.o)
      _ztrsen_ in liblapack_complex.a(ztrsen.o)
      _ztrsen_ in liblapack_complex.a(ztrsen.o)
      _ztrsen_ in liblapack_complex.a(ztrsen.o)
      _ztrsen_ in liblapack_complex.a(ztrsen.o)
      _ztrsen_ in liblapack_complex.a(ztrsen.o)
      _ztrsen_ in liblapack_complex.a(ztrsen.o)
      _ztrsen_ in liblapack_complex.a(ztrsen.o)
      _dbdsdc_ in liblapack_double.a(dbdsdc.o)
      _dbdsdc_ in liblapack_double.a(dbdsdc.o)
      _dbdsdc_ in liblapack_double.a(dbdsdc.o)
      _dbdsdc_ in liblapack_double.a(dbdsdc.o)
      _dbdsdc_ in liblapack_double.a(dbdsdc.o)
      _dbdsdc_ in liblapack_double.a(dbdsdc.o)
      _dormbr_ in liblapack_double.a(dormbr.o)
      _dormbr_ in liblapack_double.a(dormbr.o)
      _dormbr_ in liblapack_double.a(dormbr.o)
      _dormbr_ in liblapack_double.a(dormbr.o)
      _dormbr_ in liblapack_double.a(dormbr.o)
      _dormbr_ in liblapack_double.a(dormbr.o)
      _dormbr_ in liblapack_double.a(dormbr.o)
      _dlasr_ in liblapack_double.a(dlasr.o)
      _dlasr_ in liblapack_double.a(dlasr.o)
      _dlasr_ in liblapack_double.a(dlasr.o)
      _dlasr_ in liblapack_double.a(dlasr.o)
      _dlasr_ in liblapack_double.a(dlasr.o)
      _dlasr_ in liblapack_double.a(dlasr.o)
      _dlasr_ in liblapack_double.a(dlasr.o)
      _dlasr_ in liblapack_double.a(dlasr.o)
      _dlasr_ in liblapack_double.a(dlasr.o)
      _dlasr_ in liblapack_double.a(dlasr.o)
      _dlasr_ in liblapack_double.a(dlasr.o)
      _dlasr_ in liblapack_double.a(dlasr.o)
      _dlasr_ in liblapack_double.a(dlasr.o)
      _dlasr_ in liblapack_double.a(dlasr.o)
      _dlasr_ in liblapack_double.a(dlasr.o)
      _dlasr_ in liblapack_double.a(dlasr.o)
      _dlasr_ in liblapack_double.a(dlasr.o)
      _dlasr_ in liblapack_double.a(dlasr.o)
      _dlasr_ in liblapack_double.a(dlasr.o)
      _dlasr_ in liblapack_double.a(dlasr.o)
      _dlasr_ in liblapack_double.a(dlasr.o)
      _dlasr_ in liblapack_double.a(dlasr.o)
      _dlasr_ in liblapack_double.a(dlasr.o)
      _dlasr_ in liblapack_double.a(dlasr.o)
      _dlasr_ in liblapack_double.a(dlasr.o)
      _dlasr_ in liblapack_double.a(dlasr.o)
      _dlasr_ in liblapack_double.a(dlasr.o)
      _dlanst_ in liblapack_double.a(dlanst.o)
      _dlanst_ in liblapack_double.a(dlanst.o)
      _dlanst_ in liblapack_double.a(dlanst.o)
      _dlanst_ in liblapack_double.a(dlanst.o)
      _dlanst_ in liblapack_double.a(dlanst.o)
      _ztrsyl_ in liblapack_complex.a(ztrsyl.o)
      _ztrsyl_ in liblapack_complex.a(ztrsyl.o)
      _ztrsyl_ in liblapack_complex.a(ztrsyl.o)
      _ztrsyl_ in liblapack_complex.a(ztrsyl.o)
      _dlarfb_ in liblapack_double.a(dlarfb.o)
      _dlarfb_ in liblapack_double.a(dlarfb.o)
      _dlarfb_ in liblapack_double.a(dlarfb.o)
      _dlarfb_ in liblapack_double.a(dlarfb.o)
      _dlarfb_ in liblapack_double.a(dlarfb.o)
      _dlarfb_ in liblapack_double.a(dlarfb.o)
      _dlarfb_ in liblapack_double.a(dlarfb.o)
      _dlarfb_ in liblapack_double.a(dlarfb.o)
      _dlarfb_ in liblapack_double.a(dlarfb.o)
      _dlarfb_ in liblapack_double.a(dlarfb.o)
      _dlarfb_ in liblapack_double.a(dlarfb.o)
      _dlarfb_ in liblapack_double.a(dlarfb.o)
      _dlarfb_ in liblapack_double.a(dlarfb.o)
      _zlaset_ in liblapack_complex.a(zlaset.o)
      _zlaset_ in liblapack_complex.a(zlaset.o)
      _dlarft_ in liblapack_double.a(dlarft.o)
      _dlarft_ in liblapack_double.a(dlarft.o)
      _dlarft_ in liblapack_double.a(dlarft.o)
      _ztrexc_ in liblapack_complex.a(ztrexc.o)
      _ztrexc_ in liblapack_complex.a(ztrexc.o)
      _dormlq_ in liblapack_double.a(dormlq.o)
      _dormlq_ in liblapack_double.a(dormlq.o)
      _dormlq_ in liblapack_double.a(dormlq.o)
      _dormlq_ in liblapack_double.a(dormlq.o)
      _dlasdq_ in liblapack_double.a(dlasdq.o)
      _dlasdq_ in liblapack_double.a(dlasdq.o)
      _zlarfb_ in liblapack_complex.a(zlarfb.o)
      _zlarfb_ in liblapack_complex.a(zlarfb.o)
      _zlarfb_ in liblapack_complex.a(zlarfb.o)
      _zlarfb_ in liblapack_complex.a(zlarfb.o)
      _zlarfb_ in liblapack_complex.a(zlarfb.o)
      _zlarfb_ in liblapack_complex.a(zlarfb.o)
      _zlarfb_ in liblapack_complex.a(zlarfb.o)
      _zlarfb_ in liblapack_complex.a(zlarfb.o)
      _zlarfb_ in liblapack_complex.a(zlarfb.o)
      _zlarfb_ in liblapack_complex.a(zlarfb.o)
      _zlarfb_ in liblapack_complex.a(zlarfb.o)
      _zlarfb_ in liblapack_complex.a(zlarfb.o)
      _zlarfb_ in liblapack_complex.a(zlarfb.o)
      _dormqr_ in liblapack_double.a(dormqr.o)
      _dormqr_ in liblapack_double.a(dormqr.o)
      _dormqr_ in liblapack_double.a(dormqr.o)
      _dormqr_ in liblapack_double.a(dormqr.o)
      _zlarft_ in liblapack_complex.a(zlarft.o)
      _zlarft_ in liblapack_complex.a(zlarft.o)
      _zlarft_ in liblapack_complex.a(zlarft.o)
      _zlarf_ in liblapack_complex.a(zlarf.o)
      _dlarf_ in liblapack_double.a(dlarf.o)
      _dorml2_ in liblapack_double.a(dorml2.o)
      _dorml2_ in liblapack_double.a(dorml2.o)
      _dorml2_ in liblapack_double.a(dorml2.o)
      _dorml2_ in liblapack_double.a(dorml2.o)
      _dorm2r_ in liblapack_double.a(dorm2r.o)
      _dorm2r_ in liblapack_double.a(dorm2r.o)
      _dorm2r_ in liblapack_double.a(dorm2r.o)
      _dorm2r_ in liblapack_double.a(dorm2r.o)
      _dbdsqr_ in liblapack_double.a(dbdsqr.o)
      _dbdsqr_ in liblapack_double.a(dbdsqr.o)
      _zunmhr_ in liblapack_complex.a(zunmhr.o)
      _zunmhr_ in liblapack_complex.a(zunmhr.o)
      _zunmhr_ in liblapack_complex.a(zunmhr.o)
      _zunmhr_ in liblapack_complex.a(zunmhr.o)
      _dlasrt_ in liblapack_double.a(dlasrt.o)
      _dlasrt_ in liblapack_double.a(dlasrt.o)
      _zunmqr_ in liblapack_complex.a(zunmqr.o)
      _zunmqr_ in liblapack_complex.a(zunmqr.o)
      _zunmqr_ in liblapack_complex.a(zunmqr.o)
      _zunmqr_ in liblapack_complex.a(zunmqr.o)
      _zunm2r_ in liblapack_complex.a(zunm2r.o)
      _zunm2r_ in liblapack_complex.a(zunm2r.o)
      _zunm2r_ in liblapack_complex.a(zunm2r.o)
      _zunm2r_ in liblapack_complex.a(zunm2r.o)
ld: symbol(s) not found
collect2: error: ld returned 1 exit status
make[1]: *** [../_release/libdspl.so] Error 1

At the same time linking to external liblapack works fine with just passing -llapack.