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.
工具/软件:Code Composer Studio
root@24b3494566fe:/wd/grid-tied /opt/ti/ccsv8/eclipse/ccstudio -noSplash -data ./workspace -application com.ti.ccstudio.apps.projectImport -ccs.help root@24b3494566fe:/wd/grid-tied /opt/ti/ccsv8/eclipse/ccstudio CCStudio:无法打开显示: root@24b3494566fe:/wd/grid-tied
我正在为 CCStudio V8开发 Docker 容器、以构建我们的项目。 我的命令行构建在 Debian 下本地工作、但在 Docker 中它不工作。 上述每条命令在终止前都运行大约7秒钟。 显示错误立即出现。 日志是否应该写入某个位置? 我应该如何调试该问题? 我的盲目猜测(我还能做什么? :])是我缺少一些去皮。 我不知道它们都是必需的、但我安装了以下组件(以及一些其他实用程序)。
运行 dpkg --add-architecture i386 && apt-get update && apt-get install -y \ libc6:i386 \ libx11-6:i386 \ libbasound2:i386 \ libatk1.0-0:i386 \ libcairo2:i386 \ libcups2:i386 \ libdbus-glib-1-2:i386 \ libgconf-2-4:i386 \ libgcrypt20:i386 \ libgdk-pixbuf2.0-0:i386 \ libgtk-3-0:i386 \ libice6:i386 \ libncurses5:i386 \ libsm6:i386 \ liborbit2:i386 \ libdev1:i386 \ libusb-0.1-4:i386 \ libstdc++6:i386 \ libstdc++6\ libxt6\ libxt6:i386 \ libxtst6:i386 \ libgnomeui-0:i386 \libusb-1.0-dev:i386 \ libcanberra-gtk-module:i386 \ GTK2-Engine-murrine:i386 \ libpython2.7 \解压缩
感谢您提供的任何指导。
谢谢、
-Kyle
您好、Aarti、
您是否知道 Ubuntu 17.10的完整软件包依赖项列表? 这是我的第一个 Docker 容器、但我首先要假设它是与 Docker 本身无关的常规问题。 也就是说、Ubuntu Docker 映像非常小、因此通常存在的软件包不存在。
谢谢、
-Kyle
[引用 user="Kyle Altendorf">如何调试该问题? 我的盲目猜测(我还能做什么? :])是我缺少一些去皮。 如果尝试在 strace 下运行第1条命令,strace 输出可能会识别缺少的依赖项。 您必须搜索 strace 日志、查找无法加载.so 文件的错误、然后确定缺少的.so 文件来自哪个软件包。
切斯特、您好!
感谢您的建议。 我必须构建新的 Ubuntu VM (真的吗? 我制作了10 GB 驱动器? :[) 我将给它一个快照。
我将再次尝试在支架中扩散封装/故障负载、但我取得了一些进展。 CCStudio 会一直运行、直到我安装 C2000 6.4。 我切换到了18.04。 应使用 github.com/.../820ad02a565094f209fd029fa64b49b386486494。
/home/epc/g/20/docker 开发 sudo Docker 映像 altendky/ccstudio8 存储库 标签 图像 ID 已创建 尺寸 altendky / ccstudio8最新版本 f2942ef4898e 18分钟前 3.38GB altendky/ccstudio8. 102a84b604dd 5天前 4.45GB /home/epc/g/20/docker 开发 sudo Docker run --rm --security-opseccom: unconfined -it altendky/ccstudio8 bash root@95690ff572cb:/wd#/opt/ti/ccsv8/eclipse/ccstudio -noSplash -data ./workspace -application com.ti.ccstudio.apps.projectImport -ccs.help 用法: Eclipse -noSplash -data " " -application com.ti.ccstudio。apps.importProject -ccs.location [ ] 其中选项包括: -ccs.location 包含工程的位置的绝对或相对路径。 相对路径将被假定为相对于工作目录。 -ccs.device 器件型号 ID。 仅当'-ccs.location'标志解析为.projectspec 文件时适用。 -ccs.definePathVariable [@范围(全局|项目)] 定义用于解析可移植链接文件路径的给定路径变量(可选) (还定义了具有相同名称和值的全局编译宏)。 (可选)指定范围(默认为"global")。 -ccs.copyIntoWorkspace 将项目文件夹和内容复制到工作区目录中(可选)。 默认为"false"。 -ccs.overwrite 强制覆盖现有文件系统资源(可选)。 -ccs.renameTo 将导入的工程重命名为指定的名称。 -ccs.autoBuild 对导入/创建的工程执行增量编译(可选)。 -ccs.autoImportReferencedProjects 如果为"true"、则尝试自动导入与主工程位于同一父目录中的任何引用工程。 -ccs.autoRenameReferencedProjects 如果'true'、并且存在'-ccs.renameTo'标志、则任何导入的引用工程也将自动重命名。 -ccs.referencedProjectSearchDirectory 目录中搜索引用的工程。 仅在存在"-ccs.autoImportReferencedProjects'标志时适用。 -ccs.captureCopiedFileOrigins 捕获导入期间复制到工程中的所有资源的原始位置。 这些内容将被捕获到名为"copiedFileOrigins.txt"的文本文件中。 -ccs.captureProjectspecApplicability 捕获导入的 projectspec 适用的器件列表。 这些内容将被捕获到一个名为'projectSpectrApplicability.txt'的文本文件中。 -ccs.args 包含任何额外参数的文件(可选)。 -ccs.help 打印此帮助消息。 root@95690ff572cb:/wd#/opt/ti/ccsv8/eclipse/ccstudio -application org.eclipse.equinox.p2.director -noSplash -repository software-dl.ti.com/.../p2linux -installIU com.ti.cgt.c2000.6.4.linux.feature.group 安装 com.ti.cgt.c2000.6.4.linux.feature.group 6.4.12。 操作在10419 ms 内完成。 root@95690ff572cb:/wd#/opt/ti/ccsv8/eclipse/ccstudio -noSplash -data ./workspace -application com.ti.ccstudio.apps.projectImport -ccs.help root@95690ff572cb:/wd#
下面是我用于处理在运行的 Ubuntu 18.04 VM 中记录的 strace 日志的小脚本。 它导致`libc6:AMD64 libgcc1:AMD64 libpython2.7:AMD64 libstdc++6:AMD64 locales zlib1g:AMD64`,并且在 Docker 中安装这些文件未解决该问题。
导入 pathlib 导入重新 导入子进程 导入 sys paths = set() packages = set() for line in sys.stdin: 如果 line.StartsWith ('open'): 如果 line.casefold():中没有此类文件 继续 P、= re.finditer (^"(["]+)"'、行) 路径= p[1] 如果 path 或 path.StartsWith ('/opt/ti、'/home/')中的路径或不是 path.StartsWith ('/')中的路径: 继续 paths.add (路径) 封装= subprocess.run ( [ 'dpkg'、 '-S'、p[1]、 ]、 stdout=subprocess.pipe, 编码='UTF-8、 ).stdout 如果 len (package)> 100: 打印('ack'、p[1]) 中断 软件包、_、_= package.rpartition (':') package.add (package) print (''.join (sorted (packages)))(packages.add (package) print ('.join
Kyle、
我不确定您是否已经在这方面取得了更多进展、但一位同事最近通过运行与您相同的命令、帮助我在 Ubuntu 18.04系统上测试类似的方案。
根据上述帖子、您似乎可以在命令行上正常运行 CCS、直到安装 C2000编译器工具 v6.4。
我们在中观察到了与安装编译器之前相同的行为、projectImport 命令行的工作方式与您的命令行类似。 发出安装编译器的命令后、所发生的情况是安装实际上仅在 CCS 的下一次重新启动期间完成。 因此、当第二次发出 projectImport 命令时、它只会启动编译器安装、如下面的屏幕截图所示。
但是,安装从未完成。 我们认为这可能是由于此较旧版本编译器工具的安装程序与较新的 Ubuntu 版本之间的不兼容。 在您的情况下、我怀疑由于缺少 GUI、您无法看到安装程序正在运行(或尝试运行)。
如果您需要使用此特定编译器版本并已将其安装在另一个系统上、您可以尝试将整个文件夹复制到此系统、以从存储库绕过安装。 但是,除此之外,您的系统上似乎已经成功运行了命令行界面。
感谢后续行动。 事实上、我们可以通过删除几个不正确的`#include 来更新到18.1 `μ A。 我仍然感到很臭、因为我没有使它正常工作、但添加足够多的内容、我可以看到 GUI 可能会很好。 我从未喜欢处理像这样集成到 Eclipse 中的东西。 只有标准的外部构建系统要容易得多。