私はWindows開発には初めてです。私はOS Xで作成したアプリケーションをWindows 10に移植しています。私はVisual Studio 2015 Community Editionを使用しています。私の人生の間、私はWindowsでopengl32とリンクできません
プロジェクトを実行するには、私はGL 4.5をターゲットにしているので、私は理解しているとおり、GLFWとWindowsで理解する必要があります。
私はglfwとglewライブラリを持っています。私もCygwinを使用しているので、libsをusr/local /(bin | lib | include)にインストールして、これらのlibsのOS Xで使用するフォルダ構造を模倣しています。
私が持っている問題は、openglライブラリ自体です。昨日までは、私は私のプロジェクトには、次のVisual Studioの設定でGLFWウィンドウをコンパイルし、初期化を取得する
を管理していた:
プロジェクト - >プロパティ - >:
C++ - >全般:
:
追加はインクルードディレクトリ
リンカー - >一般:
追加のライブラリディレクトリ:
C:\cygwin64\usr\local\lib
C:\cygwin64\usr\local\bin
リンカー - >入力:
opengl32.dll
glew32s.lib
glfw3.lib
注意すべき最初の事はということです私はopengl32とリンクしていた.dllではなく、.lib。 Windows SDKをインストールすると、Program Files/Microsoft SDKs/Windows(x86など)にopengl32.libがあることを示す質問や投稿をオンラインで見ました。これは私には当てはまりません。私はWindows 10 SDKを再インストールしただけで、静的でも動的でもないOpenGLライブラリはどこにもインストールしません。
私は、OpenGL dllがWindows/System32から来ているのはかなり確信しています。なぜなら、これはマシン全体で唯一のopengl libがあるからです。
私は、C:\Windows\System32
がリンカの追加のライブラリディレクトリセクションにあったと思います。私は一週間前にたくさんの闘いでこれを設定していたので、私は思うように言う。それ以来、私はうまく開発することができました。
私がしたことは、私の仕事をgitブランチにコミットし、別のブランチに切り替えてそのブランチにマージすることでした。マージ後、すべてのVisual Studioリンカ/ C++設定が消去されました。だから私は上に示したように、それらを再現しなければならなかった。
LNK1107 invalid or corrupt file: cannot read at 0x2E0 OpenVRTest C:\Windows\System32\opengl32.dll
そして、私は明らかに半分のものを、それを含まない場合GLFWで未解決です:
は今何が起こるかは、私がC:\Windows\System32
とOPENGL32.DLLを含む場合VSが出してくれるということです。
この機能を再度利用する方法に関するヒントはありますか? それがうまく働いていた...私には意味がありませんし、それがサイドノートとしても、このOPENGL32.DLL
で正常に動作している必要があり、人々は、Windowsをインストールすることを主張する理由は、私はわからないんだけどSDKはgl libの静的バージョンをインストールします。少なくともそれは私のためではありません。
ありがとうございます!
この情報を手に入れましょう。 Windowsには、拡張子 ".lib"の2種類のスタティックライブラリがあります。 1つは静的リンク(これは@SaldaVonSchwartzが探している種類)に使用され、もう1つはダイナミックリンク(プロセスを実行してDLL内のコードを共有する)に使用されるインポートライブラリです。 SaldaVonSchwartz、私の友人、あなたは正しいです。私はVisual Studio 2017をインストールしており、それには4つのSDKバージョンが付属しています。あなたが探している静的ライブラリはありません。ブラ – BoiseBaked