草庐IT

python - Boost Python 出现 "No such file or directory"错误

coder 2023-05-25 原文

我已经从 ubuntu 9.04 存储库安装了 boost python。我已经成功运行 Build a Simple Program Using Boost从教程中,所以我知道我的系统上安装了 boost python。

但是,下面的程序返回错误:

#include <string>

namespace { // Avoid cluttering the global namespace.

  // A couple of simple C++ functions that we want to expose to Python.
  std::string greet() { return "hello, world"; }
  int square(int number) { return number * number; }
}
#include <boost/python.hpp>
using namespace boost::python;

BOOST_PYTHON_MODULE(getting_started1)
{
    // Add regular functions to the module.
    def("greet", greet);
    def("square", square);
}

我尝试执行以下两个步骤中的第一步来创建共享库:

g++ -c -fPIC hello.cpp -o hello.o
g++ -shared -Wl,-soname,libhello.so -o libhello.so  hello.o

(这些是正确的命令吗?)

以下是完整的错误输出:

In file included from /usr/include/boost/python/detail/prefix.hpp:13,
             from /usr/include/boost/python/args.hpp:8,
             from /usr/include/boost/python.hpp:11,
             from first.cpp:9:
/usr/include/boost/python/detail/wrap_python.hpp:50:23: error: pyconfig.h: No such file or directory
/usr/include/boost/python/detail/wrap_python.hpp:75:24: error: patchlevel.h: No such file or directory
/usr/include/boost/python/detail/wrap_python.hpp:78:2: error: #error Python 2.2 or higher is required for this version of Boost.Python.
/usr/include/boost/python/detail/wrap_python.hpp:142:21: error: Python.h: No such file or directory
In file included from /usr/include/boost/python/cast.hpp:13,
             from /usr/include/boost/python/handle.hpp:10,
             from /usr/include/boost/python/args_fwd.hpp:10,
             from /usr/include/boost/python/args.hpp:10,
             from /usr/include/boost/python.hpp:11,
             from first.cpp:9:
/usr/include/boost/python/base_type_traits.hpp:24: error: ‘PyObject’ was not declared in this scope
/usr/include/boost/python/base_type_traits.hpp:24: error: template argument 1 is invalid
/usr/include/boost/python/base_type_traits.hpp:30: error: ‘PyTypeObject’ was not declared in this scope
/usr/include/boost/python/base_type_traits.hpp:30: error: template argument 1 is invalid
/usr/include/boost/python/base_type_traits.hpp:36: error: ‘PyMethodObject’ was not declared in this scope
/usr/include/boost/python/base_type_traits.hpp:36: error: template argument 1 is invalid
In file included from /usr/include/boost/python/handle.hpp:11,
             from /usr/include/boost/python/args_fwd.hpp:10,
             from /usr/include/boost/python/args.hpp:10,
             from /usr/include/boost/python.hpp:11,
             from first.cpp:9:
/usr/include/boost/python/errors.hpp:51: error: expected constructor, destructor, or type conversion before ‘*’ token
In file included from /usr/include/boost/python/handle.hpp:13,
             from /usr/include/boost/python/args_fwd.hpp:10,
             from /usr/include/boost/python/args.hpp:10,
             from /usr/include/boost/python.hpp:11,
             from first.cpp:9:
/usr/include/boost/python/handle_fwd.hpp:12: error: expected type-specifier before ‘PyObject’
/usr/include/boost/python/handle_fwd.hpp:12: error: expected ‘>’ before ‘PyObject’
In file included from /usr/include/boost/python/handle.hpp:14,
             from /usr/include/boost/python/args_fwd.hpp:10,
             from /usr/include/boost/python/args.hpp:10,
             from /usr/include/boost/python.hpp:11,
             from first.cpp:9:
/usr/include/boost/python/refcount.hpp: In function ‘T* boost::python::incref(T*)’:
/usr/include/boost/python/refcount.hpp:16: error: ‘PyObject’ was not declared in this scope
/usr/include/boost/python/refcount.hpp: In function ‘T* boost::python::xincref(T*)’:
/usr/include/boost/python/refcount.hpp:23: error: ‘PyObject’ was not declared in this scope
/usr/include/boost/python/refcount.hpp: In function ‘void boost::python::decref(T*)’:
/usr/include/boost/python/refcount.hpp:30: error: ‘PyObject’ was not declared in this scope
/usr/include/boost/python/refcount.hpp: In function ‘void boost::python::xdecref(T*)’:
/usr/include/boost/python/refcount.hpp:36: error: ‘PyObject’ was not declared in this scope
In file included from /usr/include/boost/python/args_fwd.hpp:10,
             from /usr/include/boost/python/args.hpp:10,
             from /usr/include/boost/python.hpp:11,
             from first.cpp:9:
