2

如何使用 biicode 为我的程序添加 Emscripten 编译目标。我想做一个“bii cpp:configure”或带有参数的构建,这将使用下载的 Emscripten SDK (emsdk) 或安装的 Emscripten (来自包管理器) 构建我的 C/C++ 源代码。

4

1 回答 1

1

所以你想在你的代码中#include 一个 emscripten 标头并获取库?我建议编写一个充当代理的块,并设法下载和安装预构建的包,因为它们看起来相当不错。这可以通过多种方式完成:

  1. 用钩子编写块,这是python中的脚本。例如,您在这里有一个 OpenCV:http: //www.biicode.com/diego/opencv。这会将其安装到 biicode 预定义位置,可以通过 cmake 变量 ${BIICODE_ENV_DIR} 在 CMakeLists.txt 中访问该位置。您可以使用该变量来定义和链接库。您应该添加要包含在块中的标题,以便您实际上可以#include 事物,并让 biicode 检索事物。不要忘记将钩子添加到 biicode.conf [hooks] 部分

  2. 使用 cmake 脚本编写一个块。在 CMake 中,还可以检索和安装文件。在这种情况下,您可以在想要“使用”并使用 emscripten 的块的 CMakeLists.txt 中编写和 INCLUDE(youruser/yourblock/yourcmakescript)。该文件的处理方式与 C/C++ 文件完全相同,它们最初在“bii deps”中显示为未解析,可以通过“bii find”或将块添加到 [requirements] 部分来解析。

我最初推荐这个,因为这个库看起来有点复杂,它没有标准的 CMakeLists.txt,而是自定义配置。

编辑:现在我看到您的评论,这不是您真正想要的,而是使用自定义编译(交叉编译到 js)工具链。这实际上可以使用自定义工具链来完成:http: //docs.biicode.com/c++/building.html#using-a-custom-tool-chain 这可能需要掌握 CMake 和 emscripten 工具链。这个工具链的集成现在有点棘手,它正在改进,将在几周内发布。请注意,答案的其余部分仍然有效,您可以轻松地编写一个带有钩子的块,该钩子可以管理从二进制文件安装 emscripten 工具。

于 2015-01-22T09:32:44.597 回答