strongswan-1. 编译 执行脚本.configure make命令 出错

    技术2022-07-17  78

    1. 执行后,出现如下错误:

    直接执行 sudo apt-get install gmp:

    2, 执行 sudo apt-get install libgmp-dev

    3. 安装成功后,执行./configure 命令:启用插件设置,可根据自己的需求进行设置

     

    支持插件列表:https://wiki.strongswan.org/projects/strongswan/wiki/Pluginlist        ./configure --enable-libipsec --enable-kernel-libipsec \                          --enable-sm4 --enable-sm3 --enable-sm1 --enable-vpn-externaldev \                           --enable-hash_null \                           --enable-vpn-linux_x64

    4. 脚本执行后,会自动生成MakeFile文件

    5 执行make

    6. 未安装automake 安装的版本不对应,修改版本

    7.make 编译

    一直编译不过,keyword.c文件为空,头文件中声明的函数和实现的函数中参数变量类型不一致导致

    参考文章如下:

    https://blog.csdn.net/sinat_20184565/article/details/84256832

    # cat /etc/issue Ubuntu 16.04.1 LTS \n \l

    首先安装必要的编译工具:

    # apt-get update # apt-get install build-essential # apt-get install autoconf

    如果没有显示的禁用GNU MP(libgmp)加密插件,需要安装libgmp库,GMP插件目前是默认启用的。

    # apt-get install libgmp-dev

    安装strongSwan编译需要用到的工具,Makefile将使用一下工具生成部分C语言文件,所以必须要configure之前安装这些工具,以免Makefile找不到这些工具的路径。

    # apt-get install gperf # apt-get install flex # apt-get install bison

    例如src/starter/Makefile,如果系统没有gperf工具,configure生成的Makefile文件中GPERF变量为空,导致keywords.c文件为空文件。可在安装gperf之后,重新configure一下,另外要删除之前产生的keywords.c空文件。

    8. 头文件中函数声明和实现参数类型不一致导致编译失败

    11111  编译是提示error: conflicting types for 

    (1)函数使用的位置位于声明之前,或未声明函数原型就使用函数;

    (2)函数声明的原型中参数或返回类型与函数实现时使用的类型不一致;

    (3)头文件中的循环引用导致错误;

    9.error: storage class specified for parameter

    发现是新增的头文件中,最后一个函数的声明缺少一个";“ 引起

    Processed: 0.009, SQL: 9