/usr/include/boost/python/handle.hpp: In constructor ‘boost::python::handle<T>::handle(boost::python::detail::borrowed_reference_t*)’:
/usr/include/boost/python/handle.hpp:130: error: ‘PyObject’ was not declared in this scope
/usr/include/boost/python/handle.hpp:130: error: expected primary-expression before ‘)’ token
/usr/include/boost/python/handle.hpp: At global scope:
/usr/include/boost/python/handle.hpp:157: error: ‘PyTypeObject’ was not declared in this scope
/usr/include/boost/python/handle.hpp:157: error: template argument 1 is invalid
/usr/include/boost/python/handle.hpp:157: error: invalid type in declaration before ‘;’ token
/usr/include/boost/python/handle.hpp:256: error: expected initializer before ‘*’ token
In file included from /usr/include/boost/python/args.hpp:10,
             from /usr/include/boost/python.hpp:11,
             from first.cpp:9:
/usr/include/boost/python/args_fwd.hpp:26: error: template argument 1 is invalid
In file included from /usr/include/boost/python/object/pointer_holder.hpp:14,
             from /usr/include/boost/python/to_python_indirect.hpp:10,
             from /usr/include/boost/python/converter/arg_to_python.hpp:10,
             from /usr/include/boost/python/call.hpp:15,
             from /usr/include/boost/python/object_core.hpp:12,
             from /usr/include/boost/python/args.hpp:25,
             from /usr/include/boost/python.hpp:11,
             from first.cpp:9:
