我正在尝试将Linux / Android C应用程序迁移到macOS / iOS。
我有这个问题,此应用有时使用libnl库,在源代码中您可以看到包括:
#include <linux/netlink.h>
#include <linux/rtnetlink.h>
#include <linux/if_tun.h>
这些文件来自libnl库,您可以在这里找到有关此库的信息:
https://www.infradead.org/~tgr/libnl/doc/core.html#_introduction
我不知道macOS和iOS中的等效功能是什么。也许是一样的,但走了另一条路?
我也尝试下载libnl库并将其添加到/ usr / local / include中,但是它具有其他依赖关系,这就是为什么我认为我使用错误的方式...
我找到了该指南https://developer.apple.com/library/content/documentation/Darwin/Conceptual/NKEConceptual/intro/intro.html#//apple_ref/doc/uid/TP40001858-CH225-SW1
但这意味着我需要重写使用libnl的代码的所有部分?
有任何想法吗?
提前致谢!
最佳答案
您可能需要对代码进行一些更改。快速浏览libnl文档,您可能可以使用GDAsyncSocket。
https://github.com/robbiehanson/CocoaAsyncSocket
但是,如果看不到您的代码,就无法确定。
关于ios - macOS和iOS上的libnl,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/40137149/