我编写了一个.c文件和.h文件,用ar rcs libtadd.a tadd.o生成静态库,在Qt的pro文件中添加:LIBS += -L$$PWD -ltadd。调用的时候包含了这个.h,但是使用的时候还是找不到静态库中的函数:/home/wcx/QtProjects/use_libtadd/widget.cpp:12: error: undefined reference to `tadd(int, int)'。我直接编写一个c程序测试这个库是正常的,难道QT只能调用它自己生成的静态库吗?
extern "C"
{
#include "tadd.h"
}
我是这样包含头文件的,extern “C”是常规操作吧。
你的头文件写了extern "C"吗?没有的话,就算不是Qt,C++也不能直接调用C函数。
我也是遇到了这个问题,楼主解决了吗