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.

[参考译文] CCS/TMDSEVM6678:创建有效的 OpenMP 示例项目...

Guru**** 2589265 points
Other Parts Discussed in Thread: FFTLIB, MATHLIB

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

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/638486/ccs-tmdsevm6678-create-working-openmp-example-project

器件型号:TMDSEVM6678
主题中讨论的其他器件:FFTLIBMATHLIB

工具/软件:Code Composer Studio

你好。 我在 EVM 6678上尝试使用 OpenMP 时遇到问题。

我的配置:

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

TMDSEVM6678LE Rev.

操作系统:Windows 7 x64

CCS:7.3.0.00019

PDK:04.01.00.06

CG_XML 2.41.00
CTOOLS 磁带库2.2.0.0
DSPLIB 3.4.0.0
EDMA3 LLD 2.12.05.29
FFTLIB 3.1.0.0
框架组件3.40.02.07
IMGLIB 3.1.1.0
IPC 3.46.02.04
LIBARCH 1.0.0.0
LINALG 1.2.0.0
MATHLIB 3.1.1.0
NDK 2.25.01.11
OpenMP 2.06.02.00
PDK C667X 2.0.7
Processor SDK RTOS C667X 04.01.00.06
SYS/BIOS 6.46.05.55
TI CGT 6x 8.1.3
UIA 2.00.06.52
xDAIS 7.24.00.04
XDCtools 3.32.01.22

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

1.我创建了一个空的 RTSC 工程(据我所知,我必须使用 rtsc 工程)

2.我在项目属性的“产品”选项卡中启用了 IPC、OpenMP 和 SYS/BIOS

3.我在 C6000编译器的高级优化中启用了--omp 和--multithread

4.将'hello.c'和'omp_config.cfg 从'c:\ti\openmp_dsp _c667x_2_06_02_00\packages/examples\hello_with _make\'复制到我的项目文件夹中

因此、我在构建项目时遇到此错误:

****为项目 omp_rtsc 构建配置调试****

"C:\\ti\\ccsv7\\utils\\bin\\gmake"-k -j 4 all -O
gmake[1]:进入目录'C:/_projects/workspace_v7/omp_rtsc/Debug'
'生成文件:./omp_config.cfg '
'调用:XDCtools '
"C:/ti/xdctools_3_32_01_22_core/xs "--xdcpath="C:/ti/ipc_3_46_02_04/packages;C:/ti/openmp_dsp_c667x_2_06_02_00/packages;C:/ti/bios_6_46_05_55/packages;C:/ti/pdk_c667x_2_0_7/packages;C:/ti/ccsv7/ccs_base;" xdc.tools.configuro -o configPkg -t ti.targets.elf.c66 -p ti.platforms.evm6678 -r release -c "C:/ti/ti-cgt-c6000_8.1.3 "../omp_config.cfg
正在制作 package.mak (由于 package.bld)...
正在为软件包 configPkg 生成接口(因为 package/package.xdc.inc 比 package.XDC 旧)...
从 package/cfg/omp_config_pe66.cfg 配置 omp_config.xe66 ...
subdir_rules.mk:19:目标'build-472138095-InProc '的配方失败
JS:"c:/_projects/workspace_v7/omp_rtsc/omp_config.cfg "、第127行:TypeError:无法从未定义的(C:/_projects/workspace_v7/omp_rtsc/omp_config.cfg#127)读取属性"base"
"./package/cfg/omp_config_pe66.cfg,第188行
gmake.exe:***[package/cfg/omp_config_pe66.xdl]错误1.
JS:"c:/ti/xdctools_3_32_01_22_core/packages/xdc/tools/Cmdr.xs、第52行:错误:xdc.tools.configuro:由于先前的错误(状态= 2)、配置失败;已删除'linker.cmd'。
gmaking[1]:***[Build-472138095-InProC]错误1.
gmake:***[build-472138095]错误2.
gmake[1]:离开目录'C:/_projects/workspace_v7/omp_rtsc/Debug'
subdir_rules.mk:16:目标'build-472138095'的配方失败
gmake:目标"全部"不会由于错误而重新生成。

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

出现了什么问题?

我在论坛上阅读了其他 OpenMP 问题的主题,但没有解决方案。 那么问题是:如何创建有效的 OpenMP 项目? 是否有任何分步手册要开始?

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

    我已通知软件团队。 他们的反馈将在此处发布。

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

    >-p ti.platforms.evm6678
    您需要在 OpenMP 构建中将 ti.runtime.openmp.platforms.evm6678用作 RTSC 平台。 平台定义来自 OpenMP 版本。

    OpenMP 项目创建/编译指令位于: downloads.ti.com/.../building_openmp_app.html

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

    你好。 感谢您的快速回答。

    是的、我使用的是'ti.platforms.evm6678'平台。 XDCtools 未找到'ti.runtime.openmp.platforms.evm6678'。 因此、解决方案是在此处添加新路径:

    它出现在这里的列表中

    现在、项目已编译。 如果有一些警告、它们意味着什么?

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

    该线程具有有关.tdata 和.tbss 警告的详细信息:
    e2e.ti.com/.../2263217

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

    谢谢你。 我阅读了该帖子和  SPRAB89A.pdf

    我的项目现在正在运行(再次感谢)、但我 仍然无法关闭警告。 有可能吗?  有必要吗?

    *我尝试添加段.tdata 和.tbss、修改 omp_config.cfg (并改为添加.TI.TLS)

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

    如果链接器命令文件中有.TI.TLS:> DDR3、则可以忽略该警告。

    正如 Todd 在该线程中指出的:"我认为链接器在链接器命令文件中使用".TI.TLS:>L2SRAM"时、会生成创建.tdata 和.tbss 的警告、从而误导开发者。 我针对此问题向链接器提交了缺陷报告(SDSCM00052804)、以避免在链接器命令文件中存在合法的".TI.TLS"规范时生成有关.tdata 和.tbss 的警告。" 和"建议您在链接时将主线程的 TLS 块分配放在 DDR3中、而不是 L2SRAM 中。分配主线程的 TLS 块(即".TI.TLS:> DDR3")。"

    此致、
    Garrett