在Arduino IDE中链接预构建对象
Linking prebuilt object in Arduino IDE
我正在尝试编译一个arduino程序。
我想有一些文件已经编译,除了草图的一切。我已经修改了arduino IDE来编译未编译的文件,但我需要所有文件的。h文件。
是否有可能在CPP中编译具有。o和没有。h的其他文件?
我不想让任何人看到我的文件或代码,包括。h.
如果可能的话,我将开始检查arduino代码寻找如何修改它,但如果不是,我将不得不寻找另一种方法来做。
Arduino使用c++,编译后的c++函数名被修改为包含object(.o)文件中的参数类型。要让用户代码编译成兼容的名称混淆,唯一的方法就是在编译时使用完整的函数声明。
因此,您必须至少提供一个头文件,其中包含用户将调用的所有函数的完整函数声明。这不能是秘密,这是你的API,如果你不告诉他们,用户就不能使用它。
不需要在公共头文件中包含内部私有函数或数据类型的声明或定义。
因此,创建一个library_public.h
文件,其中只包含用户应该知道的声明,并将其提供给您的.o文件。然后创建一个包含所有秘密内容的library_private.h
。
相关文章:
- 如何为 mlpack 的 kmeans 构建 HamerlyKmeans 对象
- 如何在构建对象堆栈时解决转换错误?
- 生成文件不构建对象,我告诉它如何
- 使用C对象指针构建PyObject*
- 从单个.cpp构建共享对象
- 仅在函数内部构建对象时EXC_BAD_ACCESS
- lambda 对象构建成本高吗?
- 如何构建程序以避免查询对象类型?
- 构建对象数组是如何工作的?我被这个例子困住了
- 在Python中构建类似于__repr__的对象的可打印表示
- 如何巩固 Bazel 构建对象的顺序
- 在静态函数中返回对象而不是构建对象的优点是什么?
- 构建对象的方法之间有什么区别
- 在C 中以通用方式构建对象,设置字段并返回对象
- 无法构建对象
- GCC 一起构建对象和依赖项文件
- 在Arduino IDE中链接预构建对象
- C++ifstream来构建对象
- 如何从类似的模板类构建对象
- 围绕shared_ptr构建对象系统