环境:ubuntu16.4 kylin 32位(一开始是64位的不过后来由于各种各样的问题,换成32位了),不过基本上我遇到的所有问题这篇博客都写了。所以按照本篇博客安装,有很大几率安装成功。
在32位环境下安装时,按照本博客安装时,可能不会遇到那么多错误,跳过即可。反正本人安装成功了~~~
在64位下安装,不保证能成功!!
一、文件的下载
安装前准备 :
sudo apt-get install build-essential 包含许多基本库
点此链接下载 下面的都要下载
二、
建立一个文件夹,将上面的文件放在那
2.1首先安装依赖库:
tar zxf zlib-1.2.2.tar.gz #编译zlib
cd zlib-1.2.2/
./configure
sudo make
sudo make install
cd ..
同样的步骤,安装 libjpeg
tar zxf jpegsrc.v7.tar.gz
同样的步骤 安装libpng
tar zxf libpng-1.2.37.tar.gz
此处configure为 ./configure --enable-shared
注意 如果此处出现报错
configure: error: ZLib not installed
那么回到安装zlib的界面 用下面这个指令安装
CFLAGS="-O3 -fPIC" ./configure //使用64位元的方法进行编译
同样的步骤 安装freetype
tar xzf freetype-2.3.9-fm20100818.tar.gz
安装qvfb2
./configure时需要qt3的库,解决办法:
sudo vim /etc/apt/sources.list 添加包含libqt3的库,
deb http://cz.archive.ubuntu.com/ubuntu precise main
添加完后
sudo apt-get update 更新库
这时
安装 sudo apt-get install libqt3-mt 库,提示依赖库没有被包含
sudo apt-get -f install 包含依赖的库
在
sudo apt-get install libqt3-mt
sudo apt-get install libqt3-mt-dev
安装完毕
如果报错
checking for X... configure: error: Can't find X includes. Please check your installation and add the correct paths!
那么 sudo apt-get install libx11-dev xorg-dev
有可能遇到如下报错:
checking for Qt... configure: error: Qt (>= Qt 3.0.3) (headers and libraries) not found. Please check your installation!
百度下载:qt-devel-3.3.8-4.fc7.i386.rpm安装包。
然后:
sudo apt-get install alien
sudo alien qt-devel-3.3.8-4.fc7.i386.rpm
dpkg -i --force-overwrite qt-devel-3.3.8-4.fc7.i386.deb
./configure --with-qt-includes=/usr/lib/qt-3.3/include --with-qt-libraries=/usr/lib/qt-3.3/lib --with-qt-dir=/usr/lib/qt-3.3
依然出现缺少qt3的库
sudo ln -s /usr/include/qt3 /usr/lib/qt3/include 建立动态链接
重新configure 成功
sudo make
报错
百度修改
修改为
编译通过
sudo make install 安装完毕
2.2安装minigui
安装 minigui-res-be-3.0.12 方法同上
1. tar zxf libminigui-3.0.12-linux.tar.gz
./configure
sudo make
sudo make install
2.
编译出错,提示
用vim修改
修改如下
修改后重新 sudo make
编译通过
sudo make install
在如下路径新建一个文件
3. 安装minigui组件
tar zxf libmgplus-1.2.4.tar.gz
./configure
sudo make
sudo make install
报错:
make[4]: *** [lf_fashion.lo] Error 1
make[4]: Leaving directory `/home/sun/minigui/libmgplus-1.2.4/src/api'
make[3]: *** [all-recursive] Error 1
make[3]: Leaving directory `/home/sun/minigui/libmgplus-1.2.4/src/api'
make[2]: *** [all-recursive] Error 1
make[2]: Leaving directory `/home/sun/minigui/libmgplus-1.2.4/src'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/home/sun/minigui/libmgplus-1.2.4'
解决方法:
这主要是64位机上编译32位的问题,打开/libminigui-3.0.12-linux/include/common.h 做如下修改
:将typedef unsigned int HICON 改为 typedef unsigned long HICON 然后重新编译libminigui。 解决
继续向下编译 全部 ./configure sudo make sudo make install
tar xzf libmgi-2.0.4.tar.gz
libmg3d-1.0.2.tar.gz
libmgutils-1.0.4.tar.gz
libmgp-1.2.2.tar.gz
libmgncs-1.0.8.tar.gz 再次遇到 _va.va = va;
修改:
需要mgplus,用vim注释掉这一句,编译成功
4.编译mg-samples-3.0.12.tar.gz
方法 ./configure sudo make sudo make install
再次遇到缺少mgplus/mgplus.h 依然用vim注释掉
出现错误:
/usr/local/lib/libminigui_ths.so: undefined reference to `WndClientRect'
/usr/local/lib/libminigui_ths.so: undefined reference to `WndRect'
结局方法:
将WndClientRect与WndRect函数前面的inline删掉。重新编译
编译成功
此时会看到编译成功后的执行文件
安装成功
运行 ./helloworld 安装成功