Telegram 桌面端 Visual Studio 2019 编译 tdesktop 指南

2024-06-23 09:32

本文主要是介绍Telegram 桌面端 Visual Studio 2019 编译 tdesktop 指南,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

编译该项目起初耗时 1 天半(1 个通宵 + 2 个白天),结果还失败了。

然后时隔 3 个月,又尝试重新编译,耗时 1 个白天,编译成功。

坑还是有(fei)点(chang)多的。

不多说了,进入正题。

 

1、准备环境

由于此开源项目较大,编译容易出错,一些第三方软件可能与您已安装的版本相冲突。

所以强烈建议在虚拟机中编译该项目,并保存多个时间点快照。

环境要求:16G 或以上的内存 + VMware + Windows 10 x64 + 网络代理

 

16G 以下的,就不建议在本机编译了,建议找个在线编译平台操作。

我虚拟机拉到 8G 都还是会编译失败,最后是拉到 12G 才勉强编译成功的。

 

先安装好虚拟机,在虚拟机内下载安装 VS 2019 和 Git bash。

 

2、准备编译

前往 tdesktop 的 GitHub 仓库页面。

在 README 中找到 Visual Studio 2019 的编译说明。

本指南按照 May 12, 2020 提交的 building-msvc.md 作为讲述。

实际操作请按照最新提交的 building-msvc.md 执行。

 

Prepare folder

Choose an empty folder for the future build, for example D:\TBuild. It will be named BuildPath in the rest of this document. Create two folders there, BuildPath\ThirdParty and BuildPath\Libraries.

All commands (if not stated otherwise) will be launched from x86 Native Tools Command Prompt for VS 2019.bat (should be in Start Menu > Visual Studio 2019 menu folder). Pay attention not to use any other Command Prompt.

首先按照教程开头说明,准备一个编译文件夹,这里就用文中默认的路径 D:\TBuild,后续称之为 BuildPath。

之后的所有命令(除非另有说明)都将在 x86 Native Tools Command Prompt for VS 2019(x86 本机工具命令提示符) 中执行(位于 开始菜单 -> Visual Studio 2019 文件夹中)。

 

Obtain your API credentials

You will require api_id and api_hash to access the Telegram API servers. To learn how to obtain them click here.

api_id: 17349 api_hash: 344583e45741c457fe1862106095a5eb

用于测试的 API 授权信息,非官方编译的第三方 Telegram 版本都需要 API_ID 和 API_HASH 来与 Telegram 官方服务器进行交互。API 可以向 Telegram 官方申请,二次开发的 Telegram 客户端需要遵守 Telegram 的相关规定,否则 API 可能会被封禁。

 

Install third party software

  • Download Strawberry Perl installer from http://strawberryperl.com/ and install to BuildPath\ThirdParty\S

这篇关于Telegram 桌面端 Visual Studio 2019 编译 tdesktop 指南的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1086779

相关文章

从基础到进阶详解Pandas时间数据处理指南

《从基础到进阶详解Pandas时间数据处理指南》Pandas构建了完整的时间数据处理生态,核心由四个基础类构成,Timestamp,DatetimeIndex,Period和Timedelta,下面我... 目录1. 时间数据类型与基础操作1.1 核心时间对象体系1.2 时间数据生成技巧2. 时间索引与数据

Java SWT库详解与安装指南(最新推荐)

《JavaSWT库详解与安装指南(最新推荐)》:本文主要介绍JavaSWT库详解与安装指南,在本章中,我们介绍了如何下载、安装SWTJAR包,并详述了在Eclipse以及命令行环境中配置Java... 目录1. Java SWT类库概述2. SWT与AWT和Swing的区别2.1 历史背景与设计理念2.1.

Redis过期删除机制与内存淘汰策略的解析指南

《Redis过期删除机制与内存淘汰策略的解析指南》在使用Redis构建缓存系统时,很多开发者只设置了EXPIRE但却忽略了背后Redis的过期删除机制与内存淘汰策略,下面小编就来和大家详细介绍一下... 目录1、简述2、Redis http://www.chinasem.cn的过期删除策略(Key Expir

SpringBoot整合Apache Flink的详细指南

《SpringBoot整合ApacheFlink的详细指南》这篇文章主要为大家详细介绍了SpringBoot整合ApacheFlink的详细过程,涵盖环境准备,依赖配置,代码实现及运行步骤,感兴趣的... 目录1. 背景与目标2. 环境准备2.1 开发工具2.2 技术版本3. 创建 Spring Boot

Python远程控制MySQL的完整指南

《Python远程控制MySQL的完整指南》MySQL是最流行的关系型数据库之一,Python通过多种方式可以与MySQL进行交互,下面小编就为大家详细介绍一下Python操作MySQL的常用方法和最... 目录1. 准备工作2. 连接mysql数据库使用mysql-connector使用PyMySQL3.

Linux中修改Apache HTTP Server(httpd)默认端口的完整指南

《Linux中修改ApacheHTTPServer(httpd)默认端口的完整指南》ApacheHTTPServer(简称httpd)是Linux系统中最常用的Web服务器之一,本文将详细介绍如何... 目录一、修改 httpd 默认端口的步骤1. 查找 httpd 配置文件路径2. 编辑配置文件3. 保存

Python中文件读取操作漏洞深度解析与防护指南

《Python中文件读取操作漏洞深度解析与防护指南》在Web应用开发中,文件操作是最基础也最危险的功能之一,这篇文章将全面剖析Python环境中常见的文件读取漏洞类型,成因及防护方案,感兴趣的小伙伴可... 目录引言一、静态资源处理中的路径穿越漏洞1.1 典型漏洞场景1.2 os.path.join()的陷

Python数据分析与可视化的全面指南(从数据清洗到图表呈现)

《Python数据分析与可视化的全面指南(从数据清洗到图表呈现)》Python是数据分析与可视化领域中最受欢迎的编程语言之一,凭借其丰富的库和工具,Python能够帮助我们快速处理、分析数据并生成高质... 目录一、数据采集与初步探索二、数据清洗的七种武器1. 缺失值处理策略2. 异常值检测与修正3. 数据

Python使用Tkinter打造一个完整的桌面应用

《Python使用Tkinter打造一个完整的桌面应用》在Python生态中,Tkinter就像一把瑞士军刀,它没有花哨的特效,却能快速搭建出实用的图形界面,作为Python自带的标准库,无需安装即可... 目录一、界面搭建:像搭积木一样组合控件二、菜单系统:给应用装上“控制中枢”三、事件驱动:让界面“活”

Python中OpenCV与Matplotlib的图像操作入门指南

《Python中OpenCV与Matplotlib的图像操作入门指南》:本文主要介绍Python中OpenCV与Matplotlib的图像操作指南,本文通过实例代码给大家介绍的非常详细,对大家的学... 目录一、环境准备二、图像的基本操作1. 图像读取、显示与保存 使用OpenCV操作2. 像素级操作3.