按照这个博主
(262条消息) QT5环境下配置GSL数学库_qt 数学库_木小猿的博客-CSDN博客
一步步来出现undefined reference to `gsl_sf_bessel_J0'这个问题是:
当前编译器和静态库不匹配。如果你当前qt使用的mingw编译器是64位的话。msys文件放在mingwxxx_64 下文件下,编译出的静态库是64位的。当然你却用MingW构建32位的程序,你自己qt编译器是64位的,编译器在编译器找不到函数地址的,出现未定义引用。
MingW有三个主要版本:
1- mingw32-gcc.exe 编译器将在32位系统上构建32位应用程序。
2- i686-w64-mingw32-gcc.exe 编译器将在64位系统上构建32位应用程序。
3- x86_64-w64-mingw32-gcc.exe 编译器将在64位系统上构建64位应用程序。
i686前缀的版本肯定可以编译32位程序,但是否能编译64位程序则取决于编译器版本的所用的异常实现模型–dwarf,seh,sjlj。
原文链接:https://blog.csdn.net/weixin_43605586/article/details/105494164