我正在尝试将
portaudio.h
导入到我的 main.cpp
中。我有简单的 makefile :
EXEC = cppaudiocapture
CLIB = -I./lib/portaudio/include ./lib/portaudio/lib/.libs/libportaudio.a -lrt -lasound -ljack -pthread
$(EXEC): main.cpp
g++ -o $@ $^ $(CLIB)
install-deps:
mkdir -p lib
curl http://files.portaudio.com/archives/pa_stable_v19_061121.tar.gz | tar -zx -C lib
cd lib/portaudio && ./configure && $(MAKE) -j
.PHONY: install-deps
当我尝试 install-deps 并编译时
main.cpp
我收到这些错误:
make install-deps
/usr/bin/ld: lib/.libs/libportaudio.so: undefined reference to `jack_port_unlock'
/usr/bin/ld: lib/.libs/libportaudio.so: undefined reference to `jack_port_lock'
/usr/bin/ld: lib/.libs/libportaudio.so: undefined reference to `jack_port_unlock'
/usr/bin/ld: lib/.libs/libportaudio.so: undefined reference to `jack_port_lock'
make cppaudiocapture
g++ -o cppaudiocapture main.cpp -I./lib/portaudio/include ./lib/portaudio/lib/.libs/libportaudio.a -lrt -lasound -ljack -pthread
/usr/bin/ld: ./lib/portaudio/lib/.libs/libportaudio.a(pa_jack.o): in function `RealStop':
/home/ramen/Programming/Shazam/Shashmaqam-Finder/AudioModule/lib/portaudio/src/hostapi/jack/pa_jack.c:1676: undefined reference to `jack_port_unlock'
/usr/bin/ld: /home/ramen/Programming/Shazam/Shashmaqam-Finder/AudioModule/lib/portaudio/src/hostapi/jack/pa_jack.c:1669: undefined reference to `jack_port_lock'
/usr/bin/ld: /home/ramen/Programming/Shazam/Shashmaqam-Finder/AudioModule/lib/portaudio/src/hostapi/jack/pa_jack.c:1688: undefined reference to `jack_port_unlock'
/usr/bin/ld: /home/ramen/Programming/Shazam/Shashmaqam-Finder/AudioModule/lib/portaudio/src/hostapi/jack/pa_jack.c:1681: undefined reference to `jack_port_lock'
collect2: error: ld returned 1 exit status
make: *** [makefile:6: cppaudiocapture] Error 1
我尝试安装 libjack
sudo pacman -S jack jack2
,但没有成功。