複数のライブラリ(.lib)ファイルを1つのライブラリ(.lib)ファイルにまとめる方法

複数のライブラリ(.lib)ファイルは、1つにまとめる事が出来る。
方法は、コマンドラインからVCに付属のLIB.exeを使用する。
次のようなコマンドとなる。

lib /OUT:c:\xxx\yyy.lib c:\zzz\*.lib


xxx\yyy の方が出力先ファイルパス。
zzz の方が、入力元の複数のライブラリファイルを入れたディレクトリ。

世の中には、たくさんのライブラリからなるSDKなんかもあるので、関連するライブラリファイルをまとめておくと、便利。

同じ方法で、objファイルをまとめたライブラリファイルを作成する事も出来ると思う。
(というか、こっちの方が正当な使い方かな?)

ちなみに、LIB.exeは、VCのインストール先ディレクトリにインストールされる。

Microsoft Visual Studio XXX\VCX\Bin

の中。

実行するには、MSPDBxx.DLL が必要になる。
VC6なら、 MSPDB60.dll。
VC71なら、 MSPDB71.DLL。

このDLLは、VSインストール先の CommonX\IDE フォルダに入っているので、実行する前にBinディレクトリにコピーしておく必要がある。

[追記 09/10/10]
Visual Studio 2008(VC9) では、bin ディレクトリに MSPDB80.dll をコピーすると、
通常のプログラムのコンパイル時に C1902 エラーが出るようになる。
一時的にコピーして使い終わったら削除するか、lib.exe を別ディレクトリに
コピーして、使用した方がよさそう。。。

参考サイト:http://msdn.microsoft.com/ja-jp/library/e17b885t(VS.80).aspx
[PR]
by isoq | 2008-08-27 16:25 | C/C++/Win32
e87.com(千趣会イイハナ) 花を贈るなら日比谷花壇
<< IIS Webサイトの発行・配... Windows Server ... >>