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.

[参考译文] 编译器/Cc2650:由于编译器,代码构建失败

Guru**** 2595800 points


请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/tools/code-composer-studio-group/ccs/f/code-composer-studio-forum/619549/compiler-cc2650-code-build-is-failed-due-to-compiler

部件号:CC2650

工具/软件:TI C/C++编译器


****配置构建项目hello调试****

"C:\\ti\\ccs620\\ccsv6\\utils\\bin\\gmake "-k all
'生成文件:../hello.c'
'调用:ARM编译器'
"C:/ti/ccs620/ccsv6/tools/compiler/arm_ls.3.lts/bin/armcl" 15.12 -mv7M3 --code_state=16 -me --include_path="C:/ti/ccs620/ccsv6/tools/compiler/arm_lave.3./include" 15.12 -g -diag_status=16 -me --diag_path="c=proc_reprisoration="-proc=hellog_-proc_proc=hellog_proc=hellog_proc_prox_prox_proc=225.
"../hello.c",第7行:警告#121-D:返回值类型与函数类型不匹配
'完成的建筑:../hello.c'
''
'建立目标:hello.out '
'调用:ARM链接器'
c:/ti/ccs620/ccsv6/tools/compiler/arm_robs.3.lts/bin/armcl" 15.12 -mv7M3 --code_state=16 -me -g --diag_wrap=off --cmd_warning=225 --display_error_number-abi=e-z -m"hello"hoo_g.map"-lfxdiag_wrap./line_s="--scap.cru_3.cru_lin_----rb.cru_--------cscrb.crabi_--lip_3.cru_------------rbi_sf_--rb.crabi_3.crabi_------------------rb.crabi_---------------------cscand_---rb.crabi_--------lip_- 15.12 15.12
链接>

未定义的第一个引用
文件中的符号
------------------- --------
重新设置ISR

错误#1.0234万-D:仍存在未解析的符号
警告#1.0062万-D:未定义入口点符号"ResetISR"

内部错误:15.12 C:\ti\ccs620\ccsv6\tools\compiler\arm_les.3.LTS\bin\armlnk.exe遇到未处理的异常

这是由编译器本身的缺陷引起的。 TI客户
支持人员可能会建议一种解决方法来避免这种情况。

升级到最新版本的编译器可以解决此问题。

在E2E支持论坛中联系TI,网址 为http://e2e.ti.com
“开发工具”,“TI C/C++编译器”。 请参阅标题为的链接
"提交问题"。 包括整个错误消息和
选项--preproc_with注释时创建的.pp文件的副本
(-PPC)。


gmake:***[hello.ut]错误1
>>编译失败
Makefile:140:目标'hello.out '的配方失败
gmake:由于错误,目标'all'没有重制。