/usr/include/boost/python/instance_holder.hpp:34: error: ‘PyObject’ has not been declared
/usr/include/boost/python/instance_holder.hpp:41: error: expected ‘;’ before ‘(’ token
/usr/include/boost/python/instance_holder.hpp:45: error: ‘PyObject’ has not been declared
In file included from /usr/include/boost/python/object/pointer_holder.hpp:21,
             from /usr/include/boost/python/to_python_indirect.hpp:10,
             from /usr/include/boost/python/converter/arg_to_python.hpp:10,
             from /usr/include/boost/python/call.hpp:15,
             from /usr/include/boost/python/object_core.hpp:12,
             from /usr/include/boost/python/args.hpp:25,
             from /usr/include/boost/python.hpp:11,
             from first.cpp:9:
/usr/include/boost/python/detail/wrapper_base.hpp:21: error: expected initializer before ‘*’ token
/usr/include/boost/python/detail/wrapper_base.hpp:23: error: expected initializer before ‘*’ token
/usr/include/boost/python/detail/wrapper_base.hpp:30: error: expected initializer before ‘*’ token
/usr/include/boost/python/detail/wrapper_base.hpp:34: error: expected initializer before ‘*’ token
/usr/include/boost/python/detail/wrapper_base.hpp:43: error: ‘PyObject’ has not been declared
/usr/include/boost/python/detail/wrapper_base.hpp:44: error: ‘PyObject’ is neither function nor member function; cannot be declared friend
/usr/include/boost/python/detail/wrapper_base.hpp:44: error: expected ‘;’ before ‘*’ token
/usr/include/boost/python/detail/wrapper_base.hpp:49: error: ‘PyTypeObject’ has not been declared
/usr/include/boost/python/detail/wrapper_base.hpp:55: error: expected ‘;’ before ‘*’ token
/usr/include/boost/python/detail/wrapper_base.hpp: In constructor ‘boost::python::detail::wrapper_base::wrapper_base()’:
/usr/include/boost/python/detail/wrapper_base.hpp:46: error: class ‘boost::python::detail::wrapper_base’ does not have any field named ‘m_self’
/usr/include/boost/python/detail/wrapper_base.hpp: At global scope:
/usr/include/boost/python/detail/wrapper_base.hpp:61: error: expected initializer before ‘*’ token
/usr/include/boost/python/detail/wrapper_base.hpp:71: error: expected initializer before ‘*’ token
/usr/include/boost/python/detail/wrapper_base.hpp:77: error: variable or field ‘initialize_wrapper’ declared void
/usr/include/boost/python/detail/wrapper_base.hpp:77: error: ‘PyObject’ was not declared in this scope
/usr/include/boost/python/detail/wrapper_base.hpp:77: error: ‘self’ was not declared in this scope
/usr/include/boost/python/detail/wrapper_base.hpp:77: error: expected primary-expression before ‘*’ token
/usr/include/boost/python/detail/wrapper_base.hpp:77: error: ‘w’ was not declared in this scope
/usr/include/boost/python/detail/wrapper_base.hpp:82: error: variable or field ‘initialize_wrapper’ declared void
/usr/include/boost/python/detail/wrapper_base.hpp:82: error: ‘PyObject’ was not declared in this scope
/usr/include/boost/python/detail/wrapper_base.hpp:82: error: expected primary-expression before ‘,’ token
/usr/include/boost/python/detail/wrapper_base.hpp:82: error: expected primary-expression before ‘...’ token
In file included from /usr/include/boost/preprocessor/iteration/detail/iter/forward1.hpp:47,
             from /usr/include/boost/python/object/pointer_holder.hpp:63,
             from /usr/include/boost/python/to_python_indirect.hpp:10,
             from /usr/include/boost/python/converter/arg_to_python.hpp:10,
             from /usr/include/boost/python/call.hpp:15,
             from /usr/include/boost/python/object_core.hpp:12,
             from /usr/include/boost/python/args.hpp:25,
             from /usr/include/boost/python.hpp:11,
             from first.cpp:9:
/usr/include/boost/python/object/pointer_holder.hpp:176: error: expected `)' before ‘*’ token
In file included from /usr/include/boost/preprocessor/iteration/detail/iter/forward1.hpp:52,
             from /usr/include/boost/python/object/pointer_holder.hpp:63,
             from /usr/include/boost/python/to_python_indirect.hpp:10,
             from /usr/include/boost/python/converter/arg_to_python.hpp:10,
             from /usr/include/boost/python/call.hpp:15,
             from /usr/include/boost/python/object_core.hpp:12,
             from /usr/include/boost/python/args.hpp:25,
             from /usr/include/boost/python.hpp:11,
             from first.cpp:9:
/usr/include/boost/python/object/pointer_holder.hpp:176: error: expected `)' before ‘*’ token
In file included from /usr/include/boost/preprocessor/iteration/detail/iter/forward1.hpp:57,
             from /usr/include/boost/python/object/pointer_holder.hpp:63,
             from /usr/include/boost/python/to_python_indirect.hpp:10,
             from /usr/include/boost/python/converter/arg_to_python.hpp:10,
             from /usr/include/boost/python/call.hpp:15,
             from /usr/include/boost/python/object_core.hpp:12,
             from /usr/include/boost/python/args.hpp:25,
             from /usr/include/boost/python.hpp:11,
             from first.cpp:9:
/usr/include/boost/python/object/pointer_holder.hpp:176: error: expected `)' before ‘*’ token
In file included from /usr/include/boost/preprocessor/iteration/detail/iter/forward1.hpp:62,
             from /usr/include/boost/python/object/pointer_holder.hpp:63,
             from /usr/include/boost/python/to_python_indirect.hpp:10,
             from /usr/include/boost/python/converter/arg_to_python.hpp:10,
             from /usr/include/boost/python/call.hpp:15,
             from /usr/include/boost/python/object_core.hpp:12,
             from /usr/include/boost/python/args.hpp:25,
             from /usr/include/boost/python.hpp:11,
             from first.cpp:9:
/usr/include/boost/python/object/pointer_holder.hpp:176: error: expected `)' before ‘*’ token
In file included from /usr/include/boost/preprocessor/iteration/detail/iter/forward1.hpp:67,
             from /usr/include/boost/python/object/pointer_holder.hpp:63,
             from /usr/include/boost/python/to_python_indirect.hpp:10,
             from /usr/include/boost/python/converter/arg_to_python.hpp:10,
             from /usr/include/boost/python/call.hpp:15,
             from /usr/include/boost/python/object_core.hpp:12,
             from /usr/include/boost/python/args.hpp:25,
             from /usr/include/boost/python.hpp:11,
             from first.cpp:9:
