首页 > 解决方案 > 如何将 TCL 和 Shell 脚本连接到 C/C++ 或任何其他语言?

问题描述

我在 TCL 和 Shell 中开发的脚本很少

  1. TCL 脚本 (project.tcl) 用于自动化项目创建和处理多个项目运行)
  2. 为结果分析创建 SHELL 脚本 (result.sh) 使用一组使用 sed、awk 和 grep 的命令进行错误处理。

我想通过将这些脚本嵌入到任何高级语言(如 C/C++ 文件)中来创建单个可执行文件。我们知道 TCL 是一个 C 库。什么样的接口文件 API 对实现这一点有用?

标签: capitcl

解决方案


  1. TCL 脚本非常简单,因为您可以很容易地嵌入 TCL 解释器。(API-参考:https ://wiki.tcl-lang.org/page/Tcl+C+API )
  2. 您可以简单地嵌入它们,在运行时提取它们(到 /tmp)并使用system(...),或者您可以尝试将它们翻译成 C: sed: https://github.com/lhoursquentin/sed-bin awk: awk2c grep: I didn't找不到一些翻译工具,但 grep 使用PCRE,所以你可以使用这些。

要将它们放入可执行文件中,您可以从这些脚本中创建一个 .tar(.gz) 文件,将其嵌入二进制文件(使用 gcc mingw 嵌入二进制 blob),然后加载(并提取(例如,使用 zlib))它在运行时,到一个临时目录。


推荐阅读