****构建已完成****

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    我怀疑部分问题是由于配置项目时出现的错误造成的。  但即使如此,这...

    Amit maid 说:
    内部错误:C:15.12 \ti\ccs620\ccsv6\tools\compiler\arm_maid.3.LTS\bin\armlnk.exe遇到未处理的异常

    ...始终意味着编译器工具中存在错误。  在这种情况下,它位于链接器中。

    请向我们发送一个测试案例,以便我们重现问题。  对于这样的链接器问题,我们需要完整的CCS项目。  请按照" 项目共享"一文中的说明将其打包,然后将其附加到下一篇文章中。

    谢谢,此致,

    -George

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    请向我们发送一个测试案例,以便我们重现问题。 [/QUOT]使用TI ARM编译器v 16.9 4的连接测试项目产生了我认为与Amit maid相同的问题,因为它失败了:

    ****项目CC2650F128_CCS_HELL_WORLD的配置调试****
    
    “C:\\ti\\ccs720\\ccsv7\\utils\\bin\\gmake”-k -j 4 all -O
    'building target: CC2650F128_CCS_hello_world.out '
    'invok: 16.9 16.9
    “C:/git_svti_m=720/heap -ccti_m=720/g-g-g-gtr_mac-ccti_m=720/heel_m=ccti_screml_screml_screml-cscreml/g-cscreml_720/g-f-gi=720/gi_m=7k_m=-cscreml_crack-cscreml_screml_screml_screml_gi_gi=7k-cscreml_gi_gi=-cscreml_gi_gi=-cscreml_screml_screml_screml_7k-cscreml_sc 16.9 warn_sections --xml_link_info="CC2650F128_CCS_hello_world_linkInfo.xml"--rom_model -o "CC2650F128_CCS_hello_world.out "./hello."../cc26x0f128.cmd"-llibc.a
    <linking> obj
    
    首次引用
    的符号 在文件中
    ------------------- --------
    重新设置ISR
    
    错误#1.0234万-D:未解决的符号仍
    存在警告#1.0062万-D:入口点符号"ResetISR"未定义
    
    的内部错误:16.9 C:\ti\ccs720\ccsv7\tools\compiler\ti-CGT-arm_Ti_Link.4.LTS\bin\armlnk.exe遇到未处理的异常
    
    
    ,这是由TI链接器中的缺陷引起的。
    >>编译失败
    makefile:141:目标'CC2650F128_CCS_hello_world.out的配方失败
    的TI客户支持可能会建议一种避免此问题的解决方法。
    
    升级到最新版本的编译器可以解决此问题。
    
    在 http://e2e.ti.com上 的E2E支持论坛中,在
    “开发工具”,“TI C/C++编译器”下联系TI。 请参阅标题为
    "提交问题"的链接。
    
    我们需要看到整个错误消息和完整的,可重现
    的测试用例,包括所有命令行选项。
    包括用于
    链接程序的所有目标文件,库和链接器命令文件。
    
    gmake[1]:***[CC2650F128_CCS_hello_world.ut]错误1
    gmake:***[All]错误2
    makefile:137:目标'All'的配方失败
    
    ****构建完成**** 

    我在这个测试案例中所做的只是使用基本类型-> Hello World项目模板在CCS 7.2 中为CC2650F128创建一个项目。 此示例包含一个链接程序命令文件,该文件使用 --entry_point ResetISR定义特定的入口点,但链接的目标文件中没有该名称的入口点。

    e2e.ti.com/.../CC2650F128_5F00_ccs_5F00_hello_5F00_world.zip

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    未定义的第一个引用
    文件中的符号
    ------------------- --------
    ResetISR[/QUET]它看起来像是在CCS中创建了"Hello World"模板项目。

    如 https://e2e.ti.com/support/development_tools/code_composer_studio/f/81/p/43.0252万/1537922#1537922中153.7922万中所153.7922万所述 ,"Hello World"模板实际上不适用于CC26xx部件。 原因是CC26xx的“新建CCS项目向导”未添加成功构建所需的启动文件和driverlib。 出现有关未定义符号"ResetISR"的链接器错误,因为该函数是在启动文件中定义的,默认情况下不会添加到项目中。 启动文件和driverlib是CC26xxWare软件包的一部分。 有关详细信息,请参阅引用的帖子。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

      这解决了我的问题,Hello world正在编译,但现在它不打印Hello world。  

    感谢您的帮助

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    Chester Gillon 说:
    使用TI ARM编译器v 16.9 的连接测试项目生成了我认为与Amit maid所看到的相同问题[/QUOT]

    感谢您的测试案例。  我可以重现该问题。  我在 SDOWP系统中提交了CodeGen-3650以对此进行调查。  欢迎您使用我签名中下面的SDOWP链接进行关注。

    谢谢,此致,

    -George

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    Amit maid 说:
    Hello world正在编译,但现在不打印Hello world [/QUOT]

    请参阅文章 使用printf的提示。  首先,检查是否有足够的堆栈和堆。  我不熟悉您的设备。  它可能没有足够的内存用于hello world程序。

    谢谢,此致,

    -George