首页
社区
课程
招聘
[分享]编译windows下的lldb
发表于: 2017-7-25 17:27 10257

[分享]编译windows下的lldb

2017-7-25 17:27
10257

    最近因为项目需要,编译了一下windows版的lldb。记录一下编译步骤,让大家能节省一些时间。lldb编译的官网说明在这里 http://lldb.llvm.org/build.html

编译步骤:

1. 编译前需要安装的软件(我的系统是win7,2>,3>,4>需要手动添加环境变量)。

    1>pytone3.6.2    

    2>ninja-win (这个是官网推荐的编译工具,按照官网编译步骤一直不对,所以没用到,不过我安装上了)  

    3> gnuwin32 

    4> swig

    5> cmake

    6> git

    7> vs2015 (官网下的community版)

2. 下载源码

    新建一个文件夹,路径最好没有空格,有空格路径我不确定会不会有问题,或者直接找一个盘,我是在D盘,$home 代表你选好的文件夹,命令执行:

    cd $HOME

    git clone http://llvm.org/git/llvm.git

     cd $HOME/llvm/tools

     git clone http://llvm.org/git/clang.git 

     git clone http://llvm.org/git/lldb.git

3. 使用cmake生成可以用vs2015编译的工程

    1> 打开“vs2015开发人员命令行提示“,这个在安装好vs之后,开始菜单里面会有。

    2> 在命令行执行一下 "c:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\vcvarsall.bat",这个路径是我安装的vs的路径,自己对应自己的

    3> cd $HOME/llvm

    4> mkdir build

    5> cd build

    6> cmake -G  "Visual Studio 14 2015" ..

以上执行完在build目录下就会有llvm.sln,用vs2015打开,选择lldb executables里的lld,设置为为启动项。编译就行了,大概50分钟,具体时间看各位机器配置。

我又测试了一下帖子做一下修改:

    将手机用usb连上电脑,可以通过usb实现端口数据转发,将windows的端口数据转发到手机上,我测试成功了有两个工具:

     1> usbmuxd-1.0.8 ,这个工具windowns,mac通用,但是依赖pythone2版本,3版本有问题。使用方法:cd usbmuxd-1.0.8/python-client/;python tcprelay.py -t 1234:1234

     2> iFunBox  , 选择 快捷工具箱->usb隧道 自己配置端口就可以转发了,ifunbox会检测手机是否监听了要转发的端口,只有监听的才能创建转发隧道。


[培训]内核驱动高级班,冲击BAT一流互联网大厂工作,每周日13:00-18:00直播授课

收藏
免费 0
支持
分享
最新回复 (5)
雪    币: 44
活跃值: (26)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
2
这个版本编译出来,不能进行远程调试,没找到相关说明资料。有谁知道我编译哪里设置的不对,麻烦告知一下。
2017-7-27 11:13
0
雪    币: 44
活跃值: (26)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
3
看了@GeekNeo  http://bbs.pediy.com/thread-187657.htm  的调试器的帖子,在回复里看到说当时是不支持windows的,gikdbg是从mac版移植到windows的,看来windows  lldb还得下功夫才行。我先绕道,等我有能力移植这个再说了。
另外说一下  https://iosgods.com/topic/5380-working-on-ios-9-how-to-get-lldb-working-on-windows/  这个帖子里面有windows版lldb,可以下载,是gikdb里面编译好的。
2017-7-31 11:45
0
雪    币: 5855
活跃值: (438)
能力值: ( LV4,RANK:45 )
在线值:
发帖
回帖
粉丝
4
楼主后来解决windows下不能调试问题没?
正打算编译个windows版本的,既然不能远程调试,那就没用了
2017-9-12 12:40
0
雪    币: 44
活跃值: (26)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
5
NightGuard 楼主后来解决windows下不能调试问题没? 正打算编译个windows版本的,既然不能远程调试,那就没用了
没有,用的mac的
2017-9-12 13:10
0
雪    币: 5855
活跃值: (438)
能力值: ( LV4,RANK:45 )
在线值:
发帖
回帖
粉丝
6
shuicg 没有,用的mac的
谢谢。发现Linux下的  lldb  ,能下断点和内存,但是看不了模块。。
2017-9-25 15:05
0
游客
登录 | 注册 方可回帖
返回
//