gpt4 book ai didi

linux - 将网络应用程序从 pc posix (linux) 移植到 STM32/lwip

转载 作者:太空宇宙 更新时间:2023-11-04 04:00:33 28 4
gpt4 key购买 nike

我想将我的基于 PC 的源代码(这是一个使用 posix 标准的网络应用程序)移植到使用 LWIP 堆栈的 Cortex M4 微 Controller 。我已经找到了与套接字相关的 API,但我陷入了以下困境:

#include <arpa/inet.h>
#include <netinet/in.h> ==> I have not found the equivalent in LWIP
#include <netinet/in_systm.h> ==> I have not found the equivalent in LWIP
#include <netinet/ip.h> ==> I have not found the equivalent in LWIP
#include <netinet/tcp.h> ==> I have not found the equivalent in LWIP
#include <sys/socket.h> ==> I have found the equivalent in LWIP
#include <sys/sysctl.h> ==> I have found the equivalent in LWIP

那么哪里可以找到丢失文件的c语言源代码呢?它们可以在 PC 上还是在网络上使用...?是否可以重写它们?

提前谢谢您。

最佳答案

lwip 不具有与典型 BSD 套接字相同的包含文件结构。

这就是我要做的:

  1. 注释或 ifdef 出标准网络包含文件,
  2. 改为包含 lwip 的“api.h”
  3. 尝试编译。
  4. 查看编译器提示的内容,并 grep 查找 lwip 的 src/include 中的特定类型,并包含适当的 LwIP 文件。
  5. 重复 3-5,直到编译器满意为止。

关于linux - 将网络应用程序从 pc posix (linux) 移植到 STM32/lwip,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23159931/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com