如何在Python脚本中导入lldb

2023-11-30

根据 LLDB 主页,LLDB 可以在 python 脚本中导入,如下所示:

import lldb

从发行包安装 GDB 后(在 Ubuntu 15.04 上:sudo apt-get install lldb),出现以下错误:

Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "/usr/lib/python2.7/dist-packages/lldb/__init__.py", line 52, in <module>
_lldb = swig_import_helper()
File "/usr/lib/python2.7/dist-packages/lldb/__init__.py", line 44, in swig_import_helper
ImportError: No module named _lldb

这是预料之中的! LLDB 页面显示:

LLDB 具有 Python 脚本功能并提供自己的 Python 名为 lldb 的模块。如果脚本在命令行 lldb 内运行 应用程序中,Python 模块会自动可用。 但是,如果脚本要由外部的 Python 解释器运行 命令行应用程序,PYTHONPATH环境变量可以是 用于让Python解释器找到lldb模块。

可以通过调用命令行lldb获取正确的路径 带有 -P 标志的工具:

> export PYTHONPATH=`$llvm/build/Debug+Asserts/bin/lldb -P`

如果您使用了不同的构建目录或进行了发布构建,则 可能需要调整以上内容以满足您的需求。

因此,那些有足够信心自己构建 LLDB 的人会得到明确的指示,而那些只想使用已发布的软件包的新手则只能得到模糊的解释......

对于从发行包中安装所有内容的最基本情况,是否有人知道“调整上述内容以满足您的需求”到底意味着什么? lldb -P 报告的路径并不能解决问题:

user@user-VirtualBox:~$ lldb -P
/usr/lib/x86_64-linux-gnu/python2.7/site-packages
user@user-VirtualBox:~$ ls /usr/lib/x86_64-linux-gnu/python2.7/site-packages
ls: cannot access /usr/lib/x86_64-linux-gnu/python2.7/site-packages: No such file or directory

看起来 lldb python 包安装的符号链接被破坏了。如果你看进去/usr/lib/llvm-3.6/lib/python2.7/site-packages/lldb你会看到三个损坏的模拟链接引用了不存在的内容x86_64-linux-gnu目录。这为我解决了这个问题(在 Ubuntu 14.04 上测试,而不是 Lubuntu,但我假设问题是相同的):

