记一次FreeBSD下ports编译curl的过程
Created 2022-05-15 / Updated 2022-05-15FreeBSD官方的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/
下。