warning
注意:新版本dnscrypt-proxy使用Go语言,无需再编译。教程仅供参考。
首先把源码包下下来:
1
| wget https://github.com/jedisct1/dnscrypt-proxy/archive/master.zip
|
解压:
1
2
| unzip master.zip
cd dns*
|
然后运行源码目录下的autogen.sh(自动生成编译的配置文件):
正常来说,接下来就会生成.configure脚本,运行这个脚本就可以生成编译配置了.
如果autogen.sh没有问题的话,就执行.configure脚本:
但很多系统(比如centos),会缺少libsodium\最新版本的libevent<span class=“crayon-v”>libtool–ltdl–devel等.这个时候就会提示相应的错误.对于centos建议执行下面的命令(其他系统也差不多,缺啥补啥,比如debian也会提示configure: error: libsodium >= 0.7.0 not found):
1
2
3
| yum update
yum -y install autoconf gettext libltdl* libevent git libsodium libevent* libtool-ltdl-devel
yum -y groupinstall 'Development Tools'
|
手动编译libsodium库:
下载地址http://download.libsodium.org/libsodium/releases/
我选择的是当前最新的libsodium(下载可能会卡,毕竟服务器在国外):
1
2
3
4
| cd ~
wget https://download.libsodium.org/libsodium/releases/LATEST.tar.gz
tar xf LATEST.tar.gz
cd libsodium*
|
解压好就进去编译安装:
1
2
3
4
5
6
| CFLAGS="-O3 -fPIC" ./configure
./autogen.sh
./configure
make
make install
ldconfig
|
至此libsodium安装完毕。
centos软件源上的libevent也不是最新的,而服务端要求2.0以上的版本,软件源提供的是1.4版本,因此导致编译出错。二话不说跑去官网下载源码编译:
下载地址:http://libevent.org/
我选择的是当前最新的稳定版本:
release-2.1.6-beta
2016.08.27
下载解压:
1
2
3
4
| ~
https://codeload.github.com/libevent/libevent/zip/release-2.1.6-beta
unzip release*
cd libevent*
|
编译安装:
1
2
3
4
5
6
7
| ./configure --prefix=/usr
./autogen.sh
./configure
make
make install
echo /usr/local/lib > /etc/ld.so.conf.d/usr_local_lib.conf
ldconfig
|
至此libevent安装完毕。
接下来你应该可以返回dnscrypt-proxy的源码目录顺利地运行./configure脚本了.
如果提示报错:
1
| configure: error: ./configure failed for src/libevent-modified
|
这时候请运行一下ldconfig再运行./configure
没有报错的话,你就可以make然后make install了
文章作者
Sliamb
上次更新
2016-10-31
许可协议
CC BY-SA 4.0 / 转载文章请保留链接。
文章链接
https://blog.03k.org/post/linux-dnscrypt-proxy.html
参与讨论
点击下方按钮参与讨论。或者点击下方按钮添加QQ群。