2016-03-02 29 views
2

在我的OOT模塊中,我寫了一個函數作爲「noblock」類型,並且我想將它導入到GRC中。如何將用C++編寫的函數(「noblock」)導入到GRC中

編譯過程和安裝進行得很順利,我可以使用我在Python中使用import my_module as mmmm.my_python_function()編寫的函數。

但是這是不工作的一個在C++中,我有錯誤消息:

帕拉姆 - 值(值):值「my_module.my_cpp_function()」不能被 評價:「模塊」對象沒有屬性'my_cpp_function'

請問我缺少什麼?這與swig有什麼關係?如何設置?謝謝。

注:我運行Ubuntu 14.04和GRC已經使用PyBombs與prefix = /usr/local

回答

0

這聽起來像你接近,並且大口設置正確安裝。過去兩天我一直在爲此而鬥爭,並提出了一種我認爲模仿gr-digital所做工作的方法。然而,在我拼寫完之前,你有沒有嘗試給GRC添加一個「Import」塊,然後輸入「import my_module」作爲它的「Import」?

我有點擔心,因爲你能夠在python中導入和使用模塊。

您是否創建了類似swig/my_module.i的內容?按照gr-digital/swig/packet_header.i作爲模板。然後確保swig/CMakeLists.txt在最後的install()語句中包含my_module.i;再次,看看gr-digital/swig/CMakeLists.txt的指導。

最後,確保你痛飲/ _swig.i包括

#include "<module_name>/my_module.h" 

後來

%include "<module_name>/my_module.h" 

在文件的結尾

%include "my_module.i" 

再次,看GR-數字例如使用packet_header的/swig/digital_swig.i。

相關問題