ImHex爆火有一阵子了,像那样
机器之心:狂揽2500星,开源十六进制编辑器登上GitHub热搜榜365 赞成 · 36 评论性文章
ImHex是什么?
那麼那么火他到底是个什么?
ImHex是一款功能齐全的十六进制编辑器,该工具专为反向工程投资分析师、程序编写开发者及其这些想好好地保护自己双眼的安全防护工作人员所设计方案。就算你每日工作到凌晨三点(尽管不建议),也不会伤害你的双眼!
为什么那么火呢?
最先一定是长相
上截屏
次之,一定是开源特性
ImHex是一款开源的十六进制编辑器。开源详细地址为
应用C 20撰写,内部结构应用软件式管理方案载入文本框,其扩展性十分的强,开发设计入门也迅速。
比较之下,一些编辑器如010Edit,做为闭源商品收费标准较贵,显而易见ImHex让开源小区眼前一亮,都是有一种“我就能开发设计编辑器的觉得”,并且实际上也的确是那样
下边让大家来试一试这款 raising star
编译ImHex
最先系统软件挑选Ubuntu20.04
不必问一问为什么并不是ubuntu18,16,问了便是不符编译规定,要不是这种系统软件上编译工具版本号低,缺乏一些新的特性,要不便是依靠安裝不了
安裝依靠
apt install -y
build-essential
gcc-10
g -10
lld
${PKGCONF:-}
cmake
make
ccache
libglfw3-dev
libglm-dev
libmagic-dev
libmbedtls-dev
python3-dev
libfreetype-dev
libgtk-3-dev
echo \"Please consider this before running cmake (useful on e.g. Ubuntu 20.04):\"
echo \"export CXX=g -10\"
留意:
在cmake运作前应,export CXX=g -10,不然报告有一些库函数找不着的不正确,例如span库函数
获取库房
git clone --recurse-submodules https://github.com/WerWolv/ImHex.git
上边这一主要参数–recurse-submodules一定要加,由于该库房还引入了一些别的仓储的编码,必须与此同时获取。
编译
库房获取结束以后,便是编译了,返回新项目网站根目录
mkdir build
cd build
cmake -DCMAKE_BUILD_TYPE=Release ..
make -j
这一段编译得有一段时间,稍等一会。
在年久的设备上还记得限定一下make的job的总数,例如`make -j4`,总之我年迈的mac虚拟机去世了很多次
-j [jobs], --jobs[=jobs]
Specifies the number of jobs (commands) to run simultaneously.
If there is more than one -j option, the last one is effective. If
the -j option is given without an argument, make will not
limit the number of jobs that can run simultaneously.
这CPU占用量,可伶了我的老mac
这CPU占用量,可伶了我的老mac
截屏
可伶我的老mac,最后還是提起了强烈抗议。
最后,只有在mac下编译,取得成功!
编译汇总
关键运行在解决依靠和获取子控制模块上,必须留意一些关键点。
打过下班!
不成功试着
应用镜像站的坑
主题曲 都了解github在墙的效果下,出现异常的慢。小亮在获取库房的历程中,自始至终不可以取得成功 做为守法公民的小亮怎能爬楼梯呢? 因此应用了镜像源,https://github.com/ –>
https://github.com.cnpmjs.org/ 把任何的以上字符串数组开展更换就可以了,例如人们的获取指令 git clone –recurse-submodules https://github.com.cnpmjs.org/WerWolv/ImHex.git 可是那么问题来了,submodules怎么办呢? 别着急,先拉去ImHex的原先,随后大家寻找新项目下有一个.gitmodules的文档(隐藏文件,立即vim就可以),像那样进行更换。 vim替换指令拿走不谢
%s/github.com/github.com.cnpmjs.org/g
随后在新项目途径./lib/external/下各自获取以上源,笨办法 这儿必须问小伙伴们的问题是,我这里更换了里边的字符串数组,为啥git submodules update,无论用呢?? 有清楚的小伙伴们望告之一下,万分感激!!!
该计划方案也出现一个问题便是:镜像站的镜像文件很有可能并不是全新的,例如在编译本工程项目的历程中view_disassembler.cpp:305:109: error: use of undeclared identifier ‘CS_MODE_BPF_CLASSIC,在旧的镜像站中是没的,在http://github.com中免费下载的才有,坑啊!!!
唉没有办法!
下载,缓解压力,再次编译
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。