我正在尝试使用portaudio中的静态库,在编译portaudio之后将“libportaudio.a”放入我的项目中(通过执行“./configre&& make”然后我把文件放在lib / .libs /).
由于这是一个qt项目,我的Makefile Lib行看起来像这样:
LIBS = $(SUBLIBS) -L/usr/lib/x86_64-linux-gnu -L/home/larose/babel/BabelAudio/lib -Lportaudio -Llibspeex -Llibspeexdsp -lQtGui -lQtNetwork -lQtCore -lpthread
在我的.pro中我有:
LIBS += -L$$PWD/lib -Lportaudio -Llibspeex -Llibspeexdsp
但是当我尝试做make时,结果是:
SpeakThread.cpp:(.text+0x388): undefined reference to `Pa_OpenStream'
SpeakThread.cpp:(.text+0x3c7): undefined reference to `Pa_OpenStream'
SpeakThread.cpp:(.text+0x3d0): undefined reference to `Pa_StartStream'
SpeakThread.cpp:(.text+0x3da): undefined reference to `Pa_StartStream'
SpeakThread.cpp:(.text+0x3e4): undefined reference to `Pa_IsStreamActive'
在执行./configure以使库可移植时,还是只需要在Makefile中更改某些内容时,有什么特别的事吗?
答案 0 :(得分:1)
您应该使用-l
而不是-L
-lportaudio