Other Parts Discussed in Thread: C2000WARE
器件型号: 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 级别跟踪安装程序。 故障序列为:
- 安装程序可将 libtbcload1.7.so (2003 年时代的 Tcl 二进制扩展名 GCC 3.2.2) 正确写入/root/.installbuilder/tmp/libtbcload1.7.so.
- 然后、它尝试使用字面 tilde 路径打开文件:openat (AT_FDCWD、“~/.installbuilder/tmp/libtbcload1.7.so)—这将返回 ENOENT、因为 Linux 内核不会扩展 tilde 字符。 波浪扩展仅为壳体特征。
- 安装程序将删除.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) 将立即解决此问题。

