このトピックに関して複数の投稿を読みましたが、静的にリンクされたexeをビルドすることはできませんでした。Visual StudioスタンドアロンExeの静的リンク
私は、次のしている私の リリース設定(x64)の中:
Configuration Properties -> General : Use of MFC - Use MFC in a Static Library
Configuration Properties -> C/C++ -> Code Generation : Runtime Library - Multi-threaded (/MT)
Configuration Properties -> Linker -> Command Line : Additional Options - I have all the required Windows libs "kernel32.lib", etc. (as use of MFC removed them from the "All Options" window above)
Configuration Properties -> Manifest Tool -> Input and Output : Embed Manifest - No
注Configuration Properties -> Linker -> Input
であること私のプロジェクトで使用しているlibファイルは5つあります。たとえば、glfw3.lib
、完全最適化(/ Ox)を使用しています。
は、プロジェクトを構築し、自分自身をexeファイル実行した後、私はエラーが表示さ「glfw3.dllが見つからなかったため、コードの実行を続行することはできません...」など
私はそれが必要であることがわかりますdependencywalkerを使用しますlibsに関連するdllは、もちろん見つからない。
これを行う方法を誤解していますか、それとも間違っている可能性がありますか?
使用しているサードパーティライブラリが静的にリンク可能であるかどうかはどのように分かりますか。動的にlibファイルとdllを使用すると、静的なものはどうなりますか? – Alexander
一般に、この情報はライブラリのベンダーによって提供される必要があります。しかし、経験則として、2つの.libファイル(1つは小さい、もう1つは大きい)、大きなものは静的リンクのためのものです。 .libファイルが1つしかなく、.dllファイルよりもはるかに小さい場合は、動的リンク用です。 –