2013-02-26 80 views
1

我正在使用libdc1394-2.2用於相機Bumblebee2。 然而,當我嘗試釋放帶寬與下面的代碼:未定義的引用libdc1394

if (dc1394_iso_release_bandwidth(camera, val)==DC1394_SUCCESS) 
    printf("Succesfully released %d bytes of bandwidth\n", val); 

拋出了一個錯誤:

undefined reference to `dc1394_iso_release_bandwidth' 

但是,函數「dc1394_iso_release_bandwidth」,包括在「iso.h」,這標題包含在主程序中。

有人知道如何解決問題?

回答

0

你是對的,該函數確實在dc1394-2流iso.h頭文件中列出,並且沒有複雜的條件編譯可能導致它不出現在你的翻譯單元中。

一件事可以是一個問題,是相當普遍的名字iso.h - 我會修改你的g++彙編語句包括-H標誌,應列出頭被裝起來。這是可能iso.h您正在加載的頭文件實際上不是dc1394之一。

我知道一個遠射,但值得檢查,如果只是爲了打折的可能性。