gpt4 book ai didi

curl - 如何用boringssl构建curl?

转载 作者:行者123 更新时间:2023-12-04 05:53:29 25 4
gpt4 key购买 nike

我正在尝试在 Ubuntu 16.04 上使用boringssl 构建 curl。

我的boringssl建好了。

使用 curl 7.53 我配置使用:

./configure --with-ssl=/home/john/dev/boringssl

并且输出显示“SSL 支持:启用(BoringSSL)”OK。

但是当我 make ,我得到错误开始
  CC       vtls/libcurl_la-openssl.lo
In file included from vtls/openssl.c:86:0:
/usr/include/openssl/ui.h:85:1: error: unknown type name ‘UI’
UI *UI_new(void);
^
/usr/include/openssl/ui.h:86:1: error: unknown type name ‘UI’
UI *UI_new_method(const UI_METHOD *method);
^
/usr/include/openssl/ui.h:86:25: error: unknown type name ‘UI_METHOD’
UI *UI_new_method(const UI_METHOD *method);
^

并以
Makefile:2023: recipe for target 'vtls/libcurl_la-openssl.lo' failed
make[2]: *** [vtls/libcurl_la-openssl.lo] Error 1
make[2]: Leaving directory '/home/john/dev/curl-7.53.0/lib'
Makefile:734: recipe for target 'all' failed
make[1]: *** [all] Error 2
make[1]: Leaving directory '/home/john/dev/curl-7.53.0/lib'
Makefile:893: recipe for target 'all-recursive' failed
make: *** [all-recursive] Error 1

我不确定这是否 /usr/include/openssl/ui.h当 curl 配置为使用boringssl 构建时,应该使用头文件,似乎这个文件只存在于OpenSSL 中,而不存在于boringssl 中。

最佳答案

没有openssl/ui.h在boringssl 树中,您的构建清楚地发现了另一组包含文件(我猜是普通的OpenSSL)。
这就是我用boringssl构建的方式:
构建无聊ssl
$HOME/src 是我在此示例中放置代码的位置。你可以选择任何你喜欢的地方。

$ cd $HOME/src
$ git clone https://boringssl.googlesource.com/boringssl
$ cd boringssl
$ mkdir build
$ cd build
$ cmake -DCMAKE_POSITION_INDEPENDENT_CODE=on ..
$ make
设置构建树以被 curl 的配置检测到
在boringssl 源码树根中,确保有 libinclude目录 lib dir 应该包含两个库(我将它们符号链接(symbolic link)到构建目录中)。 include默认情况下,dir 已经存在。制作和填充 lib像这样(在源树根中发出的命令,而不是在 build/ 子目录中)。
$ mkdir lib
$ cd lib
$ ln -s ../build/ssl/libssl.a
$ ln -s ../build/crypto/libcrypto.a
配置 curl LIBS=-lpthread ./configure --with-ssl=$HOME/src/boringssl (我指出了boringssl树的根)
验证在配置运行结束时,它应该说它检测到要使用 BoringSSL
构建 curl
运行 make在 curl 源代码树中
现在您可以使用 make install 正常安装 curl等等

关于curl - 如何用boringssl构建curl?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42391088/

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