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

news2024/11/20 22:41:43

编译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拷贝到如下路径:

最后:大功告成

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1375136.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

代码随想录第五十五天——判断子序列,不同的子序列

leetcode 392. 判断子序列 题目链接:判断子序列 确定dp数组及下标的含义 dp[i][j]:以下标i-1为结尾的字符串s,和以下标j-1为结尾的字符串t,相同子序列长度为dp[i][j]确定递推公式 分为两种情况:s[i - 1] 与t[j - 1]相…

CMake入门教程【高级篇】qmake转cmake

😈「CSDN主页」:传送门 😈「Bilibil首页」:传送门 😈「动动你的小手」:点赞👍收藏⭐️评论📝 文章目录 1. 概述2.qmake与cmake的差异3. qmake示例4.qmake转cmake示例5.MOC、UIC和RCC…

k8s的存储卷之静态

存储卷----数据卷 容器内的目录和宿主机的目录进行挂载 容器在系统上的生命周期是短暂的,delete,k8s用控制创建的pod,delete相当于重启,容器的状态也会回复到初始状态 一旦回到初始状态,所有的后天编辑的文件都会消…

【Linux】Linux 系统编程——tree 命令

文章目录 1. 命令概述2. 命令格式3. 常用选项4. 相关描述4.1 tree 命令安装 5. 参考示例5.1 创建树形目录5.2 使用 tree 命令查看树形目录 1. 命令概述 tree 命令用于在命令行界面以树状图形式显示目录及其子目录的内容。这个命令递归地列出所有子目录,并可选择显示…

平时执行很快的SQL语句,为什么会突然卡一下?

InnoDB在处理更新语句的时候,只做了写日志这一个磁盘操作,这个日志叫作redo log(重做日志),在更新内存写完redo log后,就返回给客户端,本次更新成功。 把内存里的数据写入磁盘的过程&#xff0…

SpringBoot中使用SpringEvent业务解耦神器实现监听发布事件同步异步执行任务

场景 SpringBoot中使用单例模式ScheduledExecutorService实现异步多线程任务(若依源码学习): SpringBoot中使用单例模式ScheduledExecutorService实现异步多线程任务(若依源码学习)-CSDN博客 设计模式-观察者模式在Java中的使用示例-环境监测系统: 设…

基于多反应堆的高并发服务器【C/C++/Reactor】(中)HttpResponse的定义和初始化 以及组织 HttpResponse 响应消息

一、HttpResponse的定义 1.定义状态码枚举 // 定义状态码枚举 enum HttpStatusCode {Unknown 0,OK 200,MovedPermanently 301,MovedTemporarily 302,BadRequest 400,NotFound 404 }; 2.HTTP 响应报文格式 这个数据块主要是分为四部分 第一部分是状态行第二部分是响应…

Godot之StringName解析

类描述 在Godot中,StringName是唯一字符串的内置类型。 StringName 是不可变的字符串,用于唯一名称的通用表示(也叫“字符串内嵌”)。值相同的两个 StringName 是同一个对象。进行比较时比普通 String 要快很多。 对于需要 Str…

时光总是催人老 time

文章目录 时光总是催人老 time语法示例更多信息 时光总是催人老 time … note:: 林花谢了春红,太匆匆。无奈朝来寒雨晚来风。 李煜《相见欢林花谢了春红》 Linux time命令的用途,在于测量指定命令消耗的时间。 最常用的在于大概评估一个程序的运行时…

APP流量变现——4项关键指标决定了APP混合变现的收入

APP流量变现的方式有很多种,主要的可以分为IAA(广告)收入、IAP(用户应用内付费)收入、订阅收入、单次买断收入。这里主要围绕当前流行的混合变现模式,即广告收入(IAA)应用内付费&…

vue3+vite开发生产环境区分

.env.development VITE_APP_TITLE本地.env.production VITE_APP_TITLE生产-ts文件中应用 console.log(import.meta.env.VITE_APP_TITLE)在html中应用,需要安装 html 模板插件 pnpm add vite-plugin-html -Dvite.config.ts中 import { createHtmlPlugin } from v…

鸿蒙原生应用再添新丁!万达 入局鸿蒙

鸿蒙原生应用再添新丁!万达 入局鸿蒙 来自 HarmonyOS 微博1月11日消息,#万达酒店及度假村启动鸿蒙原生应用及元服务开发# 作为具有中国特色的国牌服务酒店标杆之一,万达酒店及度假村Wanda 将带来全新的服务和交互方式,一步获取“…

【AI视野·今日Robot 机器人论文速览 第七十三期】Tue, 9 Jan 2024

AI视野今日CS.Robotics 机器人学论文速览 Tue, 9 Jan 2024 Totally 40 papers 👉上期速览✈更多精彩请移步主页 Daily Robotics Papers Digital Twin for Autonomous Surface Vessels for Safe Maritime Navigation Authors Daniel Menges, Andreas Von Brandis, A…

基于ssm运动会管理系统的设计与实现 【附源码】

基于ssm运动会管理系统的设计与实现 【附源码】 🍅 作者主页 央顺技术团队 🍅 欢迎点赞 👍 收藏 ⭐留言 📝 🍅 文末获取源码联系方式 📝 项目运行 环境配置: Jdk1.8 Tomcat7.0 Mysql HBuil…

Flashduty 案例分享 - 途游游戏

Flashduty 作为功能完备的事件OnCall中心,可以接入云上、云下不同监控系统,统一做告警降噪分派、认领升级、排班协同,已经得到众多先进企业的认可。我们采访了一些典型客户代表,了解他们的痛点、选型考虑和未来展望,集…

【排序算法】四、堆排序(C/C++)

「前言」文章内容是排序算法之堆排序的讲解。(所有文章已经分类好,放心食用) 「归属专栏」排序算法 「主页链接」个人主页 「笔者」枫叶先生(fy) 目录 堆排序1.1 原理1.2 堆的向下调整1.3 堆排序代码实现1.3 性质总结 堆排序 1.1 原理 概念介…

爬取去哪网旅游攻略信息

代码展现: import requests import parsel import csv import time f open(旅游去哪攻略.csv,modea,encodingutf-8,newline) csv_writer csv.writer(f) csv_writer.writerow([标题,浏览量,日期,天数,人物,人均价格,玩法]) for page in range(1,5):url fhttps://…

JS 函数

函数就是封装了一段可以被重复执行调用的代码块。目的:让大量代码重复利用 1、声明函数 方式一:利用函数关键字自定义函数(命名函数) function 函数名(){//函数体代码} function是声明函数的关键字&#…

气膜建筑的消防安全问题如何保障?

气膜建筑作为一种独特的建筑形式,拥有广泛的应用领域。然而,由于其密闭性特点,人们更加关注其消防安全问题。以下是保障气膜建筑消防安全的几个关键措施: 采用难燃材料: 气膜建筑所使用的建筑膜材采用B1级难燃材料&…

Go后端开发 -- 条件、循环语句 defer语句

Go后端开发 – 条件、循环语句 && defer语句 文章目录 Go后端开发 -- 条件、循环语句 && defer语句一、条件语句1.if ... else 语句2.switch语句3.select语句 二、循环语句1.for循环 三、defer语句1.defer语句的作用2.defer和return的先后顺序3.recover错误拦截…