LoginSignup
0
0

More than 5 years have passed since last update.

openFrameworks 0.8.4/Visual Studioで「msimg32.libが見つからないよ」と言われた時の対処

Posted at

現象

openFrameworksはv0.9.0がリリースになり、WindowsではopenFrameworks v0.9.0とVisual Studio 2015で作業することが多くなっているかと思いますが、v0.8.4のアプリケーションをビルドしなければならないケースもあります。

Windows 8.1にVisual Studio for Windows Desktop 2012をインストールした環境に、Visual Studio Community 2015をインストールすると、openFrameworks v0.8.4のビルドでエラーが起こるようになりました。

スクリーンショット 2016-01-04 9.41.11.png

msimg32.libが見つからない、と言っています。VS2012でも同じように言われます。

調べた結果、MSImg32.Libは

c:\Program Files (x86)\Windows Kits\8.0\Lib\win8\um\x86\MSImg32.Lib

に存在しているのですが、アプリケーションプロジェクト(emptyExampleなど)のライブラリディレクトリが参照しているパスに入っていません。

スクリーンショット 2016-01-04 9.55.24.png

システムの環境変数?

$(WindowsSDK_LibraryPath_x86)

を展開したパスが

c:\Program Files (x86)\Windows Kits\8.0\Lib\winv6.3\um\x86

になっています。私の環境では、winv6.3ディレクトリは存在してません。

解決策

プロジェクトのライブラリディレクトリにwin8を書き足すのは面倒ですし、$(WindowsSDK_LibraryPath_x86)を副作用なく書き換える方法がわからないので
win8ディレクトリをwinv6.3ディレクトリとしてコピーすればいいのでは、と考えました。

スクリーンショット 2016-01-04 10.17.21.png

これで動くようになりました。
ショートカット作成では解決しませんでした。

なお、Visual Studio 2015でopenFrameworks v0.8.4をビルドするにはアプリケーションプロジェクト(emptyExampleなど)とopenFrameworksLibプロジェクトの両方のプロパティで、プラットフォームツールセットを

  • Visual Studio 2012 (v110)

に設定すればビルドすることはできます。

スクリーンショット 2016-01-04 10.02.45.png

ところで何故かVS2013までは、プロジェクトのデフォルトで「複数プロセッサによるコンパイルを有効にする」がオフになっててビルドに果てしない時間がかかってましたが、VS2015ではオンになっててすこし設定が楽になりましたね。

参考:

selflashさん VisualStudio2013でopenFrameworksをビルドする

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0