我想使用带有emscripten的Scons构建系统为web构建一个简单的HelloWorld程序。
我有一个简单的程序:
#include <stdio.h>
#include <emscripten/emscripten.h>
void loop()
{
printf("Hello world!n");
}
int main(int argc, char ** argv)
{
emscripten_set_main_loop(loop, -1, false);
return 0;
}
如果我用emscripten直接编译它,使用:
emcc main.cpp -o Test.html
它使用html正确地生成web程序集构建,但是我想做的是使用Scons编译它,并生成与emscripten生成的输出相同的输出。
我有这个Sconstruct scons脚本:
environmentRoot = Environment()
environmentRoot.Program("Test", ["main.cpp"])
问题是,我不知道如何告诉scons使用emscripten并生成web程序集文件。
谢谢!
您必须做两件事中的一件。
- 对已经定义的工具链(可能是gcc(使用SCons工具,并修改影响生成的命令行的Environment((变量
类似的东西可能会起作用:
env=Environment(tools=['gcc','gnulink'], CC='emcc', PROGSUFFIX='.html')
- 创建一个新的SCons工具和相关的Builder((。请参阅:https://scons.org/doc/production/HTML/scons-user.html#chap-建设者写作
无论哪种方式,您都需要的不仅仅是SCons的初学者知识,阅读用户指南(以及手册的部分内容(会很好https://scons.org/doc/production/HTML/scons-man.html