日記

内容の正しさは保証しません

wxWidgetsを使う

環境
Windows10, msys2, clang, wxWidgets3.0.4

1. ビルド

上手くビルドできたようなのでコマンドを書いておく

./configure CC="clang" CXX="clang++ -std=c++17 -DwxNO__T -DHAVE_TYPE_TRAITS -Wno-narrowing" \
--disable-shared --enable-monolithic --enable-stl --with-cxx=17 -disable-threads
  • Wno-narrowingをつけると、一つ前の記事のエラーが消える。(clang君が-Wc++11-narrowingとか言うからてっきりそっちかと…)

注意
必ず環境変数MSYSTEMにMINGW64かMINGW32をセットしておく

参照
nyaocatの日記 2016-04-21
wxWidgets をビルドする | 雑記帳
wxWidgets 2.9.3 を C++11 としてコンパイルする (Mac OS X 10.7 Lion) - Qiita

2.テスト

#include <wx/wxprec.h>
#include <wx/wx.h>

class Hello : public wxApp
{
public:
	virtual bool OnInit();
};

IMPLEMENT_APP(Hello)

bool Hello::OnInit()
{
	wxMessageBox(wxT("こんにちわ"), wxT("メッセージ"), wxOK);
	return false;
}
clang++ -c -o hello.o hello.cpp $(wx-config --cxxflags) -std=c++17
clang++ -o hello hello.o $(wx-config --libs) -std=c++17
./hello

実行結果
f:id:CitrusJ9N:20180512185618p:plain

参照
wxWidgets
My Future Sight for Past: Install wxWidgets 2.8.12 from source on Cygwin with MinGW-w64