采用 AWS-LC 1.39.0 是因为截至本次编辑(2025-03-31)前,HAProxy 最近一次与 AWS-LC 同步是 2024-11-26。根据 AWS-LC 的更新日志来看,当时的最新版本应该是 1.39.0
cmake -GNinja \
-DCMAKE_BUILD_TYPE=RelWithDebInfo \
-DCMAKE_INSTALL_PREFIX=/opt/aws-lc \
../aws-lc-1.39.0
ninja run_tests && sudo ninja install
// 有些情况下 ninja run_tests 会莫名其妙的出问题。如果不怕服务器爆炸的话可以把安装指令改成
sudo ninja install
// 实测也能跳过测试正常安装与使用。
sudo dnf install lua-devel pcre2-devel
make -j $(nproc) \
TARGET=linux-glibc \
USE_OPENSSL_AWSLC=1 \
USE_LUA=1 \
USE_SYSTEMD=1 \
USE_PROMEX=1 \
USE_QUIC=1 \
USE_OPENSSL=1 \
USE_SLZ=1 \
USE_PCRE2=1 \
USE_PCRE2_JIT=1 \
USE_TFO=1 \
USE_ENGINE=1 \
USE_NS=1 \
USE_THREAD=1 \
USE_CPU_AFFINITY=1 \
USE_LINUX_TPROXY=1 \
USE_ACCEPT4=1 \
SSL_INC=/opt/aws-lc/include \
SSL_LIB=/opt/aws-lc/lib64 \
LDFLAGS="-Wl,-rpath,/opt/aws-lc/lib64"
CPU_CFLAGS=-march=native
march=native