在 Ubuntu 和 Fedora Linux 上安装 uTox
在本教程中,我们将安装 uTox,这是一个著名的 Tox 开源即时消息客户端。根据项目网站,Tox 可用于保护人们免受数字监控。它是一款开源且易于使用的即时通讯软件,可帮助您在不受任何监视的情况下与其他人联系。 Tox 的所有功能(即时消息、语音、视频和文件共享)都使用开源库进行端到端加密。
uTox 是 Tox 软件的轻量级客户端,它通过不安全的网络将用户与朋友和家人联系起来。它支持 Windows、Linux、Mac OS 和 Android 平台。
Linux 发行版
在本 uTox 教程中,我们考虑了以下 Linux 发行版,因为它们的桌面版非常人性化。
- Ubuntu 15.04 LTS(64 位)
- Fedora 23(64 位)
先决条件
在Linux平台上编译uTox,需要以下包。
锂钠
Sodium 是一个可移植、可交叉编译、可安装的软件库,它提供加密、解密、签名和散列加密操作。
利波普斯
Opus 是一种开源编解码器,用于通过 Internet 传输交互式语音和音频。 ToxCore 中的音频支持需要它。
libvpx
是开源项目 WebM 的视频编码器,它是 ToxCore 中视频支持所必需的。
毒核
Tox 软件的核心实现。
过滤音频
uTox 需要这个轻量级音频过滤库。
uTox 的安装和配置
在我们开始安装上述软件包之前,我们将安装以下在 Ubuntu 平台上编译时需要的软件包。
apt-get update && apt-get install --force-yes -y build-essential libtool autotools-dev automake checkinstall check git yasm pkg-config

对于 Fedora 环境,使用以下命令安装开发包组。
sudo yum groupinstall "Development Tools"

Fedora 平台也需要这些软件包。
sudo yum install yasm.x86_64 autoconf automake libtool

uTox 客户端的安装目录在两个发行版上都是 /usr/local/utox_install。
sudo mkdir /usr/local/utox_install
我们已经下载了 tar.gz 格式的所需包。进入包下载目录并运行以下命令。
tar -xzf libsodium-1.0.0.tar.gz
cd libsodium-1.0.0/
For Ubuntu environment:

对于 Fedora 环境:

然后在我们开始编译加密库之前运行配置脚本。
./configure --prefix=/usr/local/utox_install/
For Ubuntu environment:

对于 Fedora 环境:

运行 make 命令编译代码。
make
对于 Ubuntu 环境:

对于 Fedora 环境:

现在运行“make install”命令来安装 libsodium 包。
sudo make install
对于 Ubuntu 环境:

对于 Fedora 环境:

现在,将使用相同的命令编译视频包。
tar -xzf libvpx.tar.gz
cd libvpx
对于 Ubuntu 环境:

对于 Fedora 环境:

使用前缀路径运行配置脚本,如下所示。
./configure --prefix=/usr/local/utox_install/
对于 Ubuntu 环境:

对于 Fedora 环境:

make
对于 Ubuntu 环境:

对于 Fedora 环境:

sudo make install
对于 Ubuntu 环境:

对于 Fedora 环境:

同样,音频包将使用 configure、make 和 make install 命令编译。
tar -xzf opus-1.0.3.tar.gz
cd opus-1.0.3/
对于 Ubuntu 环境:

对于 Fedora 环境:

在 opus 源代码中运行配置脚本。
./configure --prefix=/usr/local/utox_install/
对于 Ubuntu 环境:

对于 Fedora 环境:

make
对于 Ubuntu 环境:

对于 Fedora 环境:

sudo make install
对于 Ubuntu 环境:

对于 Fedora 环境:
uTox 客户端的过滤器音频库提取和编译如下图所示。
tar -xzf filter_audio-master.tar.gz
cd filter_audio-master/
对于 Ubuntu 环境:

对于 Fedora 环境:
滤音库默认安装路径为/usr/local/。因此,我们在 Makefile 中将默认的 PREFIX 路径更改为 /usr/local/utox_install/。
cat Makefile | grep /usr/local
对于 Ubuntu 环境:

对于 Fedora 环境:

在 Makefile 中更改 PREFIX 路径 manullay 或使用 sed 实用程序,它可以使用以下命令搜索和替换 PREFIX 路径。
sed -i 's|PREFIX ?= /usr/local|PREFIX ?= /usr/local/utox_install|g' Makefile
对于 Ubuntu 环境:

