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.

[参考译文] 编译器:MSP430:在 ti-cgt 的 Linux 安装中缺少 msp430.h

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

https://e2e.ti.com/support/microcontrollers/msp-low-power-microcontrollers-group/msp430/f/msp-low-power-microcontroller-forum/586973/compiler-msp430-msp430-h-missing-from-linux-install-of-ti-cgt

主题中讨论的其他器件:TI-CGTCCStudioMSPDRIVERLIBMSP430WAREMSPDSMSP430G2553MSP430FR5969MSPMATHLIB

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

所有、

我已经安装了用于 Linux 的 TI 代码生成工具、以便从快速开发中的 CCStudio 工作流迁移到主要用于软件维护的 makefile 工作流。 TI-CGT 似乎已成功安装。 但是、msp430.h 和相关头文件未随代码生成工具一起安装。

此后、我尝试安装了 MSP430Ware、MSPDebug、MSPDriverLib、MSPDS (MSP430调试堆栈);上述任何一项似乎都没有安装 msp430.h 或相关的软件包。

我的 CCStudio 安装似乎通过其 TI MSP430工具链(与 GCC MSP430工具链相反)指向所需的文件;我找不到任何看起来是此软件包的可供下载产品。

您能否给我指出包含所需 Includes/libs 的封装?

谢谢、

