2013-03-09 54 views
2

我想在Debian Wheezy 64位GNU/Linux上創建一個PortAudio應用程序。我閱讀了關於如何添加庫的文檔,並且編譯時沒有錯誤。初始化PortAudio:主機錯誤

現在,當我想用​​這個腳本初始化PortAudio:

#include <stdio.h> 
#include "portaudio.h" 

int main(){ 
    PaError err = Pa_Initialize(); 
    if(err != paNoError){ 
     fprintf(stderr, "Pa_Initialize error: %s\n", Pa_GetErrorText(err)); 
     return 1; 
    } 
    return 0; 
} 

我得到以下輸出:Pa_Initialize error: Host error.

當我嘗試運行Audacity的,這也是基於PortAudio我得到以下錯誤:

ALSA lib pcm.c:2217:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.rear 
ALSA lib pcm.c:2217:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.center_lfe 
ALSA lib pcm.c:2217:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.side 
ALSA lib pcm_dmix.c:957:(snd_pcm_dmix_open) The dmix plugin supports only playback stream 
audacity: symbol lookup error: audacity: undefined symbol: Pa_GetStreamHostApiType 

,當我嘗試調用這個函數:

const PaHostErrorInfo* hostError; 
hostError = Pa_GetLastHostErrorInfo(); 

我得到以下錯誤:Undefined reference to 'Pa_GetLastHostErrorInfo'

我怎麼能初始化PortAudio正確的方式,什麼是錯我的主機; PortAudio是否要求我對PulseAudio做些什麼?

我已經試過這個主題的底部解決方案http://ubuntuforums.org/showthread.php?t=1756822,因爲我認爲它與庫文件的配置有關。但是這也不起作用,它不會改變錯誤。

+0

你通過[Pa_Initialize文檔首頁](http://audacity.sourcearchive.com/documentation/1.3.12-16/pa__front_8c_a0db317604e916e8bd6098e60e6237221.html#a0db317604e916e8bd6098e60e6237221) – 2013-03-09 19:38:03

+0

是的,我沒有,但它並沒有幫我解決了問題,它沒有澄清錯誤。 – tversteeg 2013-03-09 19:40:27

+0

閱讀'符號查找錯誤:audacity:未定義的符號,它聽起來像庫文件有問題 - 就像如果audacity編譯與PortAudio標頭不匹配/ usr/lib中的.so文件(也許是一個不同的版本?)... – neodelphi 2013-03-09 20:08:37

回答

1

一段時間後,研究我給這個問題並嘗試從源代碼重新安裝PortAudio,方法是將其刪除並重新構建。幸運的是,這次它成功了!

所以我想這是由一個bug在新版本中得到解決。

2

的audacty錯誤看上去就像是配置錯誤。爲了讓您的問題的底部,嘗試調用此函數來找出主機錯誤是:

常量PaHostErrorInfo * Pa_GetLastHostErrorInfo(無效)

http://portaudio.com/docs/v19-doxydocs/portaudio_8h.html#aad573f208b60577f21d2777a7c5054e0

+0

當我嘗試把這個:'常量PaHostErrorInfo * hostError = Pa_GetLastHostErrorInfo();'我得到以下錯誤:'未定義參考「Pa_GetLastHostErrorInfo'',它的確看上去就像是錯誤配置。 – tversteeg 2013-03-10 10:59:08

+0

看起來像這裏和大膽的動態鏈接問題。就像它無法找到PortAudio庫。 – 2013-03-10 16:32:31

+0

嗯,你會想到,但我可以調用我的問題中所述的函數。 – tversteeg 2013-03-10 17:31:51