如何使用EMCC和子弹库链接从CPP文件汇编的.bc文件
How to link .bc files compiled from cpp files using emcc, with bullet libraries?
根据ammo.js的文档,它说:
最直接的事情是,如果您想在C 中编写代码,并将其运行在网络上。如果是这样,然后将代码编译到LLVM中,将其与bullet链接到使用Emscripten的JavaScript。/p>
那么,如何将C 编写的以下代码编译到LLVM比特码中,将其链接并在Web上运行?Bulethelloworld示例
如何将其链接到make.py中?即使我想编译特定程序并且不想将整个Bullet Library曝光到JavaScript,是否有必要始终使用ammo.idl文件?链接到make.py
,让我们从基础知识开始。如果您不知道制造和cmake,请在继续之前对其进行研究。
首先,您需要从源构建子弹库才能在网络上使用它。据我所知,您需要传递旗帜才能独立于Python构建它。研究这些标志,看看您需要什么。
子弹库正在使用cmake生成构建文件 - 因此首先从cmake中获取makefile,然后您可以" emcc"制造"生成的makefile。
此步骤的输出IE A .bc文件,将"链接"到下一步的输出。
现在,您要编译的示例.cpp取决于子弹库的某些标题。因此,在编译主机文件时,您将需要将EM 二进制路径传递到这些标题。曾经编译的这将产生您的主体。BC
现在您需要再次致电EM ,但是使用main.bc以及上一个步骤的.bc作为参数,还提供所需的输出文件,即JS/HTML。从某种意义上说,我们现在正在链接所有" .bc"文件以生成JS/HTML。
查找一些缺少符号的"警告",因为这可能意味着您的代码不会运行。
顺便说一句,所有这些都可以在官方Emscripten网站上获得,因此您应该引用它。
- 在头文件和 cpp 文件中使用一次 #pragma 时出现结构重定义错误
- 我应该将外部标头放在 .h 文件还是.cpp文件中?
- 递归地将FEATURE_FLAG导出到生成文件、CPP 和头文件
- 致命错误 C1001 :vs2017 15.8.4 的内部错误(编译器文件"msc1.cpp",第
- 包括头文件或 cpp 文件
- "configure"脚本如何检测我的系统是否支持某些头文件或 cpp 功能?
- 是否将命名空间范围文件本地 (.cpp) 常量放在匿名命名空间中
- 如何正确使用hpp文件和cpp文件中的嵌套类
- 体系结构x86_64的未定义符号:c++/ h 文件和 cpp 文件
- C++文件中.cpp静态对象声明
- 从另一个.cpp文件启动.cpp文件
- 共享对象中的符号名称与文件中.cpp函数不同
- 如何在库项目中添加头文件和 cpp 文件
- C++继承 - 覆盖功能,包括使用 "::" s、.h 文件和.cpp文件
- 令牌之前的预期类名 '{' - 包含头文件和 CPP 文件
- 如何使用EMCC和子弹库链接从CPP文件汇编的.bc文件
- 在标题文件和CPP文件中都包含库
- GCC:为什么编译.HPP文件与.cpp文件的结果不同
- 从QT创建者中的.QML文件生成.cpp和.h文件
- CBP文件和CPP文件之间有什么区别