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.

[参考译文] CCSTUDIO-Sitara:CCS 10 GNU 9.2.1失败

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

https://e2e.ti.com/support/tools/code-composer-studio-group/ccs/f/code-composer-studio-forum/1008716/ccstudio-sitara-ccs-10-gnu-9-2-1-fails

器件型号:CCSTUDIO-Sitara

您好!

另一个开箱即用故障。

我有一个项目、它是一个 AM335x 项目。 使用 GNU 7.3 (linaro)编译  

我转到"App Center"页面。

我安装/更新 GNU 9.2.1 (Linaro) (事后可见)

然后尝试构建...   开箱即用。  自己的头文件出现问题。

Fullscreen
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
+11 -fno-threadsafe-statics @"configPkg/compiler.opt" -o"print.o" "../print.cpp"
subdir_rules.mk:30: recipe for target 'print.o' failed
cc1plus.exe: warning: switch '-mcpu=cortex-a8' conflicts with '-march=armv7-a' switch
In file included from c:\ti\bios_6_76_03_01\packages\gnu\targets\arm\libs\install-native\arm-none-eabi\include\stdio.h:60,
from ../print.cpp:1:
c:\ti\bios_6_76_03_01\packages\gnu\targets\arm\libs\install-native\arm-none-eabi\include\sys\reent.h:407:11: warning: unnecessary parentheses in declaration of '_sig_func' [-Wparentheses]
407 | void (**(_sig_func))(int);
| ^
In file included from c:\ti\ccs1011\ccs\tools\compiler\gcc-arm-none-eabi-9-2019-q4-major\arm-none-eabi\include\c++\9.2.1\cstdlib:75,
from c:\ti\ccs1011\ccs\tools\compiler\gcc-arm-none-eabi-9-2019-q4-major\arm-none-eabi\include\c++\9.2.1\bits\stl_algo.h:59,
from c:\ti\ccs1011\ccs\tools\compiler\gcc-arm-none-eabi-9-2019-q4-major\arm-none-eabi\include\c++\9.2.1\algorithm:62,
from ../print.cpp:4:
c:\ti\ccs1011\ccs\tools\compiler\gcc-arm-none-eabi-9-2019-q4-major\arm-none-eabi\include\stdlib.h:91:7: error: expected initializer before '__alloc_size2'
91 | __alloc_size2(1, 2) _NOTHROW;
| ^~~~~~~~~~~~~
In file included from c:\ti\ccs1011\ccs\tools\compiler\gcc-arm-none-eabi-9-2019-q4-major\arm-none-eabi\include\c++\9.2.1\bits\stl_algo.h:59,
from c:\ti\ccs1011\ccs\tools\compiler\gcc-arm-none-eabi-9-2019-q4-major\arm-none-eabi\include\c++\9.2.1\algorithm:62,
from ../print.cpp:4:
c:\ti\ccs1011\ccs\tools\compiler\gcc-arm-none-eabi-9-2019-q4-major\arm-none-eabi\include\c++\9.2.1\cstdlib:144:11: error: '::calloc' has not been declared
144 | using ::calloc;
| ^~~~~~
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

在将这些内容发布给用户之前、是否没有人对其进行测试?

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

    所以。 我深挖...  我认为它甚至更坏了...

    我创建一个完全由向导生成的项目、它只是一个 SysBIOS。

    一个空的"main.c"源文件会进行编译 (但它不会链接... 请参阅后面的文章)。  

    但是、具有以下头文件的 CPP 文件失败:

    Fullscreen
    1
    2
    #include <stdio.h>
    #include <algorithm>
    XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

    因此、您无法使用 stdio.h 和 算法...

    并尝试使用 自己的算法、它甚至会变得越来越小。

    Fullscreen
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    In file included from c:\ti\ccs1011\ccs\tools\compiler\gcc-arm-none-eabi-9-2019-q4-major\arm-none-eabi\include\stdlib.h:18,
    from c:\ti\ccs1011\ccs\tools\compiler\gcc-arm-none-eabi-9-2019-q4-major\arm-none-eabi\include\c++\9.2.1\cstdlib:75,
    from c:\ti\ccs1011\ccs\tools\compiler\gcc-arm-none-eabi-9-2019-q4-major\arm-none-eabi\include\c++\9.2.1\bits\stl_algo.h:59,
    from c:\ti\ccs1011\ccs\tools\compiler\gcc-arm-none-eabi-9-2019-q4-major\arm-none-eabi\include\c++\9.2.1\algorithm:62,
    from ../dummy.cpp:4:
    c:\ti\bios_6_76_03_01\packages\gnu\targets\arm\libs\install-native\arm-none-eabi\include\sys\reent.h:168:8: error: '_VOID' does not name a type
    168 | extern _VOID _EXFUN(__sinit,(struct _reent *));
    | ^~~~~
    c:\ti\bios_6_76_03_01\packages\gnu\targets\arm\libs\install-native\arm-none-eabi\include\sys\reent.h:195:3: error: '_PTR' does not name a type
    195 | _PTR _cookie; /* cookie passed to io functions */
    | ^~~~
    c:\ti\bios_6_76_03_01\packages\gnu\targets\arm\libs\install-native\arm-none-eabi\include\sys\reent.h:197:36: error: '_read' has not been declared
    197 | _READ_WRITE_RETURN_TYPE _EXFNPTR(_read, (struct _reent *, _PTR,
    XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

    现在、要将盐流入这个伤口...

    如果我从 main.cpp 中删除算法头、它将进行编译。  

    但不会链接。 我收到有关 VFP 的链接器错误...

    Makefile:145:目标'NewGNU.out'的配方失败
    C:/ti/ccs1011/ccs/tools/compiler/gcc-arm-none-eabi-9-2019-q4-major/bin/../lib/gcc/arm-none-eabi/9.2.1/../../../../arm-none-eabi/bin/ld.exe:错误:NewGNU/out 使用 VFP 寄存器参数、c:/ti/ccs1011/ccs/tools/compiler/gcc-arm-none-eabi-9-2019-q4-major/bin/../lib/gcc/arm-none-eabi/9.2.1 libgcc.a (_divmoddi4.o)不使用

    我找不到关于向量浮点库的任何内容、以及任何编译器/链接器设置的含义。

    ------------------------------------------------------

    (顺便说一下...   为什么 在编写这个代码的过程中、 突然我无法插入代码块?)

    -CSW

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

    您好!

    根据我的理解、GNU 7.2.1应与 AM335x 和 SYS/BIOS 6.76 (以及处理器 SDK)配合使用。 它不太可能通过 GNU 9.2.1进行验证。 我将提请器件专家注意此主题、以供进一步评论

    谢谢

    Ki

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

    Ki、

    PDK 6.0..... 在 您下载3/4的 gig 软件包并启动安装程序之前,它不会告诉您其中包含什么内容,显然其中包含 GNU 7。   我想这就是在我的 PC 上安装它的方式、它不是通过 CCS 10、1实现的

    尽管 CCS 上的 TI 页面显示它随 GCC 9提供   

    (https://software-dl.ti.com/ccs/esd/documents/ccs_downloads.html)

    它不在我的机器上...   我从应用中心安装了它(正如我所说)。

    我将准备好在下一位听到"您正在使用旧的东西、您需要使用最新版本"的人身上进行拉德。

    (我有另一篇关于该编译器缺陷的文章、其中它不知道什么是用于 C++的__UULONG__、但它用于 C..  尽管我找到了一个黑客攻击、并发布了它)