【发布时间】:2018-04-23 05:13:13
【问题描述】:
我有一个包含 C++ 和 C 文件的项目,我正在使用 Emscripten 使用此命令从命令行编译它:
emcc -s WASM=1 -o output.html -s "EXTRA_EXPORTED_RUNTIME_METHODS=['ccall', 'cwrap', 'Pointer_stringify']" -s ASSERTIONS=1 -O1 -O2 -O3 -std=c++11 -s ALLOW_MEMORY_GROWTH=1 -s NO_EXIT_RUNTIME=1 file1.cpp file2.c
我需要使用 c++11 才能工作,但由于某些文件在 C 中,因此会出现此错误:
error: invalid argument '-std=c++11' not allowed with 'C/ObjC'
有什么方法可以告诉编译器只对 C++ 文件使用 c++11 而不是 C 文件?
【问题讨论】:
-
可以分别编译和链接,即编译
file1.cpp和file2.c,然后链接file1.o和file2.o。
标签: c++ c c++11 emscripten webassembly