跟着仙凡兄学习编译Telegram vs2022 2024.1.11编译成功

2024-01-12 04:44

本文主要是介绍跟着仙凡兄学习编译Telegram vs2022 2024.1.11编译成功,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

编译Telegram
本人花了两天,问官方作者终于编译成功Telegram
运行环境:win11
vs2022
参见学习视频:【telegram编译成功,编译遇到的各种问题】https://www.bilibili.com/video/BV11c411x7jm?vd_source=df2e51268cc7412cc3937cf3df2b4bfe
在这里插入图片描述
在这里插入图片描述

最终配出来的环境:

第一张图
在这里插入图片描述

第二张图
在这里插入图片描述

第三张图
在这里插入图片描述

第四张图
在这里插入图片描述

步骤 :
1 去官网:
https://github.com/telegramdesktop/tdesktop/blob/dev/docs/building-win-x64.md#obtain-your-api-credentials
在这里插入图片描述

2 下载tdesktop源码
git clone --recursive https://github.com/telegramdesktop/tdesktop.git
3 打开vs2022编译
3.1打开vs2022 x64 Native
在这里插入图片描述
在这里插入图片描述

3.2 运行命令:cd tdesktop\Telegram\build\prepare
3.3 运行命令:win.bat
在这里插入图片描述

4 生成Telegram工程
如下:API_ID和API_HASH注册地址
https://github.com/telegramdesktop/tdesktop/blob/dev/docs/api_credentials.md
api_id: 17349 api_hash: 344583e45741c457fe1862106095a5eb 可以用来测试
Go to BuildPath\tdesktop\Telegram and run (using your api_id and api_hash)
运行如下命令:
configure.bat x64 -D TDESKTOP_API_ID=YOUR_API_ID -D TDESKTOP_API_HASH=YOUR_API_HASH
configure.bat x64 -D TDESKTOP_API_ID=17349 -D TDESKTOP_API_HASH=344583e45741c457fe1862106095a5eb
5 运行Telegram.sln
Open BuildPath\tdesktop\out\Telegram.sln in Visual Studio 2022

6 生成exe
直接build
在这里插入图片描述

7运行exe
在这里插入图片描述
在这里插入图片描述

1 遇到的问题
libvpx 无法编译成功
策略:可以生成libvpx.sln
在这里插入图片描述

打开vpx.sln,修改如下,就可以编译了,分别编译debug和release
在这里插入图片描述

问题2 :
vpx/vp8cx.h’: No such file or directory
在这里插入图片描述

原因是:第一个问题造成的
方法:需要将libvpx拷倒tg_owt文件夹,如果有问题,可以咨询。
本人github上的提问:
https://github.com/telegramdesktop/tdesktop/issues/27163
问题三:
也是由于第一个问题造成的,编译缺少libvpx静态库
在这里插入图片描述

策略:将libvpx生成的release版本库vpxmt.lib拷贝到如下路径:

最后:大功告成

这篇关于跟着仙凡兄学习编译Telegram vs2022 2024.1.11编译成功的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



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

相关文章

重新对Java的类加载器的学习方式

《重新对Java的类加载器的学习方式》:本文主要介绍重新对Java的类加载器的学习方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录1、介绍1.1、简介1.2、符号引用和直接引用1、符号引用2、直接引用3、符号转直接的过程2、加载流程3、类加载的分类3.1、显示

Android NDK版本迭代与FFmpeg交叉编译完全指南

《AndroidNDK版本迭代与FFmpeg交叉编译完全指南》在Android开发中,使用NDK进行原生代码开发是一项常见需求,特别是当我们需要集成FFmpeg这样的多媒体处理库时,本文将深入分析A... 目录一、android NDK版本迭代分界线二、FFmpeg交叉编译关键注意事项三、完整编译脚本示例四

Java学习手册之Filter和Listener使用方法

《Java学习手册之Filter和Listener使用方法》:本文主要介绍Java学习手册之Filter和Listener使用方法的相关资料,Filter是一种拦截器,可以在请求到达Servl... 目录一、Filter(过滤器)1. Filter 的工作原理2. Filter 的配置与使用二、Listen

idea maven编译报错Java heap space的解决方法

《ideamaven编译报错Javaheapspace的解决方法》这篇文章主要为大家详细介绍了ideamaven编译报错Javaheapspace的相关解决方法,文中的示例代码讲解详细,感兴趣的... 目录1.增加 Maven 编译的堆内存2. 增加 IntelliJ IDEA 的堆内存3. 优化 Mave

Java编译生成多个.class文件的原理和作用

《Java编译生成多个.class文件的原理和作用》作为一名经验丰富的开发者,在Java项目中执行编译后,可能会发现一个.java源文件有时会产生多个.class文件,从技术实现层面详细剖析这一现象... 目录一、内部类机制与.class文件生成成员内部类(常规内部类)局部内部类(方法内部类)匿名内部类二、

Java进阶学习之如何开启远程调式

《Java进阶学习之如何开启远程调式》Java开发中的远程调试是一项至关重要的技能,特别是在处理生产环境的问题或者协作开发时,:本文主要介绍Java进阶学习之如何开启远程调式的相关资料,需要的朋友... 目录概述Java远程调试的开启与底层原理开启Java远程调试底层原理JVM参数总结&nbsMbKKXJx

IDEA编译报错“java: 常量字符串过长”的原因及解决方法

《IDEA编译报错“java:常量字符串过长”的原因及解决方法》今天在开发过程中,由于尝试将一个文件的Base64字符串设置为常量,结果导致IDEA编译的时候出现了如下报错java:常量字符串过长,... 目录一、问题描述二、问题原因2.1 理论角度2.2 源码角度三、解决方案解决方案①:StringBui

Java深度学习库DJL实现Python的NumPy方式

《Java深度学习库DJL实现Python的NumPy方式》本文介绍了DJL库的背景和基本功能,包括NDArray的创建、数学运算、数据获取和设置等,同时,还展示了如何使用NDArray进行数据预处理... 目录1 NDArray 的背景介绍1.1 架构2 JavaDJL使用2.1 安装DJL2.2 基本操

解决IDEA使用springBoot创建项目,lombok标注实体类后编译无报错,但是运行时报错问题

《解决IDEA使用springBoot创建项目,lombok标注实体类后编译无报错,但是运行时报错问题》文章详细描述了在使用lombok的@Data注解标注实体类时遇到编译无误但运行时报错的问题,分析... 目录问题分析问题解决方案步骤一步骤二步骤三总结问题使用lombok注解@Data标注实体类,编译时

mysql外键创建不成功/失效如何处理

《mysql外键创建不成功/失效如何处理》文章介绍了在MySQL5.5.40版本中,创建带有外键约束的`stu`和`grade`表时遇到的问题,发现`grade`表的`id`字段没有随着`studen... 当前mysql版本:SELECT VERSION();结果为:5.5.40。在复习mysql外键约