0

WxWidegts を使用してマルチプラットフォーム デスクトップ アプリケーションを構築しようとしています。IDE として Codlite を使用しています。バージョン情報は

Codlite: リビジョン 5770 WxWidgets: 2.9.4 OS: Windows 7 コンパイラ: g++

問題は、コンパイル後にプログラムを起動しようとすると、wxbase294u_gcc_cl.dll が見つからないというエラーが表示されることです。おそらくデバッグライブラリの問題だと思ったので、ビルド構成をリリースに設定しましたが、それでも同じエラーが発生します。

私の理解では、Wxwidgets は OS にネイティブにビルドされるため、このような大きな dll に依存するべきではありません。dll は Codlite によってインストールされたライブラリに存在しますが、システムはそれを取得していないようです。

VC++ を使用してビルドする必要がありますか? ビルド設定でそれを設定する方法がわからない。

私は長い間 WebApp を使用しており、クロスプラットフォーム開発は初めてなので、間違った方向に進んでいる場合は助けてください。

前もって感謝します。

4

1 に答える 1

2

wxWidgets ライブラリ コードは、アプリケーション コードにリンクする必要があります。これには 2 つの方法があります。A) ビルド時にアプリケーションの実行可能ファイルにリンクされる静的ライブラリを使用する方法、または B) 実行時にアプリケーションにリンクされる DLL を使用する方法です。

あなたの質問から、DLLS を使用するようにアプリケーションを構築しました。

この問題を解決するには、2 つのオプションがあります。最も簡単なのは、必要な DLL をアプリケーション フォルダーにコピーすることです。

wxWidgets スタティック ライブラリを使用するように codelite オプションを変更することもできます。これを行うには、codelite の専門家が必要です。

コードライトのウェブページをざっと見てみました。codelite はデフォルトで wxWidgets DLL を使用しているようです。これを変更するには、ここで説明されているように "DIY" の方法で wxWidgets をビルドする必要がありますが、SHARED make オプションを 0 に設定します。

于 2012-11-17T12:15:32.380 に答える