这是我程序的结构:
我正在尝试将C ++中的程序与python中的GUI绑定。我正在使用pybind11,并且我有一个用于绑定的python_binding.cpp文件以及一些“ .h”和“ .cpp”以及其他目录中的方法。我包含了“ .h”文件,但以某种方式python_binding.cpp无法识别它们。
文件config.cpp仅具有一个void方法“ cargar_configuracion()”,这就是绑定中的样子:
import os
os.mkdir(o + '\\' + i.split("\\")[-3])
其结果是以下错误:
#include "Ejemplo/config.h"
PYBIND11_MODULE(Example, m) {
m.doc() = "Binding"; // optional module docstring
m.def("cargar_configuracion", &cargar_configuracion);
我在做什么错?我应该将我的.cpp和.h与binding.cpp放在同一目录中吗?
谢谢!
答案 0 :(得分:1)
您的pybind11看起来不错,这是链接器错误。看来Configuration.GetConnectionString("SQLConnection"))
在解决方案中的另一个项目中,并且正在单独的可执行文件中构建。您在此处有两个选择,要么将config.cpp复制到同一目录中,要么将config.cpp
重新配置为静态库,然后将其指定为python包装器项目属性中的依赖项。
答案 1 :(得分:0)
从以下位置更改代码:
bViewResult = QtWidgets.QPushButton('View Results', self)
bViewResult.clicked.connect(self.openCSV)
至:
bViewResult = QtWidgets.QPushButton('View Results', self)
bViewResult.clicked.connect(cargar_configuracion())