TI中文支持网
TI专业的中文技术问题搜集分享网站

移植spi程序时,编译总出错

你好!

我用的仿真软件是CCS5.4,spi驱动程序是biospsp_03_00_01_00,加载完成编译出现以下错误:

undefined                        first referenced
  symbol                              in file     ———                        —————-

>> Compilation failure
 _EDMA3_DRV_clearErrorBits        ./Spi_edma.obj  _EDMA3_DRV_disableLogicalChannel ./Spi_edma.obj  _EDMA3_DRV_enableTransfer        ./Spi_edma.obj  _EDMA3_DRV_freeChannel           ./Spi_edma.obj  _EDMA3_DRV_getPaRAM              ./Spi_edma.obj  _EDMA3_DRV_requestChannel        ./Spi_edma.obj  _EDMA3_DRV_setOptField           ./Spi_edma.obj  _EDMA3_DRV_setPaRAM              ./Spi_edma.obj  _Gpio_setPinVal                  ./Spi.obj     

请帮我看看是怎么回事!谢谢

Tony Tang:

是EDMA的库的路径不对,没找到库,确认一下编译选项里库的搜索路径。

你用的是最新版本的CCS,可能在导入工程时对以前版本CCS生成的工程有些不兼容。

sophia wei1:

回复 Tony Tang:

你好!

我的CCS版本是CCS5.3.0.00090_win32,将pspdrivers_01_30_01中的spi工程文件当做3.3工程移植进去时,作为一个单一的工程文件,编译时可以通过的,所以应该不是兼容的问题。当我用biospsp_03_00_01_00,将spi中的源文件移植到其他工程文件中,所有的用到的函数库加入INCLUDE选项下,并在LINKER搜索文件目录下,加入了包含以下这些参数的文件目录,

<Linking>

 undefined                        first referenced  symbol                              in file      ———                        —————- _EDMA3_DRV_clearErrorBits        ./Spi_edma.obj   _EDMA3_DRV_disableLogicalChannel ./Spi_edma.obj   _EDMA3_DRV_enableTransfer        ./Spi_edma.obj 

>> Compilation failure _EDMA3_DRV_freeChannel           ./Spi_edma.obj   _EDMA3_DRV_getPaRAM              ./Spi_edma.obj   _EDMA3_DRV_requestChannel        ./Spi_edma.obj   _EDMA3_DRV_setOptField           ./Spi_edma.obj   _EDMA3_DRV_setPaRAM              ./Spi_edma.obj   _Gpio_setPinVal                  ./Spi.obj 

但是编译还是出现这个错误,有点搞不懂了。请求帮助,谢谢!

Tony Tang:

回复 sophia wei1:

就是库没加进来。

确认一下Linker下除了include之外,还有library的名字,也可以直接用绝对路径把库加进来。

或者对比一下单独导入的工程的库的路径的设置。

赞(0)
未经允许不得转载:TI中文支持网 » 移植spi程序时,编译总出错
分享到: 更多 (0)