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.

[参考译文] C2000WARE:C2000Ware 5.02.00.00 Linux 安装程序失败、带有"无法初始化安装程序"—忽略所有命令行标志

Guru**** 2905430 points

Other Parts Discussed in Thread: C2000WARE

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

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/1643174/c2000ware-c2000ware-5-02-00-00-linux-installer-fails-with-unable-to-initialize-installer-all-command-line-flags-ignored

器件型号: C2000WARE

类别: C2000 微控制器/工具和软件

存在许多风险

  • 操作系统: Ubuntu 25.10 (x86_64), VirtualBox
  • 安装程序:C2000Ware_5_02_00_00_setup.run
  • 安装程序类型:BitRock InstallBuilder、32 位 ELF 二进制文件
  • 测试结果为:root 用户(登录 shell)和非 root 用户 (sudo、不带 sudo)—两种方法的结果相同

问题

C2000Ware 5.02.00.00 Linux 安装程序在启动时会立即失败、并具有以下输出:

Unable to initialize installer.
Is /tmp writable?
Is SELinux enabled? You may need to disable it temporarily.

此系统上未启用 SELinux。 /tmp 可写且可执行。 这些消息是红色字幕。

(这是在包含安装程序所需的 libc 32 位库之后的内容。)

通过 strace 确定根本原因

我在 syscall 级别跟踪安装程序。 故障序列为:

  1. 安装程序可将 libtbcload1.7.so (2003 年时代的 Tcl 二进制扩展名 GCC 3.2.2) 正确写入/root/.installbuilder/tmp/libtbcload1.7.so.
  2. 然后、它尝试使用字面 tilde 路径打开文件:openat (AT_FDCWD、“~/.installbuilder/tmp/libtbcload1.7.so)—这将返回 ENOENT、因为 Linux 内核不会扩展 tilde 字符。 波浪扩展仅为壳体特征。
  3. 安装程序将删除.so 并退出代码 1。

由于此崩溃发生在 Tcl 运行时初始化之前、每个命令行标志都将被静默忽略—包括--mode unattended、--mode text、--help 和--debugtrace。 无法使用安装程序标志解决故障。

我还观察到(未经确认)libtbcload1.7.so 可能取决于主机进程在 dlopen 时预期提供的 Tcl 符号。 现代 64 位 Linux 发行版不包含兼容的 32 位 Tcl 运行时、即使上述路径问题得到解决、它也可能代表次要故障点。

尝试了什么

  • 在登录 shell 中以 root 身份运行
  • 预创建/root/.installbuilder/tmp
  • 在命令行上显式设置 home
  • 所有安装程序命令行标志 (--mode unattended、--help、--debugtrace)

其他方面、前提是 TI 能够分享指导

  • 是否支持或建议对 tilde 路径解析使用文件系统解决方法?
  • 是否已知修复了安装特定的 32 位 Tcl 版本和使用 LD_PRELOAD?
  • 此安装程序正常工作时是否存在受支持的 Linux 发行版或内核版本?

公钥

请告知您在 Linux 上安装 C2000Ware 5.02 的受支持路径。 鉴于安装程序 bootstrap 在参数解析之前失败,在我端的进一步调试将受到限制,无法访问安装程序源。 修补安装程序或替代分发格式 (zip/tarball) 将立即解决此问题。

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

    Fleenor 您是 在发布之前测试了您复制到我的查询中的 AI 回复、还是只是希望它可以正常工作?

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

    尊敬的 Bryant:

    您说得对、很抱歉发布未经测试的回复。 我的 Linux 机器目前处于无序状态、这对您没有帮助、也浪费了您的时间。

    • 您的根本原因分析是准确的。 BitRock 安装程序引导程序中的倾斜路径扩展错误是一个真正的问题,您的 strace 工作清楚地证实了这一点。
    • 这不是您可以通过安装程序标志、环境变量或库安装在您的最终解决的问题—崩溃发生在任何一个可到达的位置之前。
    • Ubuntu 25.10 是非常新的、不是此安装程序经过验证/支持的平台。

    我目前正在做的事情:

    • 我已将申请上报给 C2000Ware 软件团队、要求获取修补程序或 C2000Ware 5.02 的直接 tarball/zip 分发包。

    我们需要您提供的信息:

    • 您能否确认旧版 Ubuntu LTS(例如,22.04)在您的环境中是否是短期解决方法的一个选项? 这将为我们提供在升级安装程序问题时解除阻止的最快途径。

    我们会在收到软件团队的回复后立即更新此主题。

    此致、

    Zackary Fleenor

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

    我可能可以使用另一个操作系统提取它、我已经尝试了 26.04、25.10、现在将使用 24.04 进行测试。  建议使用 22.04 是可能的 — 然而,它是 4 岁,这是一个很长的时间。

    >我的 Linux 计算机当前处于无序状态

    我建议使用 VM(而不是单独的机器)的 Linux 机器、这些机器设置非常简单(请参阅 VirtualBox)。

    >我已向 C2000Ware 软件团队升级请求、要求安装修补程序或直接发布 C2000Ware 5.02 的 tarball/zip 分发包。

    您是否收到了团队关于包裹的 tarball/zip 文件的备注?

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

    布莱恩特  

    最新版本的 C2000Ware (v26.00.00.00.STS) 的安装程序是否也出现此问题?

    您可以使用  Resource Explorer 下载 zip 文件、

    默认情况下、这会显示最新版本。  使用下面的 snaphot 中显示的“管理版本“选项、启用要显示的先前版本



    如果启用了 5.02、则可以使用“Download“选项下载。 这将以 zip 文件的形式下载。

    此致

    Siddharth

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

    我很惊讶。  此 v26.000 版本在安装时没有问题。  我不知道这个版本甚至存在。  我不知道为什么它以前没有显示为可供下载。

    使用 Resource Explorer 下载 zip 文件是一个巧妙的技巧、我希望更多人也知道。

    现在、您可以关闭此 TT(或者我想我可以...)