问题描述
由于没有适用于micropython的正式aws物联网设备sdk,所以我想将official C SDK嵌入到micropython中作为用户模块。
我遵循micropython官方documentation的指南,内容涉及如何将外部C模块编译为micropython。
我要使用的第一种方法是initializeMqtt()
。我将包含目录添加到了makefile中(例如:CFLAGS_USERMOD += -I$(LIBS)/$(OPENSSL_DIR)/include/
)。然后我可以编译它,但是在遇到与openssl有关的链接器错误之后。我从openssl官方Github页面克隆了openssl,并更新了include目录,并开始将丢失的.c文件添加到makefile中进行编译。在得到相同结果之后,尝试找到丢失的引用(搜索在openssl源代码中),然后将所需的.c文件添加到makefile中(例如:SRC_USERMOD += $(LIBS)/$(OPENSSL_DIR)/crypto/cryptlib.c
)。现在我有了越来越多的链接,像这样的错误:
- 对
X509_VERIFY_ParaM_move_peername
的未定义引用。 - 对
tls1_set_groups_list
的未定义引用 等等。
我使用MacOS,已经安装了openssl,并在.profile中添加了必须具有的标志。
是否有可能实现我想要的目标?
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)