我正在尝试使用emscripten编译用于Web汇编的现有C ++项目。现有代码的一部分使用boost文件系统来访问文件。即,以下是ifile结构的定义方式:
struct ifile : public boost::filesystem::ifstream {
ifile(const path& name) : boost::filesystem::ifstream(name) {
if(!(*this))
std::cerr << "fdsfsdf\n";
throw file_error(name, true);
}
ifile(const path& name, std::ios_base::openmode mode) : boost::filesystem::ifstream(name, mode) {
if(!(*this))
throw file_error(name, true);
}
};
使用em ++可以很好地编译代码,并且我具有在链接过程中提供的经过emscripten编译的boost-filesystem库。但是,当我尝试在编译结果上运行节点时,它总是像这样停止:
node fileops.js
fdsfsdf
exception thrown: 5303976 - Exception catching is disabled, this exception cannot be caught. Compile with -s DISABLE_EXCEPTION_CATCHING=0 or DISABLE_EXCEPTION_CATCHING=2 to catch.
我该怎么办?