对于 Fedora 环境:

现在运行 make & make install 命令来编译音频库。
make
对于 Ubuntu 环境:

对于 Fedora 环境:

sudo make install
对于 Ubuntu 环境:

对于 Fedora 环境:

Toxcore 安装需要 libvpx 和 libopus(视频/音频)编解码器,因此我们在终端中运行导出命令来设置 PKG_CONFIG_PATH 变量。
export PKG_CONFIG_PATH="/usr/local/utox_install/lib/pkgconfig"

tar -xzf toxcore.tar.gz
cd toxcore/
对于 Ubuntu 环境:

对于 Fedora 环境:

Toxcore 源代码中不存在配置脚本。因此,我们使用 autoreconf 工具生成它,如下所示。
autoreconf -i
对于 Ubuntu 环境:

对于 Fedora 环境:

Toxcore 的配置脚本中给出了安装前缀、libsodium 头文件和库路径。
./configure --prefix=/usr/local/utox_install/ --with-libsodium-headers=/usr/local/utox_install/include --with-libsodium-libs=/usr/local/utox_install/lib/
对于 Ubuntu 环境:

对于 Fedora 环境:

在 Ubuntu 平台上找到的音频/视频编解码器显示在配置脚本输出中。

配置脚本输出显示在 Fedora 平台上也可以找到 Opus 和 VPX 包。

make

如果在运行 make 命令后出现以下错误,则使用 --enable-shared 开关重新安装 libvpx 包。
对于 Ubuntu 环境:

在编译 toxcore 时,在 fedora 发行版上也出现了类似的错误,如下所示。再次使用 --enable-shared 开关安装 libvpx。
对于 Fedora 环境:

使用 --enable-shared 开关安装 libvpx 包将解决上述错误。

使用 --enable-shared 开关编译 libvpx 包将解决 fedora 平台上的错误。

在 Toxcore 源中再次运行 make 命令以编译包。之后运行 make install 命令以成功安装 Toxcore。
sudo make install
对于 Ubuntu 环境:

对于 Fedora 环境:

uTox 客户端在编译之前还需要以下依赖项。
sudo apt-get install --force-yes -y libx11-dev libv4l-dev libopenal-dev libfreetype6-dev libdbus-1-dev libxrender-dev libfontconfig1-dev libxext-dev

Fedora 发行版需要以下软件包。
sudo yum install libX11-devel libv4l-devel dbus-libs libXrandr-devel freetype-devel fontconfig-devel libXext-devel openal dbus-glib-devel

下载Fedora环境的openal-soft-devel包并安装。
wget ftp://ftp.muug.mb.ca/mirror/fedora/linux/updates/23/x86_64/o/openal-soft-devel-1.17.1-1.fc23.x86_64.rpm
rpm -ivh openal-soft-devel-1.17.1-1.fc23.x86_64.rpm

提取 uTox 包并更改默认安装路径 /usr/local/。因此,将 Makefile 中的前缀路径从 /usr/local 更改为 /usr/local/utox_install/。
tar xzf uTox.tar.gz
cd uTox/
对于 Ubuntu 环境:

对于 Fedora 环境:

Sed 是一个 linux 实用程序,它提供文件内容中的搜索和替换功能,如下所示。
sed -i 's|PREFIX ?= /usr/local|PREFIX ?= /usr/local/utox_install|g' Makefile
对于 Ubuntu 环境:
对于 Fedora 环境:

make
对于 Ubuntu 环境:

对于 Fedora 环境:

sudo make install
对于 Ubuntu 环境:

对于 Fedora 环境:

如上图所示,uTox 二进制文件位于文件夹 /usr/local/utox_install/bin 中。
对于 Ubuntu 环境:

对于 Fedora 环境:

使用 ./utox 命令运行 uTox 应用程序。如果没有在终端中导出库路径,则会出现以下错误。
对于 Ubuntu 环境:

对于 Fedora 环境:

在终端中运行以下命令并再次运行 uTox 应用程序。
export LD_LIBRARY_PATH=../lib/
对于 Ubuntu 环境:

对于 Fedora 环境:

uTox客户端安装成功如下图所示。

对于 Fedora 环境:

如上图所示,我们已经在两个发行版上成功配置了 uTox 客户端。