在哪里可以找到编译/构建配置 - Tor 源代码问题

在哪里可以找到编译/构建配置 - Tor 源代码问题

由于我需要修补尚不支持绑定到链路本地 ipv6 地址的 tor,因此我从源代码对其进行了编译。

编译成功(对 ar 命令有轻微警告)但生成的可执行文件有奇怪的行为:它每5分钟改变一次身份。

以下是有关此现象的 tor trac 的详细帖子:https://trac.torproject.org/projects/tor/ticket/24350

为了确保观察结果不是由于我的补丁引起的,上面的帖子是在编译未修改Ubuntu 源代码库中的源代码。在最新的 tor(本文发布时为 0.3.1.8)中也观察到了同样的行为。

我怀疑我所观察到的现象来自某个库(libevent、libssl)的配置参数,该库的默认超时时间为 5 分钟。

对于 tor,但更普遍地对于我可能想要编译的任何包,我想知道在哪里找到要设置的所有“参数”,以便可执行文件具有与 Ubuntu 存储库中相同的行为。

例如,我可以看到 tor 搜索其配置的路径是不同的(下面第一个是来自 Ubuntu repo 的 tor 二进制文件):

$ strings -d tor | grep -e '/.*torrc'
/etc/tor/torrc-defaults
/etc/tor/torrc
~/.torrc
$ strings -d tor_0.3.1.8 | grep -e '/.*torrc'
/usr/local/etc/tor/torrc
~/.torrc
/usr/local/etc/tor/torrc-defaults

那么我猜,当你在 Debian/Ubuntu 上构建/编译某些东西时,你会有一组参数:路径、超时、各种选项等......

我可以忍受不同的默认路径(systemd 服务强制配置文件的路径),但“5 分钟错误”非常烦人。此外,由于 tor 是匿名的,可能会有更严重的“静默错误”像这样......如果我能避免它们,我会很高兴!

总之,我想设置一个构建环境,以便能够使用与 Ubuntu 官方存储库中完全相同的默认参数来编译可执行文件。第一个实例是使用与 Ubuntu 存储库中相同的“参数”来编译 tor。

答案1

在这个问题上找到了它(所以这是一个复制

用于 Ubuntu 软件包的配置和编译设置

这个答案指向一个非常有用的链接: https://www.cyberciti.biz/faq/rebuilding-ubuntu-debian-linux-binary-package/

这解决了我的问题...而且我甚至有一个新的.deb(尽管存在签名问题,但我会调查的!)

相关内容