XCode3.2を搭載したMacOSX10.6で簡単なwxWidgetsアプリをコンパイルしています
リンカは、シンボル_main
が2回定義されている というエラーを返します。
- main.mmに1回
- test_app.cppファイルに1回。
マクロをコメントアウトした後:
Implement_App(TestApp)
エラーはなくなり、コンパイルおよびリンクされ、アプリケーションを実行できました。
私はこれをどこにも見つけていないので、これについて何かアイデアはありますか?
XCode3.2を搭載したMacOSX10.6で簡単なwxWidgetsアプリをコンパイルしています
リンカは、シンボル_main
が2回定義されている というエラーを返します。
マクロをコメントアウトした後:
Implement_App(TestApp)
エラーはなくなり、コンパイルおよびリンクされ、アプリケーションを実行できました。
私はこれをどこにも見つけていないので、これについて何かアイデアはありますか?
IMPLEMENT_APP
wxWidgets で使用されるマクロで、プログラムが Windows、Mac、*nix などでコンパイルされるかどうかを気にすることなく、プログラムへのエントリ ポイントを作成します。この結果、定義する必要IMPLEMENT_APP
がmain
あります(または などの同等のものWinMain
)。
IMPLEMENT_APP_NO_MAIN
マクロが役立つ場合があります。IMPLEMENT_APP_XXX
wx/app.hの他の関数も確認してください。
wxApp 概要のこの段落も少し役に立ちます。
IMPLEMENT_APP(appClass) の使用に注意してください。これにより、wxWidgets は、wxWidgets の初期化の適切な時点でアプリケーション オブジェクトのインスタンスを動的に作成できます。以前のバージョンの wxWidgets は、グローバル アプリケーション オブジェクトの作成に依存していましたが、アプリケーション オブジェクトの構築時に必要なグローバル初期化が実行されていない可能性があるため、これは推奨されなくなりました。