/usr/include/boost/python/object/pointer_holder.hpp:176: error: expected `)' before ‘*’ token
In file included from /usr/include/boost/preprocessor/iteration/detail/iter/forward1.hpp:72,
             from /usr/include/boost/python/object/pointer_holder.hpp:63,
             from /usr/include/boost/python/to_python_indirect.hpp:10,
             from /usr/include/boost/python/converter/arg_to_python.hpp:10,
             from /usr/include/boost/python/call.hpp:15,
             from /usr/include/boost/python/object_core.hpp:12,
             from /usr/include/boost/python/args.hpp:25,
             from /usr/include/boost/python.hpp:11,
             from first.cpp:9:
/usr/include/boost/python/object/pointer_holder.hpp:176: error: expected `)' before ‘*’ token
In file included from /usr/include/boost/preprocessor/iteration/detail/iter/forward1.hpp:77,
             from /usr/include/boost/python/object/pointer_holder.hpp:63,
             from /usr/include/boost/python/to_python_indirect.hpp:10,
             from /usr/include/boost/python/converter/arg_to_python.hpp:10,
             from /usr/include/boost/python/call.hpp:15,
             from /usr/include/boost/python/object_core.hpp:12,
             from /usr/include/boost/python/args.hpp:25,
             from /usr/include/boost/python.hpp:11,
             from first.cpp:9:
/usr/include/boost/python/object/pointer_holder.hpp:176: error: expected `)' before ‘*’ token
In file included from /usr/include/boost/preprocessor/iteration/detail/iter/forward1.hpp:82,
             from /usr/include/boost/python/object/pointer_holder.hpp:63,
             from /usr/include/boost/python/to_python_indirect.hpp:10,
             from /usr/include/boost/python/converter/arg_to_python.hpp:10,
             from /usr/include/boost/python/call.hpp:15,
             from /usr/include/boost/python/object_core.hpp:12,
             from /usr/include/boost/python/args.hpp:25,
             from /usr/include/boost/python.hpp:11,
             from first.cpp:9:
/usr/include/boost/python/object/pointer_holder.hpp:176: error: expected `)' before ‘*’ token
In file included from /usr/include/boost/preprocessor/iteration/detail/iter/forward1.hpp:87,
             from /usr/include/boost/python/object/pointer_holder.hpp:63,
             from /usr/include/boost/python/to_python_indirect.hpp:10,
             from /usr/include/boost/python/converter/arg_to_python.hpp:10,
             from /usr/include/boost/python/call.hpp:15,
             from /usr/include/boost/python/object_core.hpp:12,
             from /usr/include/boost/python/args.hpp:25,
             from /usr/include/boost/python.hpp:11,
             from first.cpp:9:
/usr/include/boost/python/object/pointer_holder.hpp:176: error: expected `)' before ‘*’ token
In file included from /usr/include/boost/preprocessor/iteration/detail/iter/forward1.hpp:92,
             from /usr/include/boost/python/object/pointer_holder.hpp:63,
             from /usr/include/boost/python/to_python_indirect.hpp:10,
             from /usr/include/boost/python/converter/arg_to_python.hpp:10,
             from /usr/include/boost/python/call.hpp:15,
             from /usr/include/boost/python/object_core.hpp:12,
             from /usr/include/boost/python/args.hpp:25,
             from /usr/include/boost/python.hpp:11,
             from first.cpp:9:
/usr/include/boost/python/object/pointer_holder.hpp:176: error: expected `)' before ‘*’ token
In file included from /usr/include/boost/preprocessor/iteration/detail/iter/forward1.hpp:97,
             from /usr/include/boost/python/object/pointer_holder.hpp:63,
             from /usr/include/boost/python/to_python_indirect.hpp:10,
             from /usr/include/boost/python/converter/arg_to_python.hpp:10,
             from /usr/include/boost/python/call.hpp:15,
             from /usr/include/boost/python/object_core.hpp:12,
             from /usr/include/boost/python/args.hpp:25,
             from /usr/include/boost/python.hpp:11,
             from first.cpp:9:
