You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Linux下如何将Tor作为库集成到C项目并使用tor_api.h

在Linux下将Tor编译为外部库并使用tor_api.h的方法

一、前置依赖安装

以Debian/Ubuntu为例,先安装编译Tor所需的依赖包:

sudo apt update && sudo apt install libevent-dev libssl-dev zlib1g-dev autoconf automake libtool

二、下载并编译Tor为库

  1. 下载Tor稳定版源码包(无需克隆整个Git仓库),获取最新稳定版的.tar.gz压缩包后解压,进入源码目录:
tar -xzf tor-*.tar.gz
cd tor-*
  1. 生成配置文件(若使用Git克隆的源码需执行此步,官方tar包通常已自带configure,可跳过):
sh autogen.sh
  1. 配置编译选项,核心是开启库模式,同时指定独立安装目录(避免污染系统默认路径):
./configure --enable-library --prefix=/usr/local/tor-lib
  • --enable-library:强制Tor编译为可链接的共享库,并生成tor_api.h头文件
  • --prefix:指定编译后头文件、库文件的安装路径,此处设为/usr/local/tor-lib,可自行修改
  1. 编译并安装:
make -j$(nproc)  # 多线程加速编译
sudo make install

执行完成后,/usr/local/tor-lib/include目录下会出现tor_api.h,/usr/local/tor-lib/lib目录下会有libtor.so等库文件。

三、在自有C项目中引用Tor库

编译项目时,需指定Tor的头文件路径和链接库:

gcc your_tor_app.c -o your_tor_app -I/usr/local/tor-lib/include -L/usr/local/tor-lib/lib -ltor -pthread
  • -I:指定Tor头文件所在目录
  • -L:指定Tor库文件所在目录
  • -ltor:链接Tor共享库
  • -pthread:Tor依赖线程库,必须添加

四、运行程序的注意事项

运行编译后的程序前,需让系统找到Tor共享库,可选两种方式:

  1. 临时设置环境变量:
LD_LIBRARY_PATH=/usr/local/tor-lib/lib ./your_tor_app
  1. 永久添加库路径:
echo "/usr/local/tor-lib/lib" | sudo tee /etc/ld.so.conf.d/tor-lib.conf
sudo ldconfig

关键说明

默认执行./configure时,Tor仅编译客户端/服务器可执行文件,不会生成库文件和安装tor_api.h,必须显式添加--enable-library选项才能开启库模式编译。

内容的提问来源于stack exchange,提问作者Gianla

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.14 23:48:24