我正在使用pybind11,并按照pybind/cmake_example中的描述,使用setupool和cmake构建python模块:
setup(
name='libraryname',
...
ext_modules=[CMakeExtension('libraryname')],
cmdclass=dict(build_ext=CMakeBuild),
)
在本地,使用python设置。py sdist build
一切正常,我可以使用和/或从生成的文件安装包。
我现在想把这个包上传到PyPI。从另一个python包中,我知道如何通过操纵控制盘的平台标记来生成通用linux库(另请参见此处):
class bdist_wheel(bdist_wheel_):
def finalize_options(self):
from sys import platform as _platform
platform_name = get_platform()
if _platform == "linux" or _platform == "linux2":
# Linux
platform_name = 'manylinux1_x86_64'
bdist_wheel_.finalize_options(self)
self.universal = True
self.plat_name_supplied = True
self.plat_name = platform_name
setup(
...
cmdclass = {'bdist_wheel': bdist_wheel},
)
当没有构建bdist_wheel
时,如何生成适当的平台标记?这是否应该以某种方式构建为轮子而不是扩展(可能与GH上的此问题有关)?
另外,pybind11如何决定生成库的后缀(在我的linux上不仅仅是. so
而是.cpython-35m-x86_64-linux-gnu.so
)?
ValueError:Unknown分发格式:'libraryname-0.8。0.cpython-35m-x86_64-linux-gnu。所以“
我的错!
事实证明,这种混乱是由于我最初尝试运行Pythonsetup.pysdistbdist_wheel时的构建错误造成的。用python手工构建setup.py构建
不是发布包的正确方法。
注意:该文件的名称。因此,需要在不使用-0.8的情况下设置文件。0
version identifier以便python能够从控制盘进行导入。
总而言之:构建和发布二进制轮子与pybind11的工作原理与cpython的工作原理完全相同,遵循pybind/cmake_示例应该可以很好地工作。
该部分 API 将帮助您使用 mBuild 电子模块平台以扩展光环板的功能和使用场景。 注意:你需要额外购买包含 mBuild 电子模块扩展包或套装来获得 mBuild 模块以使用这些功能。 输入类 mbuild 模块 输出类 mbuild 模块 其他 mBuild 扩展模块
问题内容: 我的项目中有多个模块,它们直接或可传递地相互依赖。当我构建«Project A»时,有些地方«Project D»会自动构建。 «Project D»pom片段是: 在构建«Project A»时会自动构建«Project B»,根据我的理解,应该在其中一个项目中添加某个地方作为依赖项,但是在这些项目的pom下我没有发现任何字符串引用。 知道在没有子项目出现在上游项目的情况下,还有什么
我得到这个消息从终端时运行我的项目与命令。我不得不说在今天之前一切都很好,Xcode从我的苹果电脑上更新了。 我什么都试过了,但没有成功。需要帮忙吗? 以下生成命令失败: Ld/Users/RobertoDiCarrera/documents/wander/wanderapp/Platform/ios/build/emulator/HelloWorld。app/HelloWorld normal
问题内容: 我想在linux中找到一个易于使用的OCR python模块,我发现pytesser http://code.google.com/p/pytesser/,但是它包含一个.exe可执行文件。 我尝试过更改代码以使用wine,它确实有效,但是它太慢了,真的不是一个好主意。 有没有像它一样易于使用的Linux替代品? 问题答案: 您可以只包装一个函数: 如果您希望文档分割和更多高级功能,请
本文向大家介绍Python标准库笔记struct模块的使用,包括了Python标准库笔记struct模块的使用的使用技巧和注意事项,需要的朋友参考一下 最近在学习python网络编程这一块,在写简单的socket通信代码时,遇到了struct这个模块的使用,当时不太清楚这到底有和作用,后来查阅了相关资料大概了解了,在这里做一下简单的总结。 了解c语言的人,一定会知道struct结构体在c语言中的作
本文向大家介绍使用Python的内建模块collections的教程,包括了使用Python的内建模块collections的教程的使用技巧和注意事项,需要的朋友参考一下 collections是Python内建的一个集合模块,提供了许多有用的集合类。 namedtuple 我们知道tuple可以表示不变集合,例如,一个点的二维坐标就可以表示成: 但是,看到(1, 2),很难看出这个tuple是用