This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

C6748的cmd文件配置失败问题



在使用C6748的时候,希望有一个库的代码段地址是单独分配的,查找了一下C6000 Compiler Version 7.4 Users Guides中的描述,在7.5.4.5章节中有一个实例如下:

.rts                   >         BOOT2

{

              -l = rtsXX.lib (.text)

}

按照上如格式,在我自己的工程中定义如下:

SysCfg                   >         SHDSPL2RAM_CFG

{

              -l = SysCfg.lib (.text)

}

执行编译,出现“cannot find file SysCfg.lib ”

请问这是什么问题呀?是我的工程配置不对还是使用的有问题?

  • 这是个什么库?你自己整的?

  • 如果文件不在你工程目录下,应该在链接选项中添加完整路径或者搜索路径

  • 是的,这个库是自己的库文件。

    这个库的链接应该没有问题的,因为这个在我没有修改cmd文件之前,这个工程的代码是能够很好的运行的。

    最近新增加了一部分的功能代码,所以要把这个库的代码段和数据段存储区IRAM中区,就查找了一下TI的这方面的资料。

    现在的问题是,如果我把CMD文件中新增加的这几行去掉,也是没有问题的,不知道这个是不是那个地方的配置存在问题。

  • 你的意思是在你没打算指定库使用代码段位置时,是可以正常使用的。但是当你在cmd中尝试指定这个库代码段时,报成这个问题了?

    如果你在-l “路径\syscfg.lib”(.text)这样呢?

  • 是的,没有指定时是可以使用的。

    按照你说的方法,在 -l 时增加路径我测试了一下,是可行的的,看到的map文件中的地址分配也是成功的,真的太感谢了!

    对此我有一个问题,如果我在工程的配置中去配置路径,是否可行?我大概的看了一下配置项,没有找到是在那配置的cmd的关联文件的路径信息。

    这个库的代码段的指定OK了,这个库的数据段还是分配如何也统一指定到一个设定地址类?

  • CCS里不管是老版本还是新版,在link选项中都有一个设置查找lib路径的设置,你可以把你库的位置添加到搜索路径中去。

    CCS3.x可以在工程右键Build option里的link选择中输入你建的那个库的搜索路径;

    CCS4及以上版本,可以右键工程在 Properties\Build\C6000 Linker\下添加一下搜索路径。

    如果你希望指定整个库的所有段都在某个指定空间,直接把后面的(.text)去掉即可。

  •  

    jun chen12 说:
    “cannot find file SysCfg.lib ”

    错误提示在工程设置的搜索路径找不到这个库啊,你可以提示绝对路径,也可以在工程属性里添加,总之要把库加到工程里去。

    RTS库在建工程时就加进去了。