cd /usr/lib/llvm-3.6/lib/python2.7/site-packages/lldb
sudo ln -sf ../../../liblldb.so.1 _lldb.so
sudo ln -sf ../../../libLLVM-3.6.0.so.1 libLLVM-3.6.0.so.1
sudo ln -sf ../../../libLLVM-3.6.0.so.1 libLLVM-3.6.so.1
export PYTHONPATH='/usr/lib/llvm-3.6/lib/python2.7/site-packages'
vagrant@Ubuntu:~$ python
Python 2.7.6 (default, Mar 22 2014, 22:59:56) 
[GCC 4.8.2] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import lldb
>>> 
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何在Python脚本中导入lldb 的相关文章

  • DreamPie 不适用于 Python 3.2

    我最喜欢的 Python shell 是DreamPie http dreampie sourceforge net 我想将它与 Python 3 2 一起使用 我使用了 添加解释器 DreamPie 应用程序并添加了 Python 3 2
  • 如何在 Sublime Text 2 的 OSX 终端中显示构建结果

    我刚刚从 TextMate 切换到 Sublime Text 2 我非常喜欢它 让我困扰的一件事是默认的构建结果显示在 ST2 的底部 我的程序产生一些很长的结果 显示它的理想方式 如在 TM2 中 是并排查看它们 如何在 Mac 操作系统
  • Python 多处理示例不起作用

    我正在尝试学习如何使用multiprocessing但我无法让它发挥作用 这是代码文档 http docs python org 2 library multiprocessing html from multiprocessing imp
  • 如何等到 Excel 计算公式后再继续 win32com

    我有一个 win32com Python 脚本 它将多个 Excel 文件合并到电子表格中并将其另存为 PDF 现在的工作原理是输出几乎都是 NAME 因为文件是在计算 Excel 文件内容之前输出的 这可能需要一分钟 如何强制工作簿计算值
  • 打破嵌套循环[重复]

    这个问题在这里已经有答案了 有没有比抛出异常更简单的方法来打破嵌套循环 在Perl https en wikipedia org wiki Perl 您可以为每个循环指定标签 并且至少继续一个外循环 for x in range 10 fo
  • 执行命令而不将其保留在历史记录中[关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 在进行软件开发时 经常需要在命令行命令中包含机密信息 典型示例是将项目部署到服务器的凭据设置为环境变量 当我不想将某些命令存储在命令历史记
  • 在pyyaml中表示具有相同基类的不同类的实例

    我有一些单元测试集 希望将每个测试运行的结果存储为 YAML 文件以供进一步分析 YAML 格式的转储数据在几个方面满足我的需求 但测试属于不同的套装 结果有不同的父类 这是我所拥有的示例 gt gt gt rz shorthand for
  • python 集合可以包含的值的数量是否有限制?

    我正在尝试使用 python 设置作为 mysql 表中 ids 的过滤器 python集存储了所有要过滤的id 现在大约有30000个 这个数字会随着时间的推移慢慢增长 我担心python集的最大容量 它可以包含的元素数量有限制吗 您最大
  • 使用 OpenPyXL 迭代工作表和单元格,并使用包含的字符串更新单元格[重复]

    这个问题在这里已经有答案了 我想使用 OpenPyXL 来搜索工作簿 但我遇到了一些问题 希望有人可以帮助解决 以下是一些障碍 待办事项 我的工作表和单元格数量未知 我想搜索工作簿并将工作表名称放入数组中 我想循环遍历每个数组项并搜索包含特
  • 表达式中的 Python 'in' 关键字与 for 循环中的比较 [重复]

    这个问题在这里已经有答案了 我明白什么是in运算符在此代码中执行的操作 some list 1 2 3 4 5 print 2 in some list 我也明白i将采用此代码中列表的每个值 for i in 1 2 3 4 5 print
  • Python - 按月对日期进行分组

    这是一个简单的问题 起初我认为很简单而忽略了它 一个小时过去了 我不太确定 所以 我有一个Python列表datetime对象 我想用图表来表示它们 x 值是年份和月份 y 值是此列表中本月发生的日期对象的数量 也许一个例子可以更好地证明这
  • Python - 在窗口最小化或隐藏时使用 pywinauto 控制窗口

    我正在尝试做的事情 我正在尝试使用 pywinauto 在 python 中创建一个脚本 以在后台自动安装 notepad 隐藏或最小化 notepad 只是一个示例 因为我将编辑它以与其他软件一起使用 Problem 问题是我想在安装程序
  • Numpy 优化

    我有一个根据条件分配值的函数 我的数据集大小通常在 30 50k 范围内 我不确定这是否是使用 numpy 的正确方法 但是当数字超过 5k 时 它会变得非常慢 有没有更好的方法让它更快 import numpy as np N 5000
  • 在Python中重置生成器对象

    我有一个由多个yield 返回的生成器对象 准备调用该生成器是相当耗时的操作 这就是为什么我想多次重复使用生成器 y FunctionWithYield for x in y print x here must be something t
  • VSCode:调试配置中的 Python 路径无效

    对 Python 和 VSCode 以及 stackoverflow 非常陌生 直到最近 我已经使用了大约 3 个月 一切都很好 当尝试在调试器中运行任何基本的 Python 程序时 弹出窗口The Python path in your
  • 用于运行可执行文件的python多线程进程

    我正在尝试将一个在 Windows 上运行可执行文件并管理文本输出文件的 python 脚本升级到使用多线程进程的版本 以便我可以利用多个核心 我有四个独立版本的可执行文件 每个线程都知道要访问它们 这部分工作正常 我遇到问题的地方是当它们
  • 循环标记时出现“ValueError:无法识别的标记样式 -d”

    我正在尝试编码pyplot允许不同标记样式的绘图 这些图是循环生成的 标记是从列表中选取的 为了演示目的 我还提供了一个颜色列表 版本是Python 2 7 9 IPython 3 0 0 matplotlib 1 4 3 这是一个简单的代
  • 使用基于正则表达式的部分匹配来选择 Pandas 数据帧的子数据帧

    我有一个 Pandas 数据框 它有两列 一列 进程参数 列 包含字符串 另一列 值 列 包含相应的浮点值 我需要过滤出部分匹配列 过程参数 中的一组键的子数据帧 并提取与这些键匹配的数据帧的两列 df pd DataFrame Proce
  • 如何使用 JSch 将多行命令输出存储到变量中

    所以 我有一段很好的代码 我很难理解 它允许我向我的服务器发送命令 并获得一行响应 该代码有效 但我想从服务器返回多行 主要类是 JSch jSch new JSch MyUserInfo ui new MyUserInfo String
  • Python:元类属性有时会覆盖类属性?

    下面代码的结果让我感到困惑 class MyClass type property def a self return 1 class MyObject object metaclass MyClass a 2 print MyObject

随机推荐

  • 从 Hoxton.SR4 升级到 Spring Cloud Hoxton.SR7 后遇到错误

    使用 Spring CloudHoxton SR4和 Spring Boot2 2 9 RELEASE库 我的 Spring Boot 微服务可以正确启动 并且在本地环境中针对 localstack 运行时运行得很好 但是当我升级到Hoxt
  • 如何通过 LINQ to XML 创建字典

    我有以下 XML
  • PhoneGap 未发出 AJAX (jsonp) 请求

    我一整天都在努力解决这个问题 并用谷歌搜索了所有地方 可能我只是找不到包含解决方案的一页 但我已经查看了问题和解决方案 例如 Ajax 调用phonegap 不发送请求 JQuery mobile Phonegap Ajax 调用无法在 A
  • 将具有相同 ID 类和标签 HTML 的多个元素拖放到屏幕上的任意位置

    大家好 这是我的第一个问题 所以我可能做错了 我想要实现的是拥有多个
  • 实现 PostgreSQL 表的历史记录

    我想实现 PostgreSQL 表的更改历史记录 该表的定义方式如下 CREATE TABLE ps counters psid integer NOT NULL counter bigint NOT NULL 我希望历史表看起来像 CRE
  • 读取刚刚写入临时文件的数据[重复]

    这个问题在这里已经有答案了 在 Go 中 我尝试将数据写入临时文件 然后转身读取该文件 但没有成功 下面是一个精简的测试程序 我已通过检查临时文件验证数据是否已写入文件 所以 至少我知道数据正在进入文件 我只是无法读出它 提前谢谢你的帮助
  • TMDb API 调用 - Swift

    我正在打电话TMDb Api按类型获取一系列电影 我想访问的许多属性都返回 nil 例如 vote count poster path 和 vote average 如果我在浏览器中调用 api 我会按预期获得所有属性 这是我的模型 imp
  • 如何使用 android 中的 zxing 库从相机预览中解码条形码?

    我想在我的 android 应用程序中实现独立的扫描仪 我在我的项目中使用 zxing 的 core jar 库 我需要从相机预览中解码条形码 但我不知道如何实现它 因为没有官方文档 您能为我提供一个有关以下事项的简单示例吗 1 初始化相机
  • Paypal 错误:文件系统检查失败

    我知道 SO 上有两篇关于此错误的帖子 就像我发现的每个谷歌结果一样 解决方案是 不要使用越狱设备 但我的很干净 我的客户也是如此 我用 Paypal 开发了两个应用程序 第一个效果非常好 第二个在 Paypal 按钮初始化时在调试器中显示
  • 如何使用多个 OR 语句根据对象的属性过滤数组

    这个问题很难用语言表达 但这是我的情况 我在一个名为的数组中有几个 Monster 对象monsters 每个怪物都有一个name属性是一个字符串 我有第二个数组称为monsterNames 其中包含几个怪物名称 作为字符串 我希望能够过滤
  • 如何避免 Angular 2 在链接中添加前缀“unsafe”? [复制]

    这个问题在这里已经有答案了 使用Angular 2 是否有一个设置可以避免添加前缀 unsafe 到链接 我需要为 Angular 2 中默认未列入白名单的协议设置链接 但我们的内部应用程序需要它 因此结果是无效链接 a href a pl
  • 带有文本和图像的 Android 按钮

    在看到有关此功能的许多问题并尝试遵循答案后 我想知道是否有更清晰的示例 编辑 我试图制作一个大按钮 其中的图像和文本位于 中间 它必须表现为一个按钮 StateList 可绘制 并且图像 文本对应该分组并居中 作为一个组 如果您喜欢带有图像
  • 如何在 ASP.Net MVC2 中完成这种类型的 URL?

    我有一个名为 类别 的表 我希望用户从类别列表中单击 然后加载该类别中所有拍卖的列表 很简单 对吧 我可以为每个类别创建一个操作 例如 public ActionResult Cellphones public ActionResult E
  • 为什么这些记录没有存储在缓存中?

    我想在收到记录后对其进行缓存 但我不知道如何进行 根据文档 您只需调用this store push model record 但似乎不起作用 Ember 在每次调用路由时都会从服务器请求数据 我只想执行一次 并在从服务器获取数据后使用本地
  • Google Sheet:如何使用 arrayformula 将数据从一张纸复制到另一张纸?

    在Google电子表格中 我想将sheet1中的A2 G500同步到sheet2 我知道以下两种方法 use IMPORTRANGE 在sheet2的A1中输入以下公式 导入范围 电子表格网址 表1 A2 G500 它有效 但感觉我做得太过
  • 添加不存在的订单元数据以扩展 WooCommerce 管理订单搜索

    继我之前的问题之后 我还有一个问题 允许在 WooCommerce 管理订单列表中使用帐单电子邮件进行搜索 以下是我的代码 用于将电子邮件和电子邮件显示为 md5 电话号码和支付网关名称 add filter manage edit sho
  • 将循环的结果分配给Python中的变量[重复]

    这个问题在这里已经有答案了 考虑一个我想使用解析的列表for friends Joe Zoe Brad Angelina Zuki Thandi Paris for i in friends print i 将返回 Joe Zoe Brad
  • 不使用扫描验证 DynamoDB 中的属性?

    如何在不使用 dynamodb 中的 scan 的情况下验证属性是否存在于表中 在我的用例中 从客户端 客户请求其 Customer id 以了解产品的价值 在服务器端 必须检查输入的 customer id 是否已存在于 DynamoDB
  • Google 登录在尝试调用 canOpenURL 时在 iOS 9 上崩溃

    在 iOS 9 SDK 上测试 Google Sign In 2 1 0 时 调用GIDSignIn sharedInstance signInSilently 最终在内部 Google Sign In SDK 调用时崩溃canOpenUR
  • 如何在Python脚本中导入lldb

    根据 LLDB 主页 LLDB 可以在 python 脚本中导入 如下所示 import lldb 从发行包安装 GDB 后 在 Ubuntu 15 04 上 sudo apt get install lldb 出现以下错误 Traceba