一、wxWidgets介绍
wxWidgets标榜使用其函式库所开发的软件只需要对源代码做少量更改(或者完全不用更改),就能在各种不同的作业平台上编译并执行。目前可支援Windows、Apple Macintosh、Linux/Unix(转译成X11、GTK+、Motif等函式库)、OpenVMS、以及OS/2。嵌入式的版本也正在开发中。
函数库本身使用C++语言开发,但也有其它不同编程语言的绑定,例如:Python(wxPython)、Perl(wxPerl)、Ruby(wxRuby)、Smalltalk(wxSmalltalk)、Java(wx4j)、甚至是JavaScript(wxjs)等。
--------来源于wiki
曾经在Windows和Linux上使用过wxwidgets。现在想试一下Mac OS的开发,懒得学习Objecitive-C,如是准备试一下使用wxWidgets在Mac OS上的开发。
二、编译与安装
1:使用configure/make 来编译
安装过程如下:
wget https://sourceforge.net/projects/wxwindows/files/2.9.3/wxWidgets-2.9.3.tar.bz2/download wxWidgets-2.9.3.tar.bz2
tar -zxvf wxWidgets-2.9.3.tar.bz2
#建立编译目录
mkdir cocoabuild
cd wxWidgets-2.9.3
../configure --disable-shared --disable-debug --enable-threads --enable-monolithic --enable-unicode --without-libjpeg --without-zlib --without-libtiff --without-expat --without-regex --with-opengl --disable-shared -with-osx_cocoa --disable-shared --disable-compat24 --with-macosx-sdk=/Developer/SDKs/MacOSX10.7.sdk --with-macosx-version-min=10.7 CFLAGS="-arch x86_64" CXXFLAGS="-arch x86_64" LDFLAGS="-arch x86_64" OBJCFLAGS="-arch x86_64" OBJCXXFLAGS="-arch x86_64" --with-opengl --disable-shared cc=gcc-4.2 ccxx=g++-4.2
make;make install
以上的参数是按照静态库来编译,而且不支持STL,一下的编译参数是动态库编译方式,支持STL。 By the way, 查看支持哪些configure的参数。可以运行: ../configure --help来查看。
../configure --enable-shared --enable-stl --disable-debug --enable-threads --enable-monolithic --enable-unicode --without-libjpeg --without-libtiff --without-expat --without-regex --with-opengl -with-osx_cocoa --disable-compat24 --with-macosx-sdk=/Developer/SDKs/MacOSX10.7.sdk --with-macosx-version-min=10.7 CFLAGS="-arch x86_64" CXXFLAGS="-arch x86_64" LDFLAGS="-arch x86_64" OBJCFLAGS="-arch x86_64" OBJCXXFLAGS="-arch x86_64" --with-opengl cc=gcc-4.2 ccxx=g++-4.2
2:使用xcode来编译
在解压目录的build/osx/下有xcode 的工程文件。我的环境如下:
Mac OS X 10.7
XCode 4.2+SDK 10.7
gcc: i686-apple-darwin11-llvm-gcc-4.2 (GCC) 4.2.1
编译出现错误信息如下:
Unsupported compiler 'GCC 4.2' selected for architecture 'x86_64'
对xcode 的环境不熟悉,试图修改工程属性没有成功。
1:安装完成后,确认wxWidgets环境OK
wx-config --version
可以看到wxWidgets的版本。
2: 运行DEMO
在编译目录cocoabuild下的sample目录下,有自带sample的makefile
cd cocoabuild/samples
make
编译通过后,随便选择一个Demo,就可以看到运行的效果。 不用Objective-C,一个原生的Mac OS应用程序便建立了。
四、Xcode 环境配置(TBD...)