- - PR -
Visual Studio C++ .net2003におけるプロジェクト依存関係の問題
1
投稿者 | 投稿内容 | ||||
---|---|---|---|---|---|
|
投稿日時: 2003-12-30 00:19
仕事上の必要に迫られ、3週間ほど前、10年間のUNIX生活からついに
Windowsの世界に足を踏み入れたWindowsの素人です。よろしくお願いします。 IDEを使った「プロジェクト」とか「ソリューション」にもようやく慣れて、 LinuxとWindows双方で動作する次のような小さな「ソリューション」を まとめようとしていて、つまづいています。 (1) Project-1: AAA.dllを作る(Linuxでは、libA.so) (2) Project-2: BBB.dllを作る(Linuxでは、libB.so)。 (3) Project-3: AAA.dllとBBB.dllを使って、コンソール・アプリC.exeを作る。 (4) Project-4: AAA.dllとBBB.dllを使って、コンソール・アプリD.exeを作る。 (5) Project-5: AAA.dllとBBB.dllを使って、コンソール・アプリE.exeを作る。 (6) Project-6: AAA.dllとBBB.dllを使って、コンソール・アプリF.exeを作る。 (7) Project-7: AAA.dllとBBB.dllを使って、コンソール・アプリG.exeを作る。 ( Project-8: AAA.dllとBBB.dllを使って、コンソール・アプリH.exeを作る。 それぞれのProjectを順次ビルドし、C.exe〜H.exeがきちんとできる事を 確認したので、全部を通しで一気に作るため、「空のソリューション」を 作って、これらのProjectを「既存のプロジェクトの追加」で追加しました。 各Projectの依存関係は上の通りで、AAA.dllを作った後、BBB.dllが作成される よう「依存関係」を設定し、「プロジェクトのビルド順序」も上記の通り となりました。 しかし、AAA.dllを正常に作った後、BBB.dllを作るところで、リンクエラーが発生 するようになってしまいました。Debug構成時の「リンカ・コマンドライン」を 見ると、 /OUT:"N:\/lib/win/Debug/BBBd.dll" /INCREMENTAL /LIBPATH:"N:\/lib/win/Debug" /LIBPATH:"M:\\BDF\win\bdf" /DLL /DEBUG /PDB:"N:\/lib/win/Debug/BBBd.pdb" /SUBSYSTEM:WINDOWS /IMPLIB:"N:\/lib/win/Debug/BBBd.lib" /MACHINE:X86 AAAd.lib BDFd.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib \\lib\win\Debug\AAAd.lib となっており、最後の項「\\lib\win\Debug\AAAd.lib」がオープンできない ためのエラーであることが分かりました。 実際そのようなファイルはありません(ドライブ名も含まれていませんし)。 また、この最後の項は、どの*.sln, *.vcprojファイルにも含まれていません。 プロジェクト間の依存関係を全て解除すると、最後の項はリンカのコマンドライン から消えるため、正常にビルドできます。 この最後の項はどのような理由で入ってくるのでしょうか? また、この項を無効にする(入れない)ためのオプションはあるのでしょうか? 色々調べたのですが、発見できずにいます。 VS.net2003開発環境でのビルドは、Linux環境に比べかなり時間がかかるので、 バッチ処理ができないと苦痛です。 | ||||
|
投稿日時: 2003-12-30 14:52
ソリューションのバッチビルドは、devenv /build で可能ですよ! [ メッセージ編集済み 編集者: iStation 編集日時 2003-12-30 14:59 ] | ||||
|
投稿日時: 2003-12-30 22:58
IDEのバッチ・ビルドの仕組みを何とか使ってみようと思ったのですが、 このコマンドラインの方が好きです。Perlのスクリプトできれいに まとまりました。アドバイスありがとうございました。 [ メッセージ編集済み 編集者: 赤トウガラシ 編集日時 2003-12-30 23:09 ] |
1