/usr/include/boost/python/object/pointer_holder.hpp:176: error: expected `)' before ‘*’ token
In file included from /usr/include/boost/preprocessor/iteration/detail/iter/forward1.hpp:102,
             from /usr/include/boost/python/object/pointer_holder.hpp:63,
             from /usr/include/boost/python/to_python_indirect.hpp:10,
             from /usr/include/boost/python/converter/arg_to_python.hpp:10,
             from /usr/include/boost/python/call.hpp:15,
             from /usr/include/boost/python/object_core.hpp:12,
             from /usr/include/boost/python/args.hpp:25,
             from /usr/include/boost/python.hpp:11,
             from first.cpp:9:
/usr/include/boost/python/object/pointer_holder.hpp:176: error: expected `)' before ‘*’ token
In file included from /usr/include/boost/preprocessor/iteration/detail/iter/forward1.hpp:107,
             from /usr/include/boost/python/object/pointer_holder.hpp:63,
             from /usr/include/boost/python/to_python_indirect.hpp:10,
             from /usr/include/boost/python/converter/arg_to_python.hpp:10,
             from /usr/include/boost/python/call.hpp:15,
             from /usr/include/boost/python/object_core.hpp:12,
             from /usr/include/boost/python/args.hpp:25,
             from /usr/include/boost/python.hpp:11,
             from first.cpp:9:
/usr/include/boost/python/object/pointer_holder.hpp:176: error: expected `)' before ‘*’ token
In file included from /usr/include/boost/preprocessor/iteration/detail/iter/forward1.hpp:112,
             from /usr/include/boost/python/object/pointer_holder.hpp:63,
             from /usr/include/boost/python/to_python_indirect.hpp:10,
             from /usr/include/boost/python/converter/arg_to_python.hpp:10,
             from /usr/include/boost/python/call.hpp:15,
             from /usr/include/boost/python/object_core.hpp:12,
             from /usr/include/boost/python/args.hpp:25,
             from /usr/include/boost/python.hpp:11,
             from first.cpp:9:
/usr/include/boost/python/object/pointer_holder.hpp:176: error: expected `)' before ‘*’ token
In file included from /usr/include/boost/preprocessor/iteration/detail/iter/forward1.hpp:117,
             from /usr/include/boost/python/object/pointer_holder.hpp:63,
             from /usr/include/boost/python/to_python_indirect.hpp:10,
             from /usr/include/boost/python/converter/arg_to_python.hpp:10,
             from /usr/include/boost/python/call.hpp:15,
             from /usr/include/boost/python/object_core.hpp:12,
             from /usr/include/boost/python/args.hpp:25,
             from /usr/include/boost/python.hpp:11,
             from first.cpp:9:
/usr/include/boost/python/object/pointer_holder.hpp:176: error: expected `)' before ‘*’ token
In file included from /usr/include/boost/preprocessor/iteration/detail/iter/forward1.hpp:122,
             from /usr/include/boost/python/object/pointer_holder.hpp:63,
             from /usr/include/boost/python/to_python_indirect.hpp:10,
             from /usr/include/boost/python/converter/arg_to_python.hpp:10,
             from /usr/include/boost/python/call.hpp:15,
             from /usr/include/boost/python/object_core.hpp:12,
             from /usr/include/boost/python/args.hpp:25,
             from /usr/include/boost/python.hpp:11,
             from first.cpp:9:
/usr/include/boost/python/object/pointer_holder.hpp:176: error: expected `)' before ‘*’ token
In file included from /usr/include/boost/preprocessor/iteration/detail/iter/forward1.hpp:47,
             from /usr/include/boost/python/object/pointer_holder.hpp:99,
             from /usr/include/boost/python/to_python_indirect.hpp:10,
             from /usr/include/boost/python/converter/arg_to_python.hpp:10,
             from /usr/include/boost/python/call.hpp:15,
             from /usr/include/boost/python/object_core.hpp:12,
             from /usr/include/boost/python/args.hpp:25,
             from /usr/include/boost/python.hpp:11,
             from first.cpp:9:
