我想在Qt项目中使用libsndfile库,然后我需要链接它,但我总是收到错误:
main.cpp:129: error : undefined reference to `sf_open'
main.cpp:137: error : undefined reference to `sf_write_short'
我尝试将这些行添加到我的.pro
1) INCLUDEPATH + = C:/ libsndfile / include LIBS + = -LC:/libsndfile/lib/libsndfile-1.lib
2) INCLUDEPATH + = C:/ libsndfile / include / LIBS + = C:/libsndfile/lib/libsndfile-1.lib
3) win32:CONFIG(发布,调试版|发布):LIBS + = -L $$ PWD /../../../../../../ libsndfile / lib / -llibsndfile-1
INCLUDEPATH + = $$ PWD /../../../../../../ libsndfile / include DEPENDPATH + = $$ PWD /../../../../../../ libsndfile / include
win32:CONFIG(release,debug | release):PRE_TARGETDEPS + = $$ PWD /../../../../../../ libsndfile / lib / libsndfile-1.lib
请帮助我正确链接sndfile库吗?
答案 0 :(得分:0)
LIBS+= -L<PATH TO DIR WITH DLL> -lsndfile-1
例如:
LIBS+= -LC:/sndfile -lsndfile-1
当然,库本身必须使用您使用的编译器编译(mingw?)。不要尝试将VS编译的库与MinGW一起使用,反之亦然。