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.

CC3200 CCS oslib编译不通过

Other Parts Discussed in Thread: CC3200SDK, CC3200

 CCS中编译oslib时出现如下信息:

**** Clean-only build of configuration free_rtos for project oslib ****

"C:\\ti\\ccsv6\\utils\\bin\\gmake" -k clean
DEL /F "free_rtos.a"
DEL /F "croutine.d" "heap_3.d" "list.d" "osi_freertos.d" "port.d" "queue.d" "tasks.d" "timers.d"
DEL /F "croutine.obj" "heap_3.obj" "list.obj" "osi_freertos.obj" "port.obj" "portasm.obj" "queue.obj" "tasks.obj" "timers.obj"
DEL /F "portasm.d"
找不到 C:\ti\CC3200SDK_1.2.0\cc3200-sdk\oslib\ccs\free_rtos\free_rtos.a
找不到 C:\ti\CC3200SDK_1.2.0\cc3200-sdk\oslib\ccs\free_rtos\croutine.d
找不到 C:\ti\CC3200SDK_1.2.0\cc3200-sdk\oslib\ccs\free_rtos\croutine.obj
找不到 C:\ti\CC3200SDK_1.2.0\cc3200-sdk\oslib\ccs\free_rtos\portasm.d
'Finished clean'
' '

**** Build Finished ****
Buildfile generation error occurred..
This project was created using a version of compiler that is not currently installed: 5.2.6 [ARM]. Please go to CCS App Center to install the compiler of this version, or migrate the project to one of the available compiler versions by adjusting project properties.
Build stopped..

错误描述如下:

Description Resource Path Location Type
This project was created using a version of compiler that is not currently installed: 5.2.6 [ARM]. Please go to CCS App Center to install the compiler of this version, or migrate the project to one of the available compiler versions by adjusting project properties. oslib properties Problems

根据Programmer's Guide,Oslib • Contains the interface file to configure Free-RTOS or TI-RTOS.我下载了TI-RTOS CC32xx。

新手上路,请大神不吝赐教。

  • sdk安装是默认位置?看提示的错误是找不到对应的文件,建议将CC3200的SDK安装到默认的文件夹下,如果不是默认文件夹下则需要修改CCS中固件库的索引绝对地址,让编译器找到对应的固件所在的文件路径。

  • 是安装在默认位置C:\ti\,那如果不是的话如何修改固件库的索引绝对地址?

  • ①在工程属性中 Linked Resources-> Path Variables中添加
    <1>Name:CC3200_SDK_ROOT Value:${ORIGINAL_PROJECT_ROOT}\..\..\..
    同时注意下Resolved Location地址是否正确!
    <2>Name:ORIGINAL_PROJECT_ROOT Value:C:\ti\CC3200SDK_1.1.0\cc3200-sdk\example\blinky\ccs

    ①ARM-Compiler->Include Options
    注:实际CC3200_SDK_ROOT指向 C:\ti\CC3200SDK_1.1.0\cc3200-sdk 

    "${CG_TOOL_ROOT}/include"
    "${CC3200_SDK_ROOT}/simplelink/"
    "${CC3200_SDK_ROOT}/simplelink/include"
    "${CC3200_SDK_ROOT}/simplelink/source"
    "${CC3200_SDK_ROOT}/example/common"
    "${CC3200_SDK_ROOT}/driverlib"
    "${CC3200_SDK_ROOT}/inc"

    ②ARM-Linker->File Search Path

    "libc.a"
    "${CC3200_SDK_ROOT}/simplelink/ccs/NON_OS/simplelink.a"
    "${CC3200_SDK_ROOT}/driverlib/ccs/Release/driverlib.a"

    Addition:

    <1>ARM-Compiler->Advanced options->Predefined Symbols 在Pre-define NAME添加:
    ccs
    USER_INPUT_ENABLE
    cc3200

    <3>默认情况下,通过CCS编译的工程,只生成.out文件。需要通过工程配置,添加必要的语句,编译后生成bin文件(也叫post build)

    在Build->Steps->Post-build steps下添加:

    "${CCE_INSTALL_ROOT}/utils/tiobj2bin/tiobj2bin" "${BuildArtifactFileName}" "${BuildArtifactFileBaseName}.bin" "${CG_TOOL_ROOT}/bin/armofd" "${CG_TOOL_ROOT}/bin/armhex" "${CCE_INSTALL_ROOT}/utils/tiobj2bin/mkhex4bin"

    然后Rebuild All就可以在Debug/Release下生成.bin文件了


    <4>在CCS工程的Debug/Release下中的.map文件中查看:

    MEMORY CONFIGURATION

    name origin length used unused attr fill
    ---------------------- -------- --------- -------- -------- ---- --------
    SRAM_CODE 20004000 00013000 00008ec6(程序代码大小) 0000a13a RW X
    SRAM_DATA 20017000 00019000 00001e30(程序RAM大小) 000171d0 RW X

  •  可以截图看下吗?为什么我照着上面改有问题,而且我在

    找不到 C:\TI\CC3200SDK_1.2.0\CC3200SDK_1.3.0\cc3200-sdk\oslib\ccs\free_rtos\free_rtos.a
    找不到 C:\TI\CC3200SDK_1.2.0\CC3200SDK_1.3.0\cc3200-sdk\oslib\ccs\free_rtos\croutine.d
    找不到 C:\TI\CC3200SDK_1.2.0\CC3200SDK_1.3.0\cc3200-sdk\oslib\ccs\free_rtos\croutine.obj
    找不到 C:\TI\CC3200SDK_1.2.0\CC3200SDK_1.3.0\cc3200-sdk\oslib\ccs\free_rtos\portasm.d
    'Finished clean'
    ' '

    文件夹下面确实找不到这些文件,是我软件下得有问题吗?如果可以,可以讲解下Linked Resources-> Path Variables中的name是怎么来的吗?感激不尽

  • 你在那些目录下能找到错误提示里面找不到得文件吗?