/usr/include/boost/python/object/pointer_holder.hpp:199: error: expected `)' before ‘*’ token
In file included from /usr/include/boost/preprocessor/iteration/detail/iter/forward1.hpp:52,
             from /usr/include/boost/python/object/pointer_holder.hpp:99,
             from /usr/include/boost/python/to_python_indirect.hpp:10,
             from /usr/include/boost/python/converter/arg_to_python.hpp:10,
             from /usr/include/boost/python/call.hpp:15,
             from /usr/include/boost/python/object_core.hpp:12,
             from /usr/include/boost/python/args.hpp:25,
             from /usr/include/boost/python.hpp:11,
             from first.cpp:9:
/usr/include/boost/python/object/pointer_holder.hpp:199: error: expected `)' before ‘*’ token
In file included from /usr/include/boost/preprocessor/iteration/detail/iter/forward1.hpp:57,
             from /usr/include/boost/python/object/pointer_holder.hpp:99,
             from /usr/include/boost/python/to_python_indirect.hpp:10,
             from /usr/include/boost/python/converter/arg_to_python.hpp:10,
             from /usr/include/boost/python/call.hpp:15,
             from /usr/include/boost/python/object_core.hpp:12,
             from /usr/include/boost/python/args.hpp:25,
             from /usr/include/boost/python.hpp:11,
             from first.cpp:9:
/usr/include/boost/python/object/pointer_holder.hpp:199: error: expected `)' before ‘*’ token
In file included from /usr/include/boost/preprocessor/iteration/detail/iter/forward1.hpp:62,
             from /usr/include/boost/python/object/pointer_holder.hpp:99,
             from /usr/include/boost/python/to_python_indirect.hpp:10,
             from /usr/include/boost/python/converter/arg_to_python.hpp:10,
             from /usr/include/boost/python/call.hpp:15,
             from /usr/include/boost/python/object_core.hpp:12,
             from /usr/include/boost/python/args.hpp:25,
             from /usr/include/boost/python.hpp:11,
             from first.cpp:9:
/usr/include/boost/python/object/pointer_holder.hpp:199: error: expected `)' before ‘*’ token
In file included from /usr/include/boost/preprocessor/iteration/detail/iter/forward1.hpp:67,
             from /usr/include/boost/python/object/pointer_holder.hpp:99,
             from /usr/include/boost/python/to_python_indirect.hpp:10,
             from /usr/include/boost/python/converter/arg_to_python.hpp:10,
             from /usr/include/boost/python/call.hpp:15,
             from /usr/include/boost/python/object_core.hpp:12,
             from /usr/include/boost/python/args.hpp:25,
             from /usr/include/boost/python.hpp:11,
             from first.cpp:9:
/usr/include/boost/python/object/pointer_holder.hpp:199: error: expected `)' before ‘*’ token
In file included from /usr/include/boost/preprocessor/iteration/detail/iter/forward1.hpp:72,
             from /usr/include/boost/python/object/pointer_holder.hpp:99,
             from /usr/include/boost/python/to_python_indirect.hpp:10,
             from /usr/include/boost/python/converter/arg_to_python.hpp:10,
             from /usr/include/boost/python/call.hpp:15,
             from /usr/include/boost/python/object_core.hpp:12,
             from /usr/include/boost/python/args.hpp:25,
             from /usr/include/boost/python.hpp:11,
             from first.cpp:9:
/usr/include/boost/python/object/pointer_holder.hpp:199: error: expected `)' before ‘*’ token
In file included from /usr/include/boost/preprocessor/iteration/detail/iter/forward1.hpp:77,
             from /usr/include/boost/python/object/pointer_holder.hpp:99,
             from /usr/include/boost/python/to_python_indirect.hpp:10,
             from /usr/include/boost/python/converter/arg_to_python.hpp:10,
             from /usr/include/boost/python/call.hpp:15,
             from /usr/include/boost/python/object_core.hpp:12,
             from /usr/include/boost/python/args.hpp:25,
             from /usr/include/boost/python.hpp:11,
             from first.cpp:9:
