UFSの備忘録 % Home / Categories

记一次FreeBSD下ports编译curl的过程

Created 2022-05-15 / Updated 2022-05-15

FreeBSD官方的curl二进制包不支持--dns-servers,所以决定自己编译一个。

注:因为实在受不了每次更新ports都要更新一大堆自己用不到的ports,所以才捣鼓出这种安装方式。

以下内容写入~/.login中:

setenv PORTSDIR ${HOME}/ports
setenv PORT_DBDIR ${HOME}/ports/var/db/ports
setenv PACKAGES ${HOME}/ports/packages

退出重新登录生效。

% cd
% mkdir -p ${PORT_DBDIR}
% cd ${HOME}/ports
% mkdir Keywords Mk Templates packages
% mkdir -p ftp/curl
% svnlite co https://svn.FreeBSD.org/ports/head/Keywords Keywords
% svnlite co https://svn.FreeBSD.org/ports/head/Mk Mk
% svnlite co https://svn.FreeBSD.org/ports/head/Templates Templates
% svnlite co https://svn.FreeBSD.org/ports/head/ftp/curl ftp/curl

% mkdir -p lang/perl5.32
% svnlite co https://svn.FreeBSD.org/ports/head/lang/perl5.32 lang/perl5.32

安装依赖:

# pkg install dialog4ports
# pkg install pkgconf
# pkg install c-ares

配置:

% cd ftp/curl
% make config
---DNS resolving options---
(*) CARES  Asynchronous DNS resolution via c-ares

编译:

% make package

出现如下提示:

=> Note: Vulnerable ports are marked as such even if there is no update available. => If you wish to ignore this vulnerability rebuild with ‘make DISABLE_VULNERABILITIES=yes’

% make DISABLE_VULNERABILITIES=yes package

编译完又出现一个错误提示:

cp: /usr/home/xxx/ports/ftp/curl/work/pkg/curl-7.75.0.txz: No such file or directory

我看了下work/pkg/目录下有curl-7.75.0.pkg这个文件,试着pkg add安装了一下,居然成功了,看来有可能是FreeBSD把二进制包的后缀名改了。类似的还有把/home/目录移到/usr/下。

Categories: [FreeBSD] [ftp]