Желите да направите најновији цУРЛ из извора?
цУРЛ који се испоручује са оперативним системом можда није ажуран, а ако вам је потребна најновија верзија за одређени захтев, онда морате да направите из извора.
У последње време сам тестирао ХТТП/3 користећи цУРЛ са подразумеваном верзијом испорученом на ЦентОС-у, али то није функционисало. БТВ, има још тога што можете да урадите са цУРЛ-ом.
[[email protected] ~]# curl --version curl 7.29.0 (x86_64-redhat-linux-gnu) libcurl/7.29.0 NSS/3.44 zlib/1.2.7 libidn/1.28 libssh2/1.8.0 Protocols: dict file ftp ftps gopher http https imap imaps ldap ldaps pop3 pop3s rtsp scp sftp smtp smtps telnet tftp Features: AsynchDNS GSS-Negotiate IDN IPv6 Largefile NTLM NTLM_WB SSL libz unix-sockets [[email protected] ~]#
Међутим, најновија верзија цУРЛ-а (7.67) подржава ХТТП/3. Дакле, имао сам само једну опцију – изградити из извора. Ово је само један пример; можда имате неке друге захтеве.
Следећи пример је за 7.67 (најновије док пишем) на ЦентОС 8.к и Убунту 20.к. Али процедура остаје иста за било коју другу верзију.
Преглед садржаја
Предуслов
Хајде да инсталирамо потребне зависности.
- Ажурирајте систем. Иако је ово опционо, више волим да то радим. Увек имам ажуриране инсталиране пакете.
yum update -y
- Инсталирање потребних пакета
yum install wget gcc openssl-devel -y
wget https://curl.haxx.se/download/curl-7.67.0.tar.gz
- Извуците преузету гз датотеку
gunzip -c curl-7.67.0.tar.gz | tar xvf -
То би створило нову фасциклу у тренутном радном директоријуму
Изградња цУРЛ-а на ЦентОС/РХЕЛ-у
Када преузмете и извучете најновији цУРЛ, време је да их направите.
- Идите у новостворену фасциклу након екстракције
cd curl-7.67.0
- Конфигуришите са ССЛ-ом као у наставку
./configure --with-ssl
- Видећете излаз нешто као испод.
configure: Configured to build curl/libcurl: Host setup: x86_64-pc-linux-gnu Install prefix: /usr/local Compiler: gcc CFLAGS: -Werror-implicit-function-declaration -O2 -Wno-system-headers -pthread CPPFLAGS: LDFLAGS: LIBS: -lssl -lcrypto -lssl -lcrypto -lz curl version: 7.67.0 SSL: enabled (OpenSSL) SSH: no (--with-libssh2) zlib: enabled brotli: no (--with-brotli) GSS-API: no (--with-gssapi) TLS-SRP: no (--enable-tls-srp) resolver: POSIX threaded IPv6: enabled Unix sockets: enabled IDN: no (--with-{libidn2,winidn}) Build libcurl: Shared=yes, Static=yes Built-in manual: enabled --libcurl option: enabled (--disable-libcurl-option) Verbose errors: enabled (--disable-verbose) Code coverage: disabled SSPI: no (--enable-sspi) ca cert bundle: /etc/pki/tls/certs/ca-bundle.crt ca cert path: no ca fallback: no LDAP: no (--enable-ldap / --with-ldap-lib / --with-lber-lib) LDAPS: no (--enable-ldaps) RTSP: enabled RTMP: no (--with-librtmp) Metalink: no (--with-libmetalink) PSL: no (libpsl not found) Alt-svc: no (--enable-alt-svc) HTTP2: disabled (--with-nghttp2) HTTP3: disabled (--with-ngtcp2, --with-quiche) ESNI: no (--enable-esni) Protocols: DICT FILE FTP FTPS GOPHER HTTP HTTPS IMAP IMAPS POP3 POP3S RTSP SMB SMBS SMTP SMTPS TELNET TFTP Features: SSL IPv6 UnixSockets libz AsynchDNS NTLM NTLM_WB HTTPS-proxy
make make install
Биће потребно неколико секунди да се заврши, а када се заврши; можете да проверите верзију да бисте били сигурни да је успешно инсталирана.
Изградња цУРЛ-а на Убунту-у
Претпостављам да сте преузели најновију верзију као што је објашњено у одељку предуслови.
- Идите у фасциклу у којој се екстрахује преузети цУРЛ
- Инсталирајте зависности
apt-get install -y binutils-common binutils make
- Ако немате инсталиране горе наведене зависности (бинутилс), можете добити следећу грешку.
configure: error: ar not found in PATH. Cannot continue without ar.
- И, време је да се сада изгради помоћу наредбе цонфигуре.
./configure --with-ssl
- Ако нема грешке из горњег извршења, коначно инсталирајте командом маке.
make make install
То је све!
Верификација
Користите –версион да видите детаље о верзији.
# curl --version curl 7.67.0 (x86_64-pc-linux-gnu) libcurl/7.67.0 OpenSSL/1.0.2k-fips zlib/1.2.7 Release-Date: 2019-11-06 Protocols: dict file ftp ftps gopher http https imap imaps pop3 pop3s rtsp smb smbs smtp smtps telnet tftp Features: AsynchDNS HTTPS-proxy IPv6 Largefile libz NTLM NTLM_WB SSL UnixSockets #
Закључак
Видите, лако је када имате кораке. Надам се да ће вам ово помоћи да инсталирате цУРЛ из извора.
Да ли сте уживали у читању чланка? Шта кажете на дељење са светом?