1

カメラ Bumblebee2 に libdc1394-2.2 を使用しています。ただし、以下のコードで帯域幅を解放しようとすると:

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」に含まれており、このヘッダーはメイン プログラムに含まれています。

誰かが問題を解決する方法を知っていますか?

4

1 に答える 1

0

その関数は確かに dc1394-2 ストリームiso.hヘッダー ファイルにリストされており、複雑な条件付きコンパイルがないため、翻訳単位に表示されない可能性があります。

問題になる可能性のあることの1つは、かなり一般的な名前です。コンパイルステートメントをiso.h変更して、ロードされるヘッダーをリストするフラグを含めるようにします。読み込んでいるヘッダー ファイルが実際のものではない可能があります。g++-Hiso.hdc1394

ロングショット、私は知っていますが、可能性を割り引くためだけにチェックする価値があります.

于 2015-07-31T08:17:51.757 に答える