我有一个 C++ 库(我们将在下面将其称为示例),我使用 boost.python 库为其编写了 Python 绑定。这个 Python 包装的库将被称为 pyExample。整个项目是使用 CMake 构建的,生成的 Python 包装库是一个名为libpyExample.so.
当我使用与 位于同一目录中的 Python 脚本中的 Python 绑定时libpyExample.so,我只需编写:
import libpyExample
libpyExample.hello_world()
Run Code Online (Sandbox Code Playgroud)
这将执行一个hello_world()由包装过程公开的函数。
为方便起见,我希望我的 pyExample 库可以从任何地方使用该命令
import pyExample
Run Code Online (Sandbox Code Playgroud)
我还希望 pyExample 可以通过一个命令轻松安装在任何 virtualenv 中。所以我认为一个方便的过程是使用 setuptools 来实现这一点。因此,这意味着:
libpyExample.so任何 Python 脚本可见我确实找到了很多关于使用 setuptools 编译 C++ 扩展的内容,但没有找到关于打包预编译 C++ 扩展的内容。我想要做的甚至可能吗?
我不想使用 setuptools 构建 pyExample 库,我想避免过多修改现有项目。CMake 构建很好,我可以libpyExample.so很容易地检索文件。
I am new to Bokeh and I am trying to build a plot which can be dynamically updated based on input provided by a widget. However, usage of Python callbacks is not thoroughly documented for most widgets and therefore I'm stuck.
我正在开发一个MPI应用程序,它需要运行MPI的特定实现(让我们称之为MPIvA).在我的工作站上,安装了MPI的另一个实现(我们称之为MPIvB).
我的应用程序是使用CMake构建的,find_library(MPI)显然指向MPIvB.它编译和运行没有麻烦.
我在我的工作站上编译了MPIvA.如何让CMake使用这些头文件和二进制文件?