如何通过在我的项目目录中包含这些文件来使用wpa_ctrl.h中的API

时间:2017-05-25 07:52:42

标签: openwrt wpa-supplicant hostapd

从官方文档中提到wpa_ctrl.c:“外部程序可以将这个文件链接到它们中”,该怎么做?

我的openwrt构建目录中有“hostapd-full”。其中一切都很好(Wpa ctrl和wpa cli)

我必须编写一个示例程序,该程序位于此“hostapd-full”目录的外部,以使用wpa_cli / ctrl API。

代码:

#include "includes.h"
#include <dirent.h>
#include "wpa_ctrl.h"
#include "common.h"

static struct wpa_ctrl *ctrl_conn;
static const char *ctrl_iface_dir = "/var/run/wpa_supplicant";
int main()
{
    ctrl_conn = wpa_ctrl_open(ctrl_iface_dir);
    if (!ctrl_conn){
        printf("Could not get ctrl interface!\n");
        return -1;
    }
    return 0;
}

//错误:    错误:     “/tmp/ccnSzmjE.o:在函数main': hostap_wpa_client.c:(.text+0xf): undefined reference to中wpa_ctrl_open'     collect2:错误:ld返回1退出状态     Makefile:8:目标'日志记录'的配方失败     make:*** [logging]错误1“

1 个答案:

答案 0 :(得分:0)

请查看OpenWrt中的creating packages。 您需要为程序创建一个新包,并将wpa包作为包的依赖项,并将库添加到包Makefile中的LDFLAGS