![](/img/trans.png)
[英]Return a 3rd party pybind type
我的 C++ 庫依賴於具有自身綁定的第三方 C++ 庫。 我綁定了一個使用struct公開其成員的def_readwrite 。 它的一個成員是來自第 3 方庫的類型。 基本上我有:struct MyStruct { ClassFromThirdParty member{}; } py::cl ...
[英]Return a 3rd party pybind type
我的 C++ 庫依賴於具有自身綁定的第三方 C++ 庫。 我綁定了一個使用struct公開其成員的def_readwrite 。 它的一個成員是來自第 3 方庫的類型。 基本上我有:struct MyStruct { ClassFromThirdParty member{}; } py::cl ...
[英]How to inherit from `LeafSystem<T>` in other pybind11 module
首先,感謝這個偉大的項目! 我有以下情況:我正在開發一個 C++ 庫,它使用drake作為依賴項。 具體來說,我有一個自定義系統,繼承自LeafSystem<T> :// my_system.h #include <drake/systems/framework/leaf_syst ...
[英]pybind c++ for multiple python versions
有人為我們 cmake 設置使用 pybind 創建一個 .pyd 模塊我們 package,連同一些純 python 文件,進入一個輪子。 我們正在從舊的 3.7 python 切換到現代版本,因此我們希望支持舊版和新版 python 的輪子,至少現在是這樣。 我已經閱讀了 pybind 文檔,由 ...
[英]pybind11 variable return type
我有一個 C++ class,它的作用類似於 map,可以包含不同的數據類型。 在 C++ 中,編譯時不知道條目是什么數據類型。 因此,程序員必須知道訪問器是模板化的: 在運行時,map 知道條目的類型。 所以在 python 中,我應該可以使用運行時類型信息。 我希望它在運行時查找類型信息,然后在 ...
[英]Why does lldb only show "dyld" in each stack frame on macOS Ventura?
我維護一個 Python 庫,它是用 C++ 編寫的(使用Pybind11 )。 在過去的幾年里,我已經能夠使用lldb很好地調試它,只需在調試模式下編譯擴展(即:禁用優化並使用-g包含符號)。 然而,從 macOS Ventura 13.1 (22C65) 上的lldb-1300.0.42.3開 ...
[英]Distributing pybind11 extension linked to third party libraries
我正在研究用 C++ 編寫的 pybind11 擴展,但我很難理解它應該如何分發。 該項目鏈接到許多第三方庫(例如 libpng、glew 等)。 該項目使用 CMAKE 構建良好,並生成一個 .so 文件。 現在我不確定安裝此擴展程序的正確方法是什么。 擴展似乎有效,就好像我嘗試將文件復制到它被拾 ...
[英]Debugging a C++ extension for Python from a Jupyter Notebook in Visual Studio Code
我有 Python 的 C++ 擴展(使用pybind11 )。 在 Visual Studio Code 中從 Python 腳本調試這個 C++ 擴展可以通過在launch.json文件中添加以下配置來實現:{ "version": "0.2.0", "configurations": ...
[英]Implementing generator throw() method in pybind11
我正在使用 pybind11 在 C++ 中實現一個生成器,我遇到的困難是實現throw方法。 在 python 中它有這個簽名和典型的實現:def throw(self, exception_type: type | None = None, exception_message: str | No ...
[英]PyBind11: How to implement Vector of Shared Pointers of Classes with Inheritence? Unable to load a custom holder type from a default-holder instance
我在 c++ 中有一個基數 class,它看起來像:class EdgeAttributePipelineStep { public: virtual void setAttributes(Edge& edge) = 0; }; 然后是繼承自這個 class 的一些類:class ...
[英]How to kill py::scoped_interpreter guard{} in pybind11
如何銷毀pybind11中的python解釋器以在循環中從c ++調用python函數這是我第一次獲得輸出,當第二次循環出現時,它會拋出 Microsoft C++ 異常:內存位置 0x000000A21C2FFA10 處的 pybind11::error_already_set。 我知道這個問題 ...
[英]Installing python extension module : understanding skbuild+setuptools
我是(相當大的)C++ 模擬工具的開發者之一。 免責聲明:我更像是物理學家而不是開發人員。 我使用pybind11為該項目編寫了 Python 綁定。 我設法讓 Python 模塊與cmake一起編譯。 然后我設法使用skbuild編寫了一個setup.py文件,它確實編譯了 Python 模塊: ...
[英]Pybind11: Release GIL by default
我有一個 C++ 庫,其中許多函數使用 PyBind11 導出到 Python。 我確信這些函數是線程安全的,並且希望在 Python 中最大化多線程的性能。通常我們必須像這樣釋放 GIL:PYBIND11_MODULE(MyModule, m) { m.def("foo", &f ...
[英]PyBind11 function argument is a base class pointer - if I pass a derived class it tells me it's an unsupported type
采用基數 class 的 function 定義在用 pybind11 包裝時不會將派生的 class 識別為有效參數。 在 pybind11 我有定義 像這樣的綁定 python 看起來像這樣 我得到錯誤 我如何使這項工作使 DerivedClass 與這個 function 調用一起工作? 謝 ...
[英]numpy error: ‘vectorcallfunc’ does not name a type
我正在使用 Cython 編譯 c++ 腳本以用於 python,包括 返回錯誤信息 我寫了一個c++的腳本和一個.pyx文件用cython編譯成一個.so文件。 我的程序如下: 在 python 文件中使用調用 package 為 c++ 代碼構建庫 構建 cython 模塊 使用 file.py ...
[英]Unknown CMake command "pybind11_add_module"
我正在開發一個使用 brew 安裝依賴項的項目。 我們需要 pybind11 來構建我們的 python 模塊。 當ll找到可用文件時,我得到: 這夠了嗎? 當我嘗試將 pybind11 添加到我的 CMakeLists.txt 時: 我總是得到同樣的錯誤: 我錯過了什么? 我嘗試使用pip安裝 ...
[英]pybind11: How to organize pybind module under a namespace package
在下面的 pybind 教程示例中,構建了一個動態庫。 https://github.com/pybind/python_example中的setup.py : 它可以這樣導入: 但這存在於全局命名空間中,我想將其組織在命名空間 package 下,如下所示: 似乎無論我把main.cpp放在哪里 ...
[英]pybind11 module import or link .so dependencies macOS
TLDR:在 python 中導入 pybind11 模塊時如何鏈接 a.so/import 依賴項? 我正在嘗試構建一個 pybind11 模塊,該模塊部分依賴於不同 python 庫的 C++ 部分。 在 Linux 上,我可以使用target_link_libraries在 CMake 中 ...
[英]Applying a function depending of index and column of a dataframe to a dataframe
我有一個 dataframe df其索引為[x[0], ..., x[N]]列為[y[0], ..., y[M]]其數據為z[i,j]的二維數組z[i,j]的。 我有一個 python function def f(x, y, z)的 3 個浮點變量,我想計算f(x[i], y[j], z[i,j ...
[英]How to create a Python package from a PyBind11 module created with CMake
我有一個 C++ 代碼,使用 Cmake & 制作建築部分。 多虧了 PyBind11,我還有 python 綁定到這段代碼。 我在 CMakeLists.txt 中使用pybind11_add_module ,現在當我構建( cmake -Bbuild && cd bui ...
[英]Cannot import C++ function from python with pybind11 due to undefined symbol
我正在解決的問題: 我想實現一個庫並在 pyhon 中使用它。 我面臨的問題:編譯代碼並嘗試在 python 中導入模塊后,我得到一個 ImportError,提到未定義的符號。 確切的文字是這樣說的: `` Python 3.10.6 (main, Nov 2 2022, 18:53:38) ...