brew制作lib

 

注 :

1.       开发环境 :VS2005 + BREW SDK 3.1.5 SP02 + BREW SDK TOOLS 1.1.0 SP06

2.       编译环境 :GUNDE

3.       开发语言 :C 语言

4.       配置编译环境省略

 

一、 lib的编译

1.       创建 lib 工程

    按正常方式新建 BREWAppWizard 工程 , 就以 brewlib 为工程名 , 工程里将会有 brewlib.c, AEEAppGen.c,AEEModGen.c 三个文件 , 移除 AEEAppGen.c , AEEModGen.c 文件 , 到 BREWDIR/sdk/src 目录 (BREWDIR 为 Brew SDK 安装目录 ), 复制 AEEModGen.c 文件到工程目录并添加到工程 , 再新建 brewlib.h 文件到工程目录 , 此时工程目录如下图所示 .


打开 AEEModGen.c 并删除里面的所有内容 , 添加以下代码:

 

打开 brewlib.c 文件,删除所有内容。

打开工程属性--> 常规 --> 配置类型--> 选择静态库 (.lib), 点击确定完成配置 .


此时 lib 的工程模板已经完成 .

2.       生成模拟器可以使用的 lib 文件

现在我们试着写一个 lib ,添加一个函数就叫


打开 brewlib.h 文件 , 添加以下代码 :


然后打开 brewlib.c 文件添加以下代码 :


此时用 VS2005 编译一下在工程目录里即可生成 lib 文件,此 lib 文件只能在模拟器上面使用。

 

3.  生成真机可以使用的 o 文件

             如果正常安装好 GUNDE 编译环境和 SDK 开发环境,在 VS2005 工具栏应该有下图工具栏。

 

点击 GNU 在工程目录下生成 brewlib.mak 文件。打开 brewlib.mak 文件,找到


               修改为


  不然的话编译会出错 .

在工程目录新建一个文本文件 , 添加以下内容 :


然后再把该文件命名为 : build.bat 文件,双击打开,编译该工程 . 生成一些 o 文件 ,


如上图所示 ,brewlib.o 文件就是真机使用的文件。其中 brewlib.h 文件就是其他工程需要引用的头文件 .

 

二、           lib 的使用

按正常方式新建 BREWAppWizard 工程 , 新建一个 UseLib 工程 . 拷贝 brewlib.h , brewlib.lib , brewlib.o 文件到工程目录。

打开 UseLib.c 文件,如图所示包含 brewlib.h 头文件。


打开 UseLib 工程属性--> 连接器--> 输入--> 附加依赖项,添加 brewlib.lib 。


我们先测试一下 int add (int x,int y); 方法。


如图所示。此时编译工程,会有

brewlib.lib(brewlib.obj) : warning LNK4099: 未找到PDB “vc80.pdb ”( 使用“brewlib.lib ”或在“d:/BrewWorkSpace/BrewLib/UseLib/vc80.pdb ”中寻找) ;正在链接对象,如同没有调试信息一样

警告,没有关系,不用理睬。

这时候用模拟器就可以运行了。

如果要编译到真机运行 , 点击 中的 GUN 生成 UseLib.mak 文件,作一下两处修改。

(1). 找到LIBS = -lgcc并注释掉。

(2). 找到 $(TARGET).$(EXETYPE) :  $(APP_OBJS)

如图所示添加 brewlib.o 。

在工程目录新建一个文本文件 , 添加以下内容 :

然后再把该文件命名为 : build.bat 文件,双击打开,编译该工程 . 生成 UseLib.mod 文件, UseLib.mod 文件就是真机上面的可执行文件。

 

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值