/usr/include/boost/python/object/pointer_holder.hpp:199: error: expected `)' before ‘*’ token
In file included from /usr/include/boost/preprocessor/iteration/detail/iter/forward1.hpp:82,
             from /usr/include/boost/python/object/pointer_holder.hpp:99,
             from /usr/include/boost/python/to_python_indirect.hpp:10,
             from /usr/include/boost/python/converter/arg_to_python.hpp:10,
             from /usr/include/boost/python/call.hpp:15,
             from /usr/include/boost/python/object_core.hpp:12,
             from /usr/include/boost/python/args.hpp:25,
             from /usr/include/boost/python.hpp:11,
             from first.cpp:9:
/usr/include/boost/python/object/pointer_holder.hpp:199: error: expected `)' before ‘*’ token
In file included from /usr/include/boost/preprocessor/iteration/detail/iter/forward1.hpp:87,
             from /usr/include/boost/python/object/pointer_holder.hpp:99,
             from /usr/include/boost/python/to_python_indirect.hpp:10,
             from /usr/include/boost/python/converter/arg_to_python.hpp:10,
             from /usr/include/boost/python/call.hpp:15,
             from /usr/include/boost/python/object_core.hpp:12,
             from /usr/include/boost/python/args.hpp:25,
             from /usr/include/boost/python.hpp:11,
             from first.cpp:9:
/usr/include/boost/python/object/pointer_holder.hpp:199: error: expected `)' before ‘*’ token
In file included from /usr/include/boost/preprocessor/iteration/detail/iter/forward1.hpp:92,
             from /usr/include/boost/python/object/pointer_holder.hpp:99,
             from /usr/include/boost/python/to_python_indirect.hpp:10,
             from /usr/include/boost/python/converter/arg_to_python.hpp:10,
             from /usr/include/boost/python/call.hpp:15,
             from /usr/include/boost/python/object_core.hpp:12,
             from /usr/include/boost/python/args.hpp:25,
             from /usr/include/boost/python.hpp:11,
             from first.cpp:9:
/usr/include/boost/python/object/pointer_holder.hpp:199: error: expected `)' before ‘*’ token
In file included from /usr/include/boost/preprocessor/iteration/detail/iter/forward1.hpp:97,
             from /usr/include/boost/python/object/pointer_holder.hpp:99,
             from /usr/include/boost/python/to_python_indirect.hpp:10,
             from /usr/include/boost/python/converter/arg_to_python.hpp:10,
             from /usr/include/boost/python/call.hpp:15,
             from /usr/include/boost/python/object_core.hpp:12,
             from /usr/include/boost/python/args.hpp:25,

最佳答案

添加 #include <Python.h>并用 -I/usr/include/python2.6 编译或任何你的 Python 版本。

不要忘记将它与 -lpython2.6 -lboost_python 链接。

关于python - Boost Python 出现 "No such file or directory"错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1771063/

有关python - Boost Python 出现 "No such file or directory"错误的更多相关文章

  1. python - 如何使用 Ruby 或 Python 创建一系列高音调和低音调的蜂鸣声? - 2

    关闭。这个问题是opinion-based.它目前不接受答案。想要改进这个问题?更新问题,以便editingthispost可以用事实和引用来回答它.关闭4年前。Improvethisquestion我想在固定时间创建一系列低音和高音调的哔哔声。例如:在150毫秒时发出高音调的蜂鸣声在151毫秒时发出低音调的蜂鸣声200毫秒时发出低音调的蜂鸣声250毫秒的高音调蜂鸣声有没有办法在Ruby或Python中做到这一点?我真的不在乎输出编码是什么(.wav、.mp3、.ogg等等),但我确实想创建一个输出文件。

  2. ruby-on-rails - rails : "missing partial" when calling 'render' in RSpec test - 2

    我正在尝试测试是否存在表单。我是Rails新手。我的new.html.erb_spec.rb文件的内容是:require'spec_helper'describe"messages/new.html.erb"doit"shouldrendertheform"dorender'/messages/new.html.erb'reponse.shouldhave_form_putting_to(@message)with_submit_buttonendendView本身,new.html.erb,有代码:当我运行rspec时,它失败了:1)messages/new.html.erbshou

  3. ruby-on-rails - 由于 "wkhtmltopdf",PDFKIT 显然无法正常工作 - 2

    我在从html页面生成PDF时遇到问题。我正在使用PDFkit。在安装它的过程中,我注意到我需要wkhtmltopdf。所以我也安装了它。我做了PDFkit的文档所说的一切......现在我在尝试加载PDF时遇到了这个错误。这里是错误:commandfailed:"/usr/local/bin/wkhtmltopdf""--margin-right""0.75in""--page-size""Letter""--margin-top""0.75in""--margin-bottom""0.75in""--encoding""UTF-8""--margin-left""0.75in""-

  4. ruby-on-rails - Rails 常用字符串(用于通知和错误信息等) - 2

    大约一年前,我决定确保每个包含非唯一文本的Flash通知都将从模块中的方法中获取文本。我这样做的最初原因是为了避免一遍又一遍地输入相同的字符串。如果我想更改措辞,我可以在一个地方轻松完成,而且一遍又一遍地重复同一件事而出现拼写错误的可能性也会降低。我最终得到的是这样的:moduleMessagesdefformat_error_messages(errors)errors.map{|attribute,message|"Error:#{attribute.to_s.titleize}#{message}."}enddeferror_message_could_not_find(obje

  5. ruby - 检查 "command"的输出应该包含 NilClass 的意外崩溃 - 2

    为了将Cucumber用于命令行脚本,我按照提供的说明安装了arubagem。它在我的Gemfile中,我可以验证是否安装了正确的版本并且我已经包含了require'aruba/cucumber'在'features/env.rb'中为了确保它能正常工作,我写了以下场景:@announceScenario:Testingcucumber/arubaGivenablankslateThentheoutputfrom"ls-la"shouldcontain"drw"假设事情应该失败。它确实失败了,但失败的原因是错误的:@announceScenario:Testingcucumber/ar

  6. ruby-on-rails - 迷你测试错误 : "NameError: uninitialized constant" - 2

    我遵循MichaelHartl的“RubyonRails教程:学习Web开发”,并创建了检查用户名和电子邮件长度有效性的测试(名称最多50个字符,电子邮件最多255个字符)。test/helpers/application_helper_test.rb的内容是:require'test_helper'classApplicationHelperTest在运行bundleexecraketest时,所有测试都通过了,但我看到以下消息在最后被标记为错误:ERROR["test_full_title_helper",ApplicationHelperTest,1.820016791]test

  7. ruby-on-rails - 相关表上的范围为 "WHERE ... LIKE" - 2

    我正在尝试从Postgresql表(table1)中获取数据,该表由另一个相关表(property)的字段(table2)过滤。在纯SQL中,我会这样编写查询:SELECT*FROMtable1JOINtable2USING(table2_id)WHEREtable2.propertyLIKE'query%'这工作正常:scope:my_scope,->(query){includes(:table2).where("table2.property":query)}但我真正需要的是使用LIKE运算符进行过滤,而不是严格相等。然而,这是行不通的:scope:my_scope,->(que

  8. ruby-on-rails - 如何在 Rails View 上显示错误消息? - 2

    我是rails的新手,想在form字段上应用验证。myviewsnew.html.erb.....模拟.rbclassSimulation{:in=>1..25,:message=>'Therowmustbebetween1and25'}end模拟Controller.rbclassSimulationsController我想检查模型类中row字段的整数范围,如果不在范围内则返回错误信息。我可以检查上面代码的范围,但无法返回错误消息提前致谢 最佳答案 关键是您使用的是模型表单,一种显示ActiveRecord模型实例属性的表单。c

  9. 使用 ACL 调用 upload_file 时出现 Ruby S3 "Access Denied"错误 - 2

    我正在尝试编写一个将文件上传到AWS并公开该文件的Ruby脚本。我做了以下事情:s3=Aws::S3::Resource.new(credentials:Aws::Credentials.new(KEY,SECRET),region:'us-west-2')obj=s3.bucket('stg-db').object('key')obj.upload_file(filename)这似乎工作正常,除了该文件不是公开可用的,而且我无法获得它的公共(public)URL。但是当我登录到S3时,我可以正常查看我的文件。为了使其公开可用,我将最后一行更改为obj.upload_file(file

  10. ruby-on-rails - 错误 : Error installing pg: ERROR: Failed to build gem native extension - 2

    我克隆了一个rails仓库,我现在正尝试捆绑安装背景:OSXElCapitanruby2.2.3p173(2015-08-18修订版51636)[x86_64-darwin15]rails-v在您的Gemfile中列出的或native可用的任何gem源中找不到gem'pg(>=0)ruby​​'。运行bundleinstall以安装缺少的gem。bundleinstallFetchinggemmetadatafromhttps://rubygems.org/............Fetchingversionmetadatafromhttps://rubygems.org/...Fe

随机推荐