第一次接触ccs和A8这个库,PDK工具包的库是啥后缀,怎么添加到工程里?等等,这些摸索了好久,这里记录一下!(这里的编译器都选则的是GNU,非TI自带的编译器)
目录
1、问题来源
2、PDK的库文件形式
3、库文件添加到ccs工程
1>通过界面操作:
2> 添加命令行脚本形式.cmd文件
4、疑问
1、问题来源
当我们看完了官方给的示例后,我们就开始移植文件,将主要文件移植后,有很多.h声明的函数在link时会报错,这时,我们就会想到应该是有库文件没有加载进来。
2、PDK的库文件形式
官方手册中介绍,是下列形式,而且提供了两种库:
一种是通用内核的库,一直是基于开发板的库,不同的地方也在框框里狂了。
他的库的后缀也和我们通常用的后缀.lib或者.a不一样,是自己定义的库后缀:
.aa15fg,,这个是A15内核的后缀;
同理如果是A8内核的后缀,那就是:.aa8fg
3、库文件添加到ccs工程
既然不是标准的库文件后缀,那么库文件直接添加到源文件里,ccs肯定不识别的,所以该怎样添加到ccs工程呢?
官方给的文档也有说明:大概有两种方式:
1>通过界面操作:
“Build Settings”->“GNU Linker”->“Libraries”,在库名称前添加冒号,如下所示:
2> 添加命令行脚本形式.cmd文件
使用INPUT语法使用链接器命令文件添加驱动程序库。
如上图所示。
我的是A8的AM3352,我要添加的库是 ti.board.aa8fg,如下图所示:画框的部分是添加的,添加后,亏对应的实现部分不在报错,证明了正确识别了这个库文件了
4、疑问
在官方的PDK例子中,例如:GPIO_LedBlink_bbbAM335x_armTestProject,我在linker选项中,好像没发现添加库文件,如下截图:
难道是在.cmd写进去的?但修改cmd会这样,重新编译应该会覆盖。不太确定具体在哪里链接库文件到工程里
这块以后再研究吧,我们先用第一种界面方式添加库文件到ccs工程即可。