x64dbg 2022 最新版编译方法
x64dbg 调试器的源码编译很麻烦,网络上的编译方法均为老版本,对于新版本来说编译过程中会出现各种错误,编译的坑可以说是一个接着一个,本人通过研究总结出了一套编译拳法可以完美编译输出,不过话说回来x64dbg这种使用两个编译器开发的方式以及调用太多的第三方项目想要完全编译其实也是非常困难的,如下笔记只提供编译x64dbg本体,并确保其能够正常运行。
首先你需要安装 visual_studio_2013_update_5 这个版本全功能勾选,并且要安装微软提供的SDK。
其次是下载Qt编译器,此处分别是32位与64位版本,以及Qt的开发界面。
- https://download.qt.io/archive/qtcreator/4.3/4.3.1/qt-creator-opensource-windows-x86-4.3.1.exe
- https://osdn.net/projects/x64dbg/storage/qt/qt-opensource-windows-x86-msvc2013-5.6.3.exe
- https://osdn.net/projects/x64dbg/storage/qt/qt-opensource-windows-x86-msvc2013_64-5.6.3.exe
接着就是下载x64dbg源代码以及他所需要用到的三个库源码。
- https://codeload.github.com/x64dbg/btparser/zip/d5034cf6d647e98cb01e9e1fc4efa5086f8fc6a5
- https://codeload.github.com/x64dbg/zydis/zip/7c4e7d7daf3a6fe3ed237fa487b4da3e429eabf2
- https://codeload.github.com/x64dbg/Translations/zip/7414d65c468803dbd548e2f12998624d66a12bc0
- https://codeload.github.com/x64dbg/x64dbg/zip/refs/heads/development
下载并安装好这些前期准备工作就算完事了,接着就是安装。
分别将如下几个项目拷贝到x64dbg目录下。
- 将压缩包内Translations放入到src/gui/Translations
- 将压缩包内zydis放入到src/zydis_wrapper/zydis
- 将压缩包内btparser放入到src/dbg/btparser
并且将这三个包再次放入到x64dbg根目录下的deps目录下,如下。

运行x64dbg下面的三个bat脚本文件。
install.bat
setenv.bat
setupdeps.bat
至此我们打开x64dbg.sln这个项目,然后选择好32位模式,并启动编译,等待一会即可生成,生成后默认在bin目录下保存。

接着进入到src/gui目录下,直接使用qt 5.6打开x64dbg.pro项目。选好编译器版本。

Qt中切换到release模式。

接着点击项目,选择浏览找到bin目录并配置上。

配置好以后直接点击编译,等待10分钟左右,编译成功后生成x32gui.dll文件。

此时切换到主目录,并执行release.bat发布脚本,即可自动发布输出文件到release目录下。

此时继续切换到x32子目录下,使用qt命令行打开目录,并执行生成命令。

此时切换到x32子目录下,就可以看到我们生成的所有文件。

此时的x32dbg是无法运行的,因为缺少dll动态链接库,这些动态库每一个都需要单独编译,工程量是巨大的,此处我就直接拷贝编译好的。

直接将编译环境内的动态库拷贝到x32dbg目录下面。

最后运行x32dbg,就可以了。

