x64dbg 调试器的源码编译很麻烦,网络上的编译方法均为老版本,对于新版本来说编译过程中会出现各种错误,编译的坑可以说是一个接着一个,本人通过研究总结出了一套编译拳法可以完美编译输出,不过话说回来x64dbg这种使用两个编译器开发的方式以及调用太多的第三方项目想要完全编译其实也是非常困难的,如下笔记只提供编译x64dbg本体,并确保其能够正常运行。

首先你需要安装 visual_studio_2013_update_5 这个版本全功能勾选,并且要安装微软提供的SDK。

其次是下载Qt编译器,此处分别是32位与64位版本,以及Qt的开发界面。

接着就是下载x64dbg源代码以及他所需要用到的三个库源码。

下载并安装好这些前期准备工作就算完事了,接着就是安装。

分别将如下几个项目拷贝到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 最新版编译方法的更多相关文章

  1. Java 基础常见知识点&面试题总结(中),2022 最新版!| JavaGuide

    你好,我是 Guide.秋招即将到来,我对 JavaGuide 的内容进行了重构完善,公众号同步一下最新更新,希望能够帮助你. 上篇:Java 基础常见知识点&面试题总结(上),2022 最新 ...

  2. Java 基础常见知识点&面试题总结(下),2022 最新版!

    你好,我是 Guide.秋招即将到来,我对 JavaGuide 的内容进行了重构完善,同步一下最新更新,希望能够帮助你. 前两篇: Java 基础常见知识点&面试题总结(上),2022 最新版 ...

  3. Hadoop编译方法

    伪分布式: hadoop-env.sh core-site.xml hdfs-site.xml mapred-site.xml 1.在hadoop官网下载hadoop的源码(同步跟踪最新源代码) mv ...

  4. Java 集合常见知识点&面试题总结(上),2022 最新版!

    你好,我是 Guide.秋招即将到来(提前批已经开始),我对 JavaGuide 的内容进行了重构完善,公众号同步一下最新更新,希望能够帮助你. 你也可以在网站(javaguide.cn)上在线阅读, ...

  5. Genome2D编译方法

    Genome2D是一个高效的2D引擎,现在支持Flash(stage3d)和HTML5,因为只有作者一个人在维护,就没开源代码. 最近和作者沟通了下,已经开源啦. 作者划分了几个模块,编译起来不是特别 ...

  6. Spark-1.0.1 的make-distribution.sh编译、SBT编译、Maven编译 三种编译方法

    fesh个人实践,欢迎经验交流!本文Blog地址:http://www.cnblogs.com/fesh/p/3775343.html 本文编译方法所支持的hadoop环境是Hadoop-2.2.0, ...

  7. IntelliJ IDEA 2016.2.4 最新版激活方法

    新版激活方法: 1.在线激活 2016年7月14日 更新: 该域名已无法激活,参见2016.2 的搭建授权服务器激活, 菜单help >>>> Register 选择Licen ...

  8. 详细地jsoncpp编译方法 和 vs2010中导入第三方库的方法

    详细地jsoncpp编译方法 和 vs2010中导入第三方库的方法 一 编译链接 1 在相应官网下载jsoncpp 2 解压得到jsoncpp-src-0.5.0文件 3 打开jsoncpp-src- ...

  9. (DT系列一)DTS结构及其编译方法

    DTS结构及其编译方法 一:主要问题 1,需要了解dtsi与dts的关系 2,dts的结构模型 3,dts是如何被编译的,以及编译后会生成一个什么文件. 二:参考文字 1,DTS(device tre ...

  10. 【转】(DT系列一)DTS结构及其编译方法----不错

    原文网址:http://www.cnblogs.com/biglucky/p/4057476.html DTS结构及其编译方法 一:主要问题 1,需要了解dtsi与dts的关系 2,dts的结构模型 ...

随机推荐

  1. #3038:How Many Answers Are Wrong (带权并查集)

    HDU 3038 第一次接触带权并查集 //带权并查集 更新父节点的同时更新权值 #include<bits/stdc++.h> using namespace std; const in ...

  2. 前端科普系列(5):ESLint - 守住优雅的护城河

    作者:Morrain [前端科普系列]帮助阅读者了解web前端,主要覆盖web前端的基础知识,但不深入讲解,定位为大而全并非细而精,适合非前端开发的同学对前端有一个系统的认识,能更好的与前端开发协作. ...

  3. 看这个视频,4万人学会云上部署 Stable Diffusion

    目前大火的 AIGC 领域中, 除了 ChatGPT,Stable Diffusion 在文生图领域大放异彩,深刻影响着绘画.视频制作等相关领域.<动手吧,开发者>本期活动邀请 B 站知识 ...

  4. 《深入理解计算机系统》(CSAPP)实验四 —— Attack Lab

    这是CSAPP的第四个实验,这个实验比较有意思,也比较难.通过这个实验我们可以更加熟悉GDB的使用和机器代码的栈和参数传递机制. @ 目录 实验目的 准备工作 内容简介 代码注入攻击 Level 1 ...

  5. GoLang 高性能编程之字符串拼接

    看代码突然想到一个问题:字符串在内存中是怎么表示的?花了大半天才理清,这里记录梳理下. 1. 字符 提到字符串需要先了解字符,没有字符哪能串起来呢.不像 int,float 这种直接在内存中以位数表示 ...

  6. 每天学五分钟 Liunx 000 | 计算机与 Liunx

      计算机 计算机是具有数据处理与逻辑运算的机器. 它有输入单元,输出单元,CPU 内部的控制单元,逻辑处理单元以及内存组成.   输入单元如鼠标键盘等输入设备:   输出单元如打印机,显示屏,等输出 ...

  7. 使用 Woodpecker 与 Gitea 搭建纯开源的 CI 流程|极限降本

    最近开源了一个挂机冒险游戏<模拟龙生>,有热心同学不仅帮忙做优化,还连夜在给游戏加页面,泪目.详见文末小结部分. 一.前言 大家好,这里是白泽.这篇文章是<Woodpecker CI ...

  8. CentOS下PHP7安装mysqlnd模块

    单独安装mysqlnd驱动 如果是centos下的yum安装方式,那么可以参考后续操作. 因为mysqlnd是mysql原生的驱动,如果已经安装了php-mysql,则需要先卸载,否则会遇到冲突. 先 ...

  9. js - 元素 scrollTop 设置无效的原因 及 解决办法

    原因 :  元素 display : flex ; 解决方法 : display : block;

  10. [转帖]Oracle Exadata X10M 数据库一体机发布,树立 OLTP 数据库性能新标杆

    https://www.modb.pro/db/653936 2023年6月25日消息,Oracle 公司继续以其专用的 Exadata 平台重新定义 OLTP 数据库性能.上周,该公司延续了这一传统 ...