Jimmy

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

    那么、您尝试编译的任何代码示例或项目都由于缺少头文件而失败、这是不是吗? 是否也缺少所有特定于器件的头文件(msp430g2553.h、msp430fr5969.h 等)或者它只是 MSP430.h? 在 Windows 系统上、它们位于./ccsv7/ccs_base/msp430/include/下、并且应该被包含在任何选择安装 MSP430产品的 CCS 程序中。

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

    我正在从主(杂乱)操作系统迁移到 Linux 容器以实现可维护性和稳定的构建环境;我尝试使用命令行工具(仅限)创建 Linux 容器以实现可扩展性(我们必须针对许多变体进行构建)。 显然、可能会有许多问题导致编译失败;我唯一能够确定的问题是 msp430.h 和所有特定于器件的头文件都未安装。 目前、我认为所需的头文件并不是要与 MSP CGT 一起安装、而是要与另一个软件包一起安装、我无法识别。

    在解决此问题时、我还使用新安装的 CCSv7创建了一个 Linux 容器; 我针对路径差异编辑了 makefile 文件、它能够成功构建并输出 TI-hex 文件(我尚未测试该文件、但我没有理由怀疑它有问题)。 这两个 makefile 文件之间的唯一区别是 CCSv7安装程序实际上具有 MSP430头文件、因此该路径也是构建过程中的 include 文件夹。

    在 TI-CGT 容器中搜索 msp430.h 没有结果。 通过搜索 CCSv7容器、可以在/ti/ccsv7/ccs_base/msp430/include 和/ti/ccsv7/ccs_base/msp430/include_gcc 中找到 msp430.h

    虽然 TI-CGT 容器可能存在更多问题、但第一个问题是缺少 MSP430包括。 我确实有一个使用 CCSv7容器的有效解决方案、但我强烈希望通过单独安装来严格、透明地控制已安装的软件包版本。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    更清楚:TI-CGT Linux 容器中的构建过程确实失败、出现"致命错误#1965:无法打开源文件"msp430.h"

    在安装了 CCSv7的 Linux 容器上、同样的构建过程是成功的、该容器包含 MSP430.h、特定于器件的头文件、以及[大概]安装这些文件的软件包中包含的库

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

    我已对 CCSv7 Linux 离线安装程序 tar 进行了更多调查、并发现所需的 libs/include 位于 ti_msp430pack_header_files_setup64_7.0.5软件包中;是否有独立 msp430pack 安装程序的下载页面?

    您可以通过 CCSv7离线安装程序(或根据不同版本/OS 的需要进行修改)中的以下过程找到它:

    tar -xzf CCSv7.1.0.00014_linux-x64.tar.gz
    cd CCS7.1.0.00014_linux-x64/baserepo/MSP_linux64_repo/二进
    制解压缩 com.ti.msp430.ccs_header_files_root.gtk.linux.x86_64_7.0.5
    cd 下载
    chmod 755 ti_msp430pack_header_files_setup64_7.0.5.bin
    ./ti_msp430pack_header_files_setup64_7.0.5.bin --mode 无人值守--prefix。
    cd ccs_base/msp430 

    因此、我将 CCSv7 msp430pack 安装程序复制到 TI-CGT 容器中、安装并成功构建。 生成了一个 TI-Hex 文件、但我尚未对其进行测试

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

    文件的正确位置是您找到的:
    /ti/ccsv7/ccs_base/msp430/include (在使用 TI 编译器时使用)

    /ti/ccsv7/ccs_base/msp430/include_gcc (使用 gcc 编译器时使用)

    这些文件与编译器分开。

    您的#include 行是什么样子的、搜索路径是什么样子的? 通常、当我在 Linux 上看到此错误时、当有人从 Windows 迁移项目时、问题是由于区分大小写或在路径中使用\。

    不确定您是否愿意连接项目、但如果您愿意、我可以查看。

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

    John、

    我无法提供项目、但我可以提供您需要的信息。

    具体而言、有问题的 include 指令是'#include "msp430.h"'

    Linux CCSv7容器安装中的相关编译器标志为'--include-path="/ti/ccsv7/ccs_base/msp430/include '和'-i"/ti/ccsv7/ccs_base/msp430/lib/5xx_6xx_FRxx ',其中 CCSv7安装期间的安装前缀为/ti;已成功构建

    在 TI-CGT 容器中、未安装 CCSv7、并且未安装 MSP430头文件/库。 从以下位置未在文件系统中找到任何内容:

    查找/-name "msp430.h"-print 

    从 CCSv7安装程序中提取 msp430pack 并将其安装到 TI-CGT 容器中后、相关的编译器标志变为--include-path="/ti/ccs_base/msp430/include 和-i="/ti/ccs_base/msp430/lib/5xx_6xx_FRxx、其中安装前缀为/ti;这已成功构建

    问题是、我不知道如何在不安装 CCS 的情况下安装 MSP430头文件和库(或者、下载 CCS 离线安装程序、提取其内容、抓取特定的 msp430pack 安装程序、并将其安装到 TI-CGT 容器中)。 正如您所说的、这些文件与编译器是分开的。 您是否知道他们的*DO *包含在哪个软件包中?

    MSPMATHLIB 安装在此 msp430pack 中(.../ccs_base/msp430/lib/)、因此更相关的问题可能是:如何在没有 CCS 的情况下安装 MSPMATHLIB? 后续问题:MSPMATHLIB 的这一独立安装(及其他人) 仍要安装 MSP430头文件? 我怀疑目前这些文件和库只能通过 CCS 安装

    此外、我还要感谢您和 Ryan 抽出宝贵的时间对此进行研究。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    好的。 我现在更好地理解了这个问题。 我相信我们有一个包含头文件的单独软件包。 该软件包将作为 CCS 的更新提供、因此我们确实有一个单独的安装程序。 我相信他们以前都包含在这个软件包中: http://www.ti.com/tool/mspds

    但是、我想去年他们被分成了单独的封装。

    对于 gcc、我们有包含 gcc 和支持文件的软件包、还有一个仅包含支持文件的软件包:
    software-dl.ti.com/.../index_FDS.html

    我将跟踪 TI 编译器的这个。

    John
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    今天、我们没有一个 TI 编译器软件包、它只能用于从我们的标准下载页面中获取的头文件。 但是、您可以从此处下载:
    software-dl.ti.com/.../com.ti.msp430.ccs_header_files_root.win32.win32.x86_7.1.0

    当我将该链接插入 Chrome 时、它会以 zip 格式下载该链接、我只需在其中浏览即可转到安装程序。

    在与团队交谈时、我们很有可能像在将来为 GCC 提供的一样、将头文件作为 CCS 编译器的单独包提供。

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

    John、

    谢谢! 您是否能够为不同的架构提供链接? Linux/Mac?

    当有人寻求命令行编译过程时、我希望您继续支持非 CCStudio 命令行编译和调试工作流。 这显然是无意的,但在小组中有一名命令行倡导者可能是有益的。

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

    与上述链接相同、但只需将文件名替换为以下内容:

    com.ti.msp430.ccs_header_files_root.gtk.linux.x86_64_7.1.0
    com.ti.msp430.ccs_header_files_root.c可 可 MacOSX.x86_64 7.1.0

    此致、
    John