MINIGUI错误集
1:一般网上都是说动态编译MiniGUI,然后把编译好的可执行文件和MiniGUI的库,资源文件和配置文件拷贝到linux的根文件系统,但是如果是这样必然还要拷贝ld.so和lib.c.so,后者相当大,好象不太可行.我就想看看静态编译一个应用程序如何,但是出错(动态编译这个应用程序是对了的,libminigui是事先编好了的,有*.so和*.a),它报了一些数学的库函数未解析,如sqrt等,而且是libminigui.a报的,不太明白.我想有高手静态编译过吗,帮忙解决一下.多谢!!
问题找到了。
原来是在静态编译的时候没有指定lm 所以数学函数库才找不到.
arm-linux-gcc -o -static -lminigui -lpthread -lm -I /~~~/include -L /~~~/lib
肯定成功.
2:
[root@localhost bomb]# ls
bomb bomb.c bomb.o Makefile Makefile.am Makefile.in res
[root@localhost bomb]# ./bomb
AttachSharedResource: No such file or directory
Error in step 7: Can not attach shared resource!
InitGUI failure when using /usr/local/etc/MiniGUI.cfg as cfg file.
请问这是怎么回事情?谢谢
你运行的进程版的客户端程序,需要在之前运行一服务器程序mginit。
3:
交叉编译的时候,设置项build=i686-pc-linux-gnu target=ppc-linux host=i386-linux这是手册上说的 但是也有人说build=target=ppc-linux host=i686-pc-linux-gnu ,这两种有什么区别呀?哪一种对?
去网站下载资料看一下,根据开发板/系统的不同,配置也不尽相同
4:
我在皮肤窗口中要用多MiniGUI控件-进度条,在设定进度条的位置时,用到SendMessage函数是,第一个参数HWND,我理解应该是进度条控件的句柄,在皮肤窗口中用什么函数可以得到这个句柄?请指教!谢谢!
皮肤元素稍微特殊一点,需要用特定的函数来获取
HWND skin_get_control_hwnd (skin_head_t* skin,int id);
可以通过皮肤元素的id来获取其所窗口句柄
5:
请问libminigui-str-1.6.2如何交叉编译?我已正常在PC上安装了libminigui-str-1.6.2,并且成功编译了mde-1.6.0,通过qvfb在PC机可以运行了.现在我想移栽到ARM,看资料说要交叉编译libminigui-str-1.6.2,并安装,可我试过不成功.是如何交叉编译libminigui-str-1.6.2?有比较好的资料介绍吗?
小罗自己回答:没有交叉编译安装。
6:
minigui的newgal是否支持翻转屏。
支持,但仅在增值版中支持;我看过V 1.6.8的说明文档,不明白要如何配置;我想要翻转屏,可用./configure --enable-coortrans_cw 只有触摸屏转过来,LCD没转
7:
如何为主界面添加背景图片?!急,先谢了!
使用这几个函示即可完成。
hdc=BeginPaint(hwnd);
LoadBitmap (hdc, &bitmap, "xxx.jpg");
FillBoxWithBitmap (hdc, 0, 0, 200, 200, &bitmap);
UnloadBitmap(&bitmap);
EndPaint(hwnd,hdc);
8:
为什么MiniGUI源码中许多函数前都有GUIAPI?例如:
void GUIAPI SetAutoRepeatMessage (HWND hwnd, int msg, WPARAM wParam, LPARAM lParam)
在头文件common.h中,对GUIAPI的定义是
#define GUIAPI
这表示什么意思,指返回类型,还是表示可被上层应用程序调用的函数?
请高手们指教,多谢:
定义调用方式而已,比如,编译MINIGUI库的时候,如果是采用windows下的DLL方式,则定义GUIAPI __declspec(dllexport),而编译应用程序的时候,定义GUIAPI 为__declspec(dllimport)就可以了。
9:
我按照xiaocong给的步骤修改了
还是不行,现在qvfb也大不开,下边是报错信息:
QSettings: failed to open file '/usr/lib/qt-3.1/etc/settings/qt_plugins_3.1rc'
Cannot open mouse pipe
我编译程序的时候报错如下:
GDI: Error in loading vbf fonts!
GDI: Can not initialize var bitmap fonts!
DESKTOP: Initialization of GDI failure!
InitGUI failure when using /usr/local/etc/MiniGUI.cfg as cfg file.
有知道是怎么回事的麻烦给我解释下,谢谢.
小罗自己回答:Minicom.cfg 配置不对。
10:
error while loading shared libraries: libminigui-1.6.so.8: cannot open shared object file: No such file or directory
是怎么回事?
小罗自己回答:ld.so.conf 没有加入 /usr/local/lib;或者没有运行 ldconfig;这是必须的。更新库的链接。
11:
请大家帮个忙,好吗?
我在ARM92410上运行mginit出现如下:
loadSharedResource: No Such file or directory
error in step8:can not load shared resourc
先把mginit运行起来!
12:
在PC上安装MiniGUI-STR V1.6.2时libminigui和minigui的资源时都没出现错误
但make应用程序例子时出现下面错误
helloworld.c:21:31: minigui/mywindows.h: 没有那个文件或目录
make[1]: *** [helloworld.o] 错误
make[1]: Leaving directory `/root/mg-samples-str-1.6.2-host/src'
make: *** [install-recursive] 错误 1
第一个问题:你打开helloworld.c文件,把#这句注释掉,在编译
13:
刚开始学minigui,配置了1.3的环境,mde运行正常。写了一个hello.c,
gcc -o hello hello.c -lpthread -lminigui -ljped -lpng -lz -lttf
运行后,
‘HWND-DESKTOP’ undeclared;
'MB_OK'undecared
哪位指点下怎么修改?
这两个变量没有定义,HWND-DESKTOP 'MB_OK',
#define HWND-DESKTOP 150
#define MB_OK 160
14:
错误信息如下:
./mginit: error while loading shared libraries: cannot open shared object file: cannot load shared object file: No such file or directory
解决办法:/usr/lib/目录下面没有对应的库文件,或者就是没有/usr/lib/这个目录,在/usr/目录下面建立lib/目录,然后拷入对应的库文件,就可以解决这个问题。
15:
EWGAL: Does not find matched engine: fbcon.
GDI: Can not get graphics engine information!
InitGUI failure when using /usr/local/etc/MiniGUI.cfg as cfg file.
修改libminigui-1.3.3/src/newgal/fbcon下的fbvideo.c
将/dev/fb0修改成/dev/fb/0
一共有两处
16:
如果启动时提示init错误,可以考虑给lilo传递init参数:init=/bin/sh rw3.如果miniGUI启动错误,考虑可能是以下原因:A)没有启动framebuffer,即lilo.conf 中的vga=XXXX,显示模式参照表如下:640x480 800x600 1024x768 1280x1024256 0x3010x3030x3050x30732k 0x3100x3130x3160x31964k 0x3110x3140x3170x31A16M 0x3120x3150x3180x31BB)启动了framebuffer,但无fb 设备文件,可以自己创建/dev/fb0文件:mknod fb0 c 29 0C)miniGUI需要/var/tmp目录,如果不存在也会导致错误;hMainWnd = CreateMainWindow (&CreateInfo)
17:
在执行 ldconfig -r /opt/rootfs //配置根文件
后出现如下提示:
[root@dejunweb /]# ldconfig -r /opt/rootfs
ldconfig: /lib/libminigui-1.6.so.9 is not a symbolic link
ldconfig: /lib/libmgext-1.6.so.9 is not a symbolic link
ldconfig: /lib/libvcongui-1.6.so.9 is not a symbolic link
之后你会在 /opt/rootfs/etc/[ld.so.cache ld.so.conf]