总结就是,这个程序如果想要完全编译,这些第三方库都需要编译一遍,这是一件费力不讨好的事,尽量还是用现成的吧。
x64dbg 2022 最新版编译方法的更多相关文章
- Java 基础常见知识点&面试题总结(中),2022 最新版!| JavaGuide
你好,我是 Guide.秋招即将到来,我对 JavaGuide 的内容进行了重构完善,公众号同步一下最新更新,希望能够帮助你. 上篇:Java 基础常见知识点&面试题总结(上),2022 最新 ...
- Java 基础常见知识点&面试题总结(下),2022 最新版!
你好,我是 Guide.秋招即将到来,我对 JavaGuide 的内容进行了重构完善,同步一下最新更新,希望能够帮助你. 前两篇: Java 基础常见知识点&面试题总结(上),2022 最新版 ...
- Hadoop编译方法
伪分布式: hadoop-env.sh core-site.xml hdfs-site.xml mapred-site.xml 1.在hadoop官网下载hadoop的源码(同步跟踪最新源代码) mv ...
- Java 集合常见知识点&面试题总结(上),2022 最新版!
你好,我是 Guide.秋招即将到来(提前批已经开始),我对 JavaGuide 的内容进行了重构完善,公众号同步一下最新更新,希望能够帮助你. 你也可以在网站(javaguide.cn)上在线阅读, ...
- Genome2D编译方法
Genome2D是一个高效的2D引擎,现在支持Flash(stage3d)和HTML5,因为只有作者一个人在维护,就没开源代码. 最近和作者沟通了下,已经开源啦. 作者划分了几个模块,编译起来不是特别 ...
- Spark-1.0.1 的make-distribution.sh编译、SBT编译、Maven编译 三种编译方法
fesh个人实践,欢迎经验交流!本文Blog地址:http://www.cnblogs.com/fesh/p/3775343.html 本文编译方法所支持的hadoop环境是Hadoop-2.2.0, ...
- IntelliJ IDEA 2016.2.4 最新版激活方法
新版激活方法: 1.在线激活 2016年7月14日 更新: 该域名已无法激活,参见2016.2 的搭建授权服务器激活, 菜单help >>>> Register 选择Licen ...
- 详细地jsoncpp编译方法 和 vs2010中导入第三方库的方法
详细地jsoncpp编译方法 和 vs2010中导入第三方库的方法 一 编译链接 1 在相应官网下载jsoncpp 2 解压得到jsoncpp-src-0.5.0文件 3 打开jsoncpp-src- ...
- (DT系列一)DTS结构及其编译方法
DTS结构及其编译方法 一:主要问题 1,需要了解dtsi与dts的关系 2,dts的结构模型 3,dts是如何被编译的,以及编译后会生成一个什么文件. 二:参考文字 1,DTS(device tre ...
- 【转】(DT系列一)DTS结构及其编译方法----不错
原文网址:http://www.cnblogs.com/biglucky/p/4057476.html DTS结构及其编译方法 一:主要问题 1,需要了解dtsi与dts的关系 2,dts的结构模型 ...
随机推荐
- AtCoder ABC 206
比赛链接:Here AB水题,跳过 C - Swappable 在数组中找到满足条件的数对 \((i,j)\) \(1 \le i < j \le N (N\in[2,3e5])\) \(A_i ...
- 自主创新国产化科技:智能制造之 SMT 产线监控管理可视化
SMT(Surface Mounted Technology,表面贴片技术)指的是在印刷电路板 (Printed Circuit Board,PCB)基础上进行加工的系列工艺流程的简称,是电子组装行业 ...
- 【驱动】I2C驱动分析(二)-驱动框架
I2C驱动框架简介 I2C 驱动属于总线-设备-驱动模型的,与I2C总线设备驱动模型相比,大体框架是一样,系统的整体框架如下所示. 最上层是应用层,在应用层用户可以直接用open read write ...
- vue vantUI实现文件(图片、文档、视频、音频)上传(多文件)
上传文档格式 1 <template> 2 <div> 3 <div class="upload"> 4 <div> 5 <d ...
- C#将汉字转换为拼音
首先上效果图 方法调用 private void txt_Chinese_TextChanged(object sender, EventArgs e) { txt_PinYIn.Text = //调 ...
- java进阶(20)--final/fianlly/fianlize区别
1.final关键字.表示最终的.不变的 final修饰的类无法继承 final修饰的方法无法覆盖 final修饰的变量不能重新赋值 举例: final double weight; 2.finall ...
- 【日常踩坑】Debug 从入门到入土
写代码难免遇到 bug,调试解决 bug 的快慢很影响开发的效率.本文主要是梳理并记录下个人经常用的调试方法(主要以 C/C++ 的 segment fault 为例) 分类 根据调试时机与 bug ...
- IDEA:端口号被占用解决办法
idea遇到这样的问题:如下图 解决办法 步骤1:通过端口号找到pid打开dos命令行,输入netstat -ano | find "9009"得到下列内容,看到最后一行就是pid ...
- [IDEA] [SpringBoot] 项目所写的内容不能同步到编译出的文件中
错误原因: 不小心删除了 .yml 导致了,项目所写的内容不能同步到编译出的文件中,之后项目中的任何修改或添加的内容不能同步到编译出的文件中 解决方法 : 文件项目下运行mvn idea:module ...
- 让vs支持wsl调试
WSL安装 wsl --install -d Ubuntu 等一会提示输入用户名,不用管它,直接关闭,下次打开wsl,会以无密码的root用户打开 wsl卸载 wsl --unregister Ubu ...