上班没事开始想学学minigui,但是没有ROOT密码安装不了(找的资料都是上来就ROOT)。。。。
弄了半天总算摸索出点门路
系统:FC5
源码包:libminigui-str-1.6.2.tar.gz,minigui-res-str-1.6.tar.gz,qvfb-1.0.tar.gz
源码包解包后先安装res,书上都是直接 make install, 没有ROOT权限一定安装不了,看下res下的Makefile和config.linux文件就知道起始就是把res目录下点 bmp, cursor, font, icon, imetab文件夹复制到/usr/local/lib/minigui下顺便改文件夹属性。。。自己动手按照config.linux下到目录要求在/home/XXX下新建文件夹(感觉有些都没用到
),然后复制bmp, cursor, font, icon, imetab文件夹。这里res算是安装完成。。。。
安装libminigui,先要修改
libminigui/src/kernel/init.c文件
#ifdef __LINUX__
else {
pthread_kill_other_threads_np ();
}
#endif
删除或注释要不会报错:undefined reference to `pthread_kill_other_threads_np'
configure --prefix=/home/XXX 其他属性。。。先默认, make make install安装完成。之后写个简单都测试程序测试下
/× test.c */
#include "minigui/common.h"
#include "minigui/minigui.h"
#include "minigui/gdi.h"
#include "minigui/window.h"
int MiniGUIMain(int argc, const char *argv[])
{
MessageBox(HWND_DESKTOP, "Hellow Minigui", "hello", MB_OK);
return 0;
}
gcc test.c -lpthread -L /home/XXXX/lib -lminigui -ljpeg -lpng -lz -lttf -I /home/XXXX/include -o test
-L 指定刚编译的libminigui,lib目录下应该有 libminigui.so
-I 指定minigui的include
现在应该能编译同过运行下出错: error while loading shared libraries: libminigui-1.6.so.2: cannot open shared object file:
运行时没法中道libminigui-1.6.so.2,修改LD_LIBRARY_PATH=/home/XXXX/lib(你的libminigui.so位置)现在再运行应该是Error when opening /dev/fb0: 这样没有fb的问题吧,接着安装qvfb
(可能还会有这样的错: Can not locate your MiniGUI.cfg file or bad files!,找不到MiniGUI.cfg配置文件,可以直接从/home/XXXX/etc(刚编译过的)下复制到 ~/.MiniGUI.cfg(没有ROOT密码之能放到/home目录下(minigui
默认搜索路径:~/.MiniGUI.cfg, /usr/local/etc/MiniGUI.cfg, /etc/MiniGUI.cfg只要有一个就可以了)
qvfb装起来就简单来 configure --prefix=/home/XXX make make install,进入qvfb安装目录运行qvfb,修改MiniGUI.cfg文件
gal_engine=qvfb
ial_engine=qvfb
[qvfb]
defaultmode=和你运行的qvfb的配置一样就行
再运行刚编译好的test,继续报错: Error in loading raw bitmap fonts!
因为MiniGUI.cfg的文件路径和安装路径不一致打开修改。。。
[rawbitmapfonts]
。。。。。。
fontfile0=/home/XXXX/lib/minigui/res/font/8x16-iso8859-1.bin
。。。。。。
顺便修改cursor和其他路径
[cursorinfo]
# Edit following line to specify cursor files path
cursorpath=/home/XXXX/lib/minigui/res/cursor/(最后的“/”要加上。。。)
。。。。
iconpath=/home/XXXX/lib/minigui/res/icon/
bitmappath=/home/XXXX/lib/minigui/res/bmp/
imetabpath=/home/XXXX/lib/minigui/res/imetab/
apprespath=/home/XXX/res(程序资源路径)
总算OK了
阅读(2816) | 评论(0) | 转发(0) |