windows下面编译minigui的一些大致步骤:
1,首先要的几个东东啦(当然wvfb是以后编译运行你写的程序要用的啦): minigui的源码包,minigui资源文件,线程库pthread 相关的头文件和库文件(就这5个啦pthreadVC1.libpthreadVC1.dll,semaphore.h、pthread.h ched.h),当然还要VC集成开发环境,//没有7.0,就拿6.0说吧,不过还是喜欢7.0的界面:)//最后要有wvfb。
2.要开始编译minigui啦: 先建好lib和include2个文件夹,路径随意,不过我在linux下面用成思维定式啦,就建了在了c:/usr/include 和c:/usr/lib下面啦,然后把phread的相关文件分别丢进去喽, 接下来用ue把minigui-win32.dsp 改成for dos,把源码build目录下的config-win32.h拷贝出来替换上一级目录下的mgconfig.h。
3.用vc6.0打开minigui-win32.dsp,接着要对此工程进行做如下配置: 1)执行菜单 project->setting, 打开工程设置对话框, 在 setting for 中选择All Configurations 选项;选择属性页 C/C++:在 Category 设置中,选择 Preprocessor, 修改 Addtionals include directories 项, 在其中添加 pthread 的头文件所在的路径,如 c:/usr/include。 2)接第一步,选择属性页 Link:在 Category 设置中,选择 Input 选项,修改Addtionals library path 项, 在其中添加 pthreadVC1.lib 所在的路径,如 c:/usr/lib。 3)如果同志们要以后在自己的程序里用到输入法的话就要看下面这步喽: 打开 Source Files->minigui->sysres->mgetc.c 文件,指定拼音输入法资源文件所在的位置 static char* IMEINFO_valueS[] = {"/路径/" ", "1", "pinyin"}; 记住啦,路径要填绝对路径,比如我的资源文件是放在c:/usr/res,你需要指定到输入法imetab,即c:/usr/res/imetab。
4.现在可以执行编译了; 编译后在 build 目录下生成 MiniGUI 动态库。 到此minigui编译完成:)
是不是写的太傻瓜啦? 我也比较汗 -_-|||| 接下来说说编译示例程序helloword的步骤! 上面编译完后不是在build目录下生成了minigui.lib和minigui.dll两个文件。 先把这2个文件拷贝出来,放到c:/usr/lib目录下面。 还要确保helloword.c所在目录下面有pthreadVC1.lib。 把minigui源码里的头文件全考出来放到c:/usr/include里。
用vc6.0打开helloword。c文件, 执行菜单 project–>setting, 选择 All Configurations 选项;选择属性页 C/C++:在 Category 设置中,选择 Preprocessor,修改 Addtionals include directories 项,在其中添加 c:/usr/include。 5. 接上步,选择属性页 Link: 在 Category 设置中,选择 Input 选项,修改Addtionals library path 项,在其中添加 c:/usr/lib;在 Object/Library Modules 中添加 pthreadVC1.lib libminigui-1.6.lib 、libmgext-1.6.lib 或 minigui.lib( 不同的编译方式生成的库名可能不同,根据具体生成的 MiniGUI 库名来指定)我这就添加minigui.lib啦。
接着可以编译啦,生成 helloworld.exe。 运行wvfb。 运行helloworld。exe,就可以在wvfb窗口里看见运行结果啦 接下来用ue把minigui-win32.dsp 改成for dos,把源码build目录下的config-win32.h拷贝出来替换上一级目录下的mgconfig.h。
config-win32.h实际上是用来打开windows下面编译要用到的一些宏。 你说你从来没有过这一步,也照样能编译和执行目标程序.可能是你下载的源码我们已经给你替换掉了。做这一步也是为了保险起见,你有的话无非是替换一下,没有的话也就不会编译不过。 还有你的开发包是哪弄的?网站上下载的?
你那情况有2种可能性: 1:你没有打开_JPG_FILE_SUPPORT这个宏: a。打开它,编译,使用=>ok b。这个宏控制控的code没有了=>完蛋,自己写。。。-_-||| 2:你系统里没有jpj的库?可能性太小。。。
顺便说下jpj。c在minigui/src/mybmp文件夹里 还有1.6.8的开发包快提供下载了,你可以==下它也不错。 |