当前位置: 首页 > 知识库问答 >
问题:

python venv如何管理C依赖关系

利海阳
2023-03-14

我正在使用一个库,它提供了一个c可执行文件的python包装器。

我安装它(https://github.com/bulletphysics/bullet3)使用venv(https://docs.python.org/3/library/venv.html)-一切都很好。

我正在考虑尝试构建 https://github.com/bulletphysics/bullet3

从venv文件夹的根目录,我找到了健身房/lib/python3.7/站点包/pybullet.cpython-37m-x86_64-linux-gnu.so.我猜这是最终从python调用的可执行文件。

从 Python 调用正确的外部二进制可执行文件涉及哪些步骤?如何将 pybullet 作为 p 导入 gym/lib/python3.7/site-packages/pybullet.cpython-37m-x86_64-linux-gnu.so?

这好像已经接近c世界的末日了;但是我找不到正确的关键字搜索来查看python的用法。

谢谢

共有2个答案

须鸿祯
2023-03-14

Python只是在PYTHONPATH中查找正确命名的动态库,加载此类库并使用预定义的接口

更多信息:https://docs.python.org/3/extending/index.html

丰博
2023-03-14

简言之:C-python只是在PYTHONPATH中查找正确命名的动态库,加载这样的库,并使用预定义的接口来理解该库中的内容应该作为python中模块的内容显示。

长话短说,如何准备这种共享对象以及它需要什么内容的细节将在https://docs.python.org/3/extending/index.html

所以venv只是把动态库放在虚拟环境PYTHONPATH的一部分目录中。

 类似资料:
  • Maven的核心功能之一是依赖管理。 一旦我们处理多模块项目(由数百个模块/子项目组成),管理依赖项是一项艰巨的任务。 Maven提供高度的控制来管理这些场景。 传递依赖发现 通常情况下,当一个库(比如A)依赖于其他库时,比如说B.如果另一个项目C想要使用A,那么该项目也需要使用库B. Maven有助于避免此类要求发现所需的所有库。 Maven通过读取依赖项的项目文件(pom.xml),找出它们的

  • Ember使用NPM和Bower来管理在针对NPM的package.json和针对Bower的bower.json中定义的依赖关系。 例如,您可能需要在开发Ember应用程序时为Ember安装的样式表安装SASS。 要实现此目的,请使用Ember Addons共享可重用库。 如果要安装任何CSS框架或JavaScript datepicker依赖项,请使用Bower包管理器。 Addons Emb

  • When you want to add, upgrade, or remove dependencies there are a couple of different commands you need to know. Each command will automatically update your package.json and yarn.lock files. Adding a

  • 简介 在第三章我们在构建To Do应用的时候学习到了怎么声明对Servlet ApI的依赖,Gradle的领域特定语言使得声明依赖和仓库变得很简单,你只需要在dependencies脚本中声明你所依赖的库,然后你需要告诉构建系统要从哪个仓库里下载依赖。提供了这两个信息,Gradle就能自动解析、下载依赖到你的电脑上,如果有需要会存储在本地缓存中必备以后需要。 这一章我们将介绍Gradle对依赖管理

  • PHP 有很多可供使用的库、框架和组件。通常你的项目都会使用到其中的若干项 - 这些就是项目的依赖。直到最近,PHP 也没有一个很好的方式来管理这些项目依赖。即使你通过手动的方式去管理,你依然会为自动加载器而担心。但现在这已经不再是问题了。 目前 PHP 有两个使用较多的包管理系统 - Composer 和 PEAR。Composer 是 PHP 所使用的最流行的包管理器,然而在很长的一段时间里,

  • 在San CLI UI中,可直接进行项目插件和依赖的安装、更新、卸载、删除等操作,依赖管理和插件管理的核心是npm包的安装可视化操作,好处是: npm install的可视化管理,组件升级更直观 操作简单,快速引入依赖 CLI的插件集合,更容易发现新包,提升检索效率 依赖管理 在依赖管理中,可以查看项目已安装的依赖列表,也可以在上方的搜索框中搜索项目已安装的依赖,然后更新或卸载它们。 安装依赖 点