[andriod]‘lws_plat_file_close‘; ISO C99 and later do not support implicit function declarations

问题日志

external/webserver/src/src/serverhttp.c:599:3: error: call to undeclared function 'lws_plat_file_close'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration]
                lws_plat_file_close(wsi, pss->fd);

解决方案

修改Android.bp

libwebsockets/Android.bp

在cc_library_shared的cflags里面增加 "-Wno-implicit-function-declaration"配置

cc_library_shared {
    name: "libwebsockets",
    srcs: libwebsocketsSrcFiles,
    local_include_dirs: libwebsocketsIncludePath,
    export_include_dirs: ["include", "include/libwebsockets" ],
    shared_libs: [
        "libssl",
        "libcap",
    ],
    c_std: "gnu17",
    host_supported: true,
    product_variables: {
        debuggable: {
            cflags: [
                "-UNDEBUG",
				"-fPIC",
				"-Wall",
				"-Wno-pointer-sign",
				"-Wno-unused-parameter",  
				"-Wno-unused-variable", 
				"-Wno-unused-function",
				"-Wno-for-loop-analysis",
				"-Wno-switch",
				"-Wno-tautological-pointer-compare",
				"-Wno-error",
				"-Wno-visibility",
            ],
        },
    },
    target: {
        darwin: {
            enabled: false,
        },
        android: {
            shared_libs: [
                "libcrypto",
            ],
            cflags: [
                "-Wno-unused-parameter",
                "-Wno-missing-field-initializers",
				"-Wno-error",
				"-Wno-visibility",
            ],
        },
        host: {
            shared_libs: [
                "libcrypto",
            ],
            cflags: [
                "-UNDEBUG",
                "-Wall",
                "-Wsign-compare",
                "-Wstrict-aliasing",
                "-Wuninitialized",
                "-fvisibility=default",
                "-Wundef",
				"-Wno-error",
				"-Wno-visibility",
                "-Wtype-limits",
                "-Wignored-qualifiers",
                "-Wno-deprecated-declarations",
                "-pthread",
                "-Wno-unused-command-line-argument",
                "-Wno-unused-parameter",
            ],
        },
    },
}

修改后如下

cc_library_shared {
    name: "libwebsockets",
    srcs: libwebsocketsSrcFiles,
    local_include_dirs: libwebsocketsIncludePath,
    export_include_dirs: ["include", "include/libwebsockets" ],
    shared_libs: [
        "libssl",
        "libcap",
    ],
    c_std: "gnu17",
    host_supported: true,
    product_variables: {
        debuggable: {
            cflags: [
                "-UNDEBUG",
		"-fPIC",
		"-Wall",
		"-Wno-pointer-sign",
		"-Wno-unused-parameter",  
		"-Wno-unused-variable", 
		"-Wno-unused-function",
		"-Wno-for-loop-analysis",
		"-Wno-switch",
		"-Wno-tautological-pointer-compare",
		"-Wno-error",
		"-Wno-visibility",
		"-Wno-implicit-function-declaration",
            ],
        },
    },
    target: {
        darwin: {
            enabled: false,
        },
        android: {
            shared_libs: [
                "libcrypto",
            ],
            cflags: [
                "-Wno-unused-parameter",
                "-Wno-missing-field-initializers",
		"-Wno-error",
		"-Wno-visibility",
		"-Wno-implicit-function-declaration",
            ],
        },
        host: {
            shared_libs: [
                "libcrypto",
            ],
            cflags: [
                "-UNDEBUG",
                "-Wall",
                "-Wsign-compare",
                "-Wstrict-aliasing",
                "-Wuninitialized",
                "-fvisibility=default",
                "-Wundef",
		"-Wno-error",
		"-Wno-visibility",
                "-Wtype-limits",
                "-Wignored-qualifiers",
                "-Wno-deprecated-declarations",
                "-pthread",
                "-Wno-unused-command-line-argument",
                "-Wno-unused-parameter",
                "-Wno-implicit-function-declaration",
            ],
        },
    },
}

导出头文件

cc_library_headers {
    defaults: [""],
    name: "libwebsockets_headers",
    export_include_dirs: ["include", "include/libwebsockets"],
}

你可能感兴趣的:(Android,android)