私はアプリケーションでOpenSceneGraphライブラリを使用しています。これらを静的にリンクしたいので、バイナリでDLLを運ぶ必要はありません。 OpenSceneGraph 3.4.0のソースをダウンロードし、cmakeによってVisual Studioプロジェクトを生成しました。私はcmake GUIでDYNAMIC_OPENSCENEGRAPH
とDYNAMIC_OPENTHREADS
を無効にしました。その後、私は正常にOSGをコンパイルし、静的ライブラリ(.lib)を持っています。私のアプリケーションでは、インクルードとライブラリのディレクトリをproject properties -> VC++ Directories -> Include Directories
& Library Directories
に追加しました(私はVisual Studio 2013を使っています)。私はまた、Linker -> General -> Additional Library Directories
中のOSGの.lib年代のディレクトリを追加し、Linker -> Input -> Additional Dependencies
に必要なlibsのすべてを入力:スタティックリンクで未解決の外観Visual StudioのOpenSceneGraphライブラリ
ot20-OpenThreads.lib
osg130-osg.lib
osg130-osgUtil.lib
osg130-osgGA.lib
osg130-osgDB.lib
osg130-osgViewer.lib
osg130-osgText.lib
opengl32.lib
osgdb_3ds.lib
osgdb_freetype.lib
osgdb_png.lib
そして、私はまだOSGのシンボルの未解決の外部エラーを取得しています。私もGeneral -> Character Set
をUnicodeに設定しようとしましたが、それは助けになりませんでした(cmakeによって生成されたOSGプロジェクトでは、マルチバイト文字をとにかく持っていました)。私は今、それを解決するためのアイデアはありません。静的リンクライブラリを使ってアプリケーションをコンパイルするのは初めてのことです。
本当に助けていただければ幸いです。
p.s.申し訳ありませんコードはありませんが、私はそれを提供することはできませんが、できる限り多くの詳細を提供しようとしています。動的リンクを使用すると、問題なくアプリケーションを構築できます。