![](http://oshiete.xgoo.jp/images/v2/pc/qa/question_title.png?e8efa67)
OpenNIをvisual studio2008で動作させようとしています。
そこで以下のメッセージが出て動作しません。インクルードファイルのリンクはしたつもりなのですが、参照できていないのでしょうか。
1>main.obj : error LNK2001: 外部シンボル "__imp__oniDeviceCreateStream" は未解決です。
1>main.obj : error LNK2001: 外部シンボル "__imp__oniFrameRelease" は未解決です。
1>main.obj : error LNK2001: 外部シンボル "__imp__oniDeviceIsPropertySupported" は未解決です。
1>main.obj : error LNK2001: 外部シンボル "__imp__oniStreamGetSensorInfo" は未解決です。
1>main.obj : error LNK2001: 外部シンボル "__imp__oniDeviceClose" は未解決です。
1>main.obj : error LNK2001: 外部シンボル "__imp__oniShutdown" は未解決です。
1>main.obj : error LNK2001: 外部シンボル "__imp__oniGetExtendedError" は未解決です。
1>main.obj : error LNK2001: 外部シンボル "__imp__oniWaitForAnyStream" は未解決です。
1>main.obj : error LNK2001: 外部シンボル "__imp__oniInitialize" は未解決です。
1>main.obj : error LNK2001: 外部シンボル "__imp__oniStreamStart" は未解決です。
1>main.obj : error LNK2001: 外部シンボル "__imp__oniDeviceGetInfo" は未解決です。
1>main.obj : error LNK2001: 外部シンボル "__imp__oniStreamIsPropertySupported" は未解決です。
1>main.obj : error LNK2001: 外部シンボル "__imp__oniDeviceOpen" は未解決です。
1>main.obj : error LNK2001: 外部シンボル "__imp__oniDeviceGetSensorInfo" は未解決です。
1>main.obj : error LNK2001: 外部シンボル "__imp__oniStreamDestroy" は未解決です。
1>main.obj : error LNK2001: 外部シンボル "__imp__oniStreamStop" は未解決です。
1>main.obj : error LNK2001: 外部シンボル "__imp__oniStreamReadFrame" は未解決です。
1>main.obj : error LNK2001: 外部シンボル "__imp__oniDeviceIsCommandSupported" は未解決です。
1>C:\Users\sakata\Documents\Visual Studio 2008\Projects\openNI_test\Release\openNI_test.exe : fatal error LNK1120: 外部参照 18 が未解決です。
以上です。
追加のインクルードディレクトリには
C:\Program Files\OpenNI2\Include\Win32
C:\Program Files\OpenNI2\Include
追加のライブラリディレクトリには
"C:\Program Files\OpenNI2\Lib"
を追加しました。
環境変数はOpenNIをインストールしたときに勝手に追加されたので間違っていないと思います。
環境は以下です。
OS:Windows7 32bit
OpenNIはOpenNI2を入れています。(2013年6月現在で最新?)
もちろん32bit版です。
動作カメラはXtionです。ドライバインストール済みで、サンプルプログラムの.exeファイルでの動作は確認しています。
他の質問でx64でビルドすれば通るなどと書いてありますが、それは64bit版OSの話ですよね?
原因わかる方、回答お願いします。
No.1ベストアンサー
- 回答日時:
>1>main.obj : error LNK2001: 外部シンボル "__imp__oniDeviceCreateStream" は未解決です。
で、追加のライブラリファイルは指定していますか?
C:\Program Files\OpenNI2\Libの下にあると思われる.libファイルをリンクに追加しないとダメかと思われますが。
この回答への補足
追加のライブラリファイルを指定したところ解決しました!
opencvでも同じことをしたはずなのにすっかり忘れていました。
回答ありがとうございました!
No.2
- 回答日時:
>そこで以下のメッセージが出て動作しません。
インクルードファイルのリンクはしたつもりなのですが、参照できていないのでしょうか。「インクルードファイルのリンクはしたつもりなのですが、」と書かれていますが、インクルードファイルはリンクするものじゃありません(正直質問を見たときインクルードファイルをシンボリックリンクかハードリンクでもしたのかと思いました)。
よくある勘違いの「ライブラリをリンクしたつもり」なのでしょうが、インクルードファイルをインクルードしてもライブラリは勝手にリンクされたりしません。
追加のライブラリディレクトリはライブラリを探すディレクトリを指定してるだけで勝手にそこから必要そうなライブラリを探し出しリンクする事もしません。
この回答への補足
なるほど!追加の依存ファイルとしてlibファイルを追加しなければならなかったんですね。
C:\Program Files\OpenNI2\Lib\OpenNI2.libを追加の依存ファイルに追加したところコンパイルが通りました!
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- C言語・C++・C# 未解決の外部シンボル _printfが関数_mainで参照されました 1 2022/09/18 15:28
- その他(プログラミング・Web制作) Python でWindowsのショートカット(.lnk)のプロパティを参照したい 1 2023/02/01 15:09
- C言語・C++・C# leetcode 155 minstack 1 2022/05/07 16:43
- JavaScript EasyUIのSubGrid(jquery)におけるObjectに入れた連想配列について 1 2022/05/02 11:21
- その他(ソフトウェア) 至急!500 Internal Server Errorこのエラーはなんですか?原因と解決法教えてく 4 2022/06/21 15:50
- C言語・C++・C# プログラミングの授業の課題です 1 2023/01/17 22:15
- MySQL 参考書に従って入力したつもりでしたが、最後はエラーがでました。 1 2022/09/28 03:45
- C言語・C++・C# c言語の問題の説明、各所ごとに 5 2023/07/26 11:03
- その他(プログラミング・Web制作) python fbprophetについて 1 2022/09/29 19:44
- C言語・C++・C# 競技プログラミングに関する質問です。 3 2022/04/03 19:51
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
外部依存関係について
-
Hello,World が出力できません...
-
エラー 未解決の外部シンボル
-
C++ Builderでユニットの追加
-
外部シンボル" ~~"は未解決で...
-
python エラー
-
エクセルのエラーメッセージ「4...
-
<unistd.h>をVisualStudioでつ...
-
unsigned long long 型のフォー...
-
コンパイルできません。
-
C言語でヘッダファイルにグロー...
-
Excelのエラーで困ってます。
-
fortranでプログラムを実行する...
-
適切な変換関数が存在しない???
-
sys/time.hのインクルードがで...
-
visual studio2019でデバッグが...
-
VBAを何回も作り直して、容量が...
-
eclipseでプログラムが実行でき...
-
1 つ以上の複数回定義されてい...
-
定数式とはどういう意味でしょ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
外部依存関係について
-
LNK2019: 外部シンボル どのよ...
-
外部シンボルの未解決のエラー
-
LNK2001(Pro*c)
-
外部シンボル" ~~"は未解決で...
-
ステータスバーを作ろうとして...
-
popen・pcloseについて
-
コンパイルエラー
-
error LNK2001について
-
ilink32について。'__setargv__...
-
「外部シンボルが未解決」につ...
-
IP Helper APIを使うとエラーが...
-
パブリックシンボルとは?
-
リンカのエラー
-
VC++2008でのサンプルプログ...
-
C++でのエラー LNK2001
-
VC++始めたんですが、エラーの...
-
ビデオキャプチャ(VC++超初心...
-
C言語でレジストリ取得「未解決...
-
C言語のエラー LNK1120: 外部参照
おすすめ情報