aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGravatar zfl9 <zfl9.com@gmail.com> 2020-03-07 15:04:04 +0800
committerGravatar zfl9 <zfl9.com@gmail.com> 2020-03-07 15:04:04 +0800
commited5036c062816329a5eff0f34c40302d651b427b (patch)
treed75eeb255f9c4b8d4b63f19eb481301715e8b3ce
parentuse libev instead of libuv (diff)
downloaddns2tcp-ed5036c062816329a5eff0f34c40302d651b427b.tar.gz
dns2tcp-ed5036c062816329a5eff0f34c40302d651b427b.tar.bz2
dns2tcp-ed5036c062816329a5eff0f34c40302d651b427b.zip
use libev instead of libuv
-rw-r--r--README.md27
1 files changed, 1 insertions, 26 deletions
diff --git a/README.md b/README.md
index 6a14aaf..7adc4a5 100644
--- a/README.md
+++ b/README.md
@@ -2,38 +2,13 @@
一个 DNS 实用工具,用于将 DNS 查询从 UDP 模式转换为 TCP 模式。当然 pdnsd、dnsforwarder 也支持该功能,但是它们通常都有着较为繁杂的配置,而很多时候我们只是需要使用它们的 udp2tcp 功能而已,因此有了 `dns2tcp`。`dns2tcp` 设计的非常简洁以及易用,它不需要任何配置文件,直接在命令行参数中指定一个 **本地 UDP 监听地址** 以及一个 **远程 DNS 服务器地址**(该 DNS 服务器支持 TCP 查询)即可,没有任何多余的功能。
## 如何编译
-**动态链接 libuv**:适用于本地编译,使用包管理器安装 [libuv](https://github.com/libuv/libuv) 依赖库即可(如 `yum install libuv-devel`):
```bash
git clone https://github.com/zfl9/dns2tcp
cd dns2tcp
make && sudo make install
```
dns2tcp 默认安装到 `/usr/local/bin/dns2tcp`,可安装到其它目录,如 `make install DESTDIR=/opt/local/bin`。
-
-**静态链接 libuv**:适用于交叉编译,此方式编译出来的 `dns2tcp` 不依赖任何第三方库,可直接拷贝到目标系统运行:
-```bash
-# 进入某个目录
-cd /opt
-
-# 获取 libuv 源码包
-libuv_version="1.32.0" # 定义 libuv 版本号
-wget https://github.com/libuv/libuv/archive/v$libuv_version.tar.gz -Olibuv-$libuv_version.tar.gz
-tar xvf libuv-$libuv_version.tar.gz
-
-# 进入源码目录,编译
-cd libuv-$libuv_version
-./autogen.sh
-./configure --prefix=/opt/libuv --enable-shared=no --enable-static=yes CC="gcc -O3"
-make && sudo make install
-cd ..
-
-# 获取 dns2tcp 源码
-git clone https://github.com/zfl9/dns2tcp
-
-# 进入源码目录,编译
-cd dns2tcp
-make INCLUDES="-I/opt/libuv/include" LDFLAGS="-L/opt/libuv/lib" && sudo make install
-```
+交叉编译时只需指定 CC 变量,如 `make CC=aarch64-linux-gnu-gcc`(如果报错,请先执行 `make clean`,然后再试)。
## 如何运行
```bash