wxWidgets里的wxGTK不基于GNOME和KDE,因此可以独立运行与这2个桌面环境,只需要依赖GTK+和wxGTK库,由于这2个桌面环境一般都会安装GTK+库,而wxGTK库则需要单独安装,因此为了简化安装,可以将wxWidgets配置为静态编译。
--Linux distribution:Ubuntu 10.04.3 LTS (Lucid Lynx)
--wxWidgets version:2.8.12
--gcc version:4.4.3
1、编译静态版wxWidgets
在Linux下配置wxWidgets的静态编译,需要在编译wxWidgets的时候就指定静态编译。
slyar@slyar-desktop:~$ cd /opt
//创建一个文件夹编译静态版的wxWidgets
slyar@slyar-desktop:/opt$ sudo mkdir sbuildgtk
slyar@slyar-desktop:/opt$ cd sbuildgtk
//携带--disable-shared指定静态编译
slyar@slyar-desktop:/opt/sbuildgtk$ sudo /home/slyar/wxWidgets-2.8.12/configure --with-gtk --disable-shared
slyar@slyar-desktop:/opt/sbuildgtk$ sudo make
如此静态版的wxWidgets就编译完成了
2、使用静态编译生成bin文件
slyar@slyar-desktop:~$ cd /aui
slyar@slyar-desktop:~/aui$ g++ auidemo.cpp `/opt/sbuildgtk/wx-config --libs --cxxflags` -o saui_gtk
slyar@slyar-desktop:~/aui$ ./saui_gtk
3、查看bin文件,发现静态编译后的bin文件比动态编译大了许多,不过可以使用压缩的方法减小文件大小