【发布时间】:2015-06-09 21:42:32
【问题描述】:
我正在我的机器上编译朋友的代码,但我一直遇到这个错误:
$ mpic++ dummy_file_name.cpp
dummy_file_name.cpp: In member function 'bool dummy_name1::dummy_name2::python_convert(const StringMultiArray&, PyObject**)':
dummy_file_name.cpp:430:55:error: cannot convert 'const std::__cxx11::basic_string<char>' to 'const char*' for argument '1' to 'PyObject* PyString_FromString(const char*)'
PyList_SetItem(*dst, i, PyString_FromString(src[i]));
这是什么意思?我该如何诊断或治疗这个问题?我正在使用 mpic++ 编译器。我试过用谷歌搜索这个错误,但我没有找到任何有用的信息。
这是我构建环境的方式:
brew reinstall gcc --without-multilib
export HOMEBREW_CC=gcc-5
export HOMEBREW_CXX=g++-5
brew install openmpi --build-form-source
brew install llvm --with-clang
【问题讨论】:
-
您可能需要
PyList_SetItem(*dst, i, PyString_FromString(src[i].c_str()));。如果这不起作用,请发布所有这些变量的类型。 -
@Praetorian 谢谢你的工作
标签: c++ c++11 homebrew openmpi mpic++