import myClass *Traceback (most recent call last): File "<stdin>", line 1, in ? ImportError: ./myClass.so: undefined symbol: PyUnicodeUCS4_FromEncodedObject
Hi, Am stumbling on a very rudimentary problem and am totally not able to proceed. Googling did not help me much and hence am trying to state the problem in its entirety. Any quick comments/hints would be highly helpful. Am getting the following error when i try to import the module (class) into python : $python * *Environment:* g++ (GCC) 4.0.0 20050519 (Red Hat 4.0.0-8) Python 2.4.3 *Other Information:* $ldd myClass.so libstdc++.so.6 => /usr/lib/libstdc++.so.6 (0x00db8000) libm.so.6 => /lib/tls/libm.so.6 (0x002b3000) libgcc_s.so.1 => /lib/libgcc_s.so.1 (0x00eb7000) libpthread.so.0 => /lib/tls/libpthread.so.0 (0x0057a000) libc.so.6 => /lib/tls/libc.so.6 (0x00b6f000) /lib/ld-linux.so.2 (0x00712000) * Files Used :* *myClass.cpp* ------------- #include <boost/python.hpp> #include <boost/python/def.hpp> #include <boost/python/tuple.hpp> #include <boost/python/dict.hpp> #include <boost/python/module.hpp> #include <boost/python/raw_function.hpp> #include <string> class Var { public: int value; std::string name; Var(std::string n) { name=n; value=10; } }; std::string processObj(boost::python::object x) { Var obj=boost::python::extract<Var>(x); return obj.name; } using namespace boost::python; BOOST_PYTHON_MODULE(myClass) { class_<Var>("Var", init<std::string>()) .def_readonly("name", &Var::name) .def_readwrite("value", &Var::value); def("processObj", processObj); } *setup.py* --------------- from distutils.core import setup from distutils.extension import Extension setup(name="myvaarg",ext_modules=[Extension("myvaarg",["sample.cpp "],libraries=["boost_python"])]) $python setup.py build -- Venkat