构建python接口时出现Swig体系结构错误
操作系统:mac os 10.9.4 clang版本:基于LLVM 3.4svn的Apple LLVM版本5.1 clang-503.0.40 目标:x86_64-apple-darwin13.3.0 线程模型:posix python版本:python 2.7.8 v2.7.8:ee879c0ffa11,2014年6月29日,21:07:35 swig版本:3.0 C代码:构建python接口时出现Swig体系结构错误,python,c++,macos,swig,Python,C++,Macos,Swig,操作系统:mac os 10.9.4 clang版本:基于LLVM 3.4svn的Apple LLVM版本5.1 clang-503.0.40 目标:x86_64-apple-darwin13.3.0 线程模型:posix python版本:python 2.7.8 v2.7.8:ee879c0ffa11,2014年6月29日,21:07:35 swig版本:3.0 C代码: #include <time.h> double My_variable = 3.0; int fact(
#include <time.h>
double My_variable = 3.0;
int fact(int n) {
if (n <= 1) return 1;
else return n*fact(n-1);
}
int my_mod(int x, int y) {
return (x%y);
}
char *get_time()
{
time_t ltime;
time(<ime);
return ctime(<ime);
}
swig-python示例.i
gcc-c-fpic示例.c示例_wrap.c-I/usr/local/include/python2.7
gcc-sharedexample.o example_wrap.o-o_example.so
错误输出:
Undefined symbols for architecture x86_64:
"_PyArg_ParseTuple", referenced from:
__wrap_fact in example_wrap.o
__wrap_my_mod in example_wrap.o
__wrap_get_time in example_wrap.o
"_PyArg_UnpackTuple", referenced from:
_SwigPyObject_own in example_wrap.o
"_PyBool_FromLong", referenced from:
_SwigPyObject_richcompare in example_wrap.o
_SwigPyObject_own in example_wrap.o
"_PyCapsule_GetPointer", referenced from:
_SWIG_Python_DestroyModule in example_wrap.o
"_PyCapsule_Import", referenced from:
_SWIG_Python_GetModule in example_wrap.o
"_PyCapsule_New", referenced from:
_SWIG_Python_SetModule in example_wrap.o
"_PyDict_New", referenced from:
_SWIG_Python_NewShadowInstance in example_wrap.o
"_PyDict_SetItem", referenced from:
_SWIG_Python_NewShadowInstance in example_wrap.o
"_PyDict_SetItemString", referenced from:
_init_example in example_wrap.o
_SWIG_Python_InstallConstants in example_wrap.o
"_PyErr_Clear", referenced from:
_SWIG_AsVal_double in example_wrap.o
_SWIG_Python_GetModule in example_wrap.o
_SWIG_AsVal_long in example_wrap.o
"_PyErr_Format", referenced from:
_swig_varlink_getattr in example_wrap.o
_swig_varlink_setattr in example_wrap.o
"_PyErr_Occurred", referenced from:
_SWIG_AsVal_double in example_wrap.o
_swig_varlink_getattr in example_wrap.o
_swig_varlink_setattr in example_wrap.o
_SWIG_Python_GetModule in example_wrap.o
_SWIG_AsVal_long in example_wrap.o
"_PyErr_SetString", referenced from:
_SWIG_Python_SetErrorMsg in example_wrap.o
"_PyExc_AttributeError", referenced from:
_SWIG_Python_ErrorType in example_wrap.o
_swig_varlink_getattr in example_wrap.o
_swig_varlink_setattr in example_wrap.o
"_PyExc_IOError", referenced from:
_SWIG_Python_ErrorType in example_wrap.o
"_PyExc_IndexError", referenced from:
_SWIG_Python_ErrorType in example_wrap.o
"_PyExc_MemoryError", referenced from:
_SWIG_Python_ErrorType in example_wrap.o
"_PyExc_OverflowError", referenced from:
_SWIG_Python_ErrorType in example_wrap.o
"_PyExc_RuntimeError", referenced from:
_SWIG_Python_ErrorType in example_wrap.o
"_PyExc_SyntaxError", referenced from:
_SWIG_Python_ErrorType in example_wrap.o
"_PyExc_SystemError", referenced from:
_SWIG_Python_ErrorType in example_wrap.o
"_PyExc_TypeError", referenced from:
_SWIG_Python_ErrorType in example_wrap.o
"_PyExc_ValueError", referenced from:
_SWIG_Python_ErrorType in example_wrap.o
"_PyExc_ZeroDivisionError", referenced from:
_SWIG_Python_ErrorType in example_wrap.o
"_PyFloat_AsDouble", referenced from:
_SWIG_AsVal_double in example_wrap.o
"_PyFloat_FromDouble", referenced from:
_Swig_var_My_variable_get in example_wrap.o
"_PyFloat_Type", referenced from:
_SWIG_AsVal_double in example_wrap.o
"_PyInstance_NewRaw", referenced from:
_SWIG_Python_NewShadowInstance in example_wrap.o
"_PyInt_AsLong", referenced from:
_SWIG_AsVal_double in example_wrap.o
_SWIG_AsVal_long in example_wrap.o
"_PyInt_FromLong", referenced from:
_SWIG_From_int in example_wrap.o
"_PyLong_AsDouble", referenced from:
_SWIG_AsVal_double in example_wrap.o
"_PyLong_AsLong", referenced from:
_SWIG_AsVal_long in example_wrap.o
"_PyLong_FromVoidPtr", referenced from:
_SwigPyObject_long in example_wrap.o
"_PyModule_AddObject", referenced from:
_SWIG_Python_SetModule in example_wrap.o
"_PyModule_GetDict", referenced from:
_init_example in example_wrap.o
"_PyObject_Call", referenced from:
_SWIG_Python_NewShadowInstance in example_wrap.o
"_PyObject_CallFunctionObjArgs", referenced from:
_SwigPyObject_dealloc in example_wrap.o
"_PyObject_Free", referenced from:
_SwigPyPacked_New in example_wrap.o
_SwigPyPacked_dealloc in example_wrap.o
_SwigPyObject_dealloc in example_wrap.o
"_PyObject_GenericGetAttr", referenced from:
_SwigPyPacked_TypeOnce.tmp in example_wrap.o
_SwigPyObject_TypeOnce.tmp in example_wrap.o
"_PyObject_Init", referenced from:
_SWIG_Python_newvarlink in example_wrap.o
_SwigPyPacked_New in example_wrap.o
_SwigPyObject_New in example_wrap.o
"_PyObject_IsTrue", referenced from:
_SwigPyObject_own in example_wrap.o
"_PyObject_Malloc", referenced from:
_SWIG_Python_newvarlink in example_wrap.o
_SwigPyPacked_New in example_wrap.o
_SwigPyObject_New in example_wrap.o
"_PyString_AsString", referenced from:
_SWIG_Python_str_AsChar in example_wrap.o
"_PyString_ConcatAndDel", referenced from:
_swig_varlink_str in example_wrap.o
_SwigPyObject_repr in example_wrap.o
"_PyString_Format", referenced from:
_SwigPyObject_format in example_wrap.o
"_PyString_FromFormat", referenced from:
_SwigPyPacked_repr in example_wrap.o
_SwigPyPacked_str in example_wrap.o
_SwigPyObject_repr in example_wrap.o
"_PyString_FromString", referenced from:
_swig_varlink_repr in example_wrap.o
_swig_varlink_str in example_wrap.o
_SWIG_Python_str_FromChar in example_wrap.o
"_PyString_FromStringAndSize", referenced from:
_SWIG_FromCharPtrAndSize in example_wrap.o
"_PyTuple_New", referenced from:
_SwigPyObject_format in example_wrap.o
"_PyTuple_SetItem", referenced from:
_SwigPyObject_format in example_wrap.o
"_PyType_IsSubtype", referenced from:
_SWIG_AsVal_double in example_wrap.o
"_PyType_Ready", referenced from:
_swig_varlink_type in example_wrap.o
_SwigPyPacked_TypeOnce in example_wrap.o
_SwigPyObject_TypeOnce in example_wrap.o
"_Py_InitModule4_64", referenced from:
_init_example in example_wrap.o
_SWIG_Python_SetModule in example_wrap.o
"__PyObject_GetDictPtr", referenced from:
_SWIG_Python_NewShadowInstance in example_wrap.o
"__PyObject_New", referenced from:
_SWIG_Python_NewPointerObj in example_wrap.o
"__Py_NoneStruct", referenced from:
_SWIG_Py_Void in example_wrap.o
"__Py_NotImplementedStruct", referenced from:
_SwigPyObject_richcompare in example_wrap.o
ld: symbol(s) not found for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)
如何修复架构x86_64错误?重复的?@JulienPalard谢谢。
Undefined symbols for architecture x86_64:
"_PyArg_ParseTuple", referenced from:
__wrap_fact in example_wrap.o
__wrap_my_mod in example_wrap.o
__wrap_get_time in example_wrap.o
"_PyArg_UnpackTuple", referenced from:
_SwigPyObject_own in example_wrap.o
"_PyBool_FromLong", referenced from:
_SwigPyObject_richcompare in example_wrap.o
_SwigPyObject_own in example_wrap.o
"_PyCapsule_GetPointer", referenced from:
_SWIG_Python_DestroyModule in example_wrap.o
"_PyCapsule_Import", referenced from:
_SWIG_Python_GetModule in example_wrap.o
"_PyCapsule_New", referenced from:
_SWIG_Python_SetModule in example_wrap.o
"_PyDict_New", referenced from:
_SWIG_Python_NewShadowInstance in example_wrap.o
"_PyDict_SetItem", referenced from:
_SWIG_Python_NewShadowInstance in example_wrap.o
"_PyDict_SetItemString", referenced from:
_init_example in example_wrap.o
_SWIG_Python_InstallConstants in example_wrap.o
"_PyErr_Clear", referenced from:
_SWIG_AsVal_double in example_wrap.o
_SWIG_Python_GetModule in example_wrap.o
_SWIG_AsVal_long in example_wrap.o
"_PyErr_Format", referenced from:
_swig_varlink_getattr in example_wrap.o
_swig_varlink_setattr in example_wrap.o
"_PyErr_Occurred", referenced from:
_SWIG_AsVal_double in example_wrap.o
_swig_varlink_getattr in example_wrap.o
_swig_varlink_setattr in example_wrap.o
_SWIG_Python_GetModule in example_wrap.o
_SWIG_AsVal_long in example_wrap.o
"_PyErr_SetString", referenced from:
_SWIG_Python_SetErrorMsg in example_wrap.o
"_PyExc_AttributeError", referenced from:
_SWIG_Python_ErrorType in example_wrap.o
_swig_varlink_getattr in example_wrap.o
_swig_varlink_setattr in example_wrap.o
"_PyExc_IOError", referenced from:
_SWIG_Python_ErrorType in example_wrap.o
"_PyExc_IndexError", referenced from:
_SWIG_Python_ErrorType in example_wrap.o
"_PyExc_MemoryError", referenced from:
_SWIG_Python_ErrorType in example_wrap.o
"_PyExc_OverflowError", referenced from:
_SWIG_Python_ErrorType in example_wrap.o
"_PyExc_RuntimeError", referenced from:
_SWIG_Python_ErrorType in example_wrap.o
"_PyExc_SyntaxError", referenced from:
_SWIG_Python_ErrorType in example_wrap.o
"_PyExc_SystemError", referenced from:
_SWIG_Python_ErrorType in example_wrap.o
"_PyExc_TypeError", referenced from:
_SWIG_Python_ErrorType in example_wrap.o
"_PyExc_ValueError", referenced from:
_SWIG_Python_ErrorType in example_wrap.o
"_PyExc_ZeroDivisionError", referenced from:
_SWIG_Python_ErrorType in example_wrap.o
"_PyFloat_AsDouble", referenced from:
_SWIG_AsVal_double in example_wrap.o
"_PyFloat_FromDouble", referenced from:
_Swig_var_My_variable_get in example_wrap.o
"_PyFloat_Type", referenced from:
_SWIG_AsVal_double in example_wrap.o
"_PyInstance_NewRaw", referenced from:
_SWIG_Python_NewShadowInstance in example_wrap.o
"_PyInt_AsLong", referenced from:
_SWIG_AsVal_double in example_wrap.o
_SWIG_AsVal_long in example_wrap.o
"_PyInt_FromLong", referenced from:
_SWIG_From_int in example_wrap.o
"_PyLong_AsDouble", referenced from:
_SWIG_AsVal_double in example_wrap.o
"_PyLong_AsLong", referenced from:
_SWIG_AsVal_long in example_wrap.o
"_PyLong_FromVoidPtr", referenced from:
_SwigPyObject_long in example_wrap.o
"_PyModule_AddObject", referenced from:
_SWIG_Python_SetModule in example_wrap.o
"_PyModule_GetDict", referenced from:
_init_example in example_wrap.o
"_PyObject_Call", referenced from:
_SWIG_Python_NewShadowInstance in example_wrap.o
"_PyObject_CallFunctionObjArgs", referenced from:
_SwigPyObject_dealloc in example_wrap.o
"_PyObject_Free", referenced from:
_SwigPyPacked_New in example_wrap.o
_SwigPyPacked_dealloc in example_wrap.o
_SwigPyObject_dealloc in example_wrap.o
"_PyObject_GenericGetAttr", referenced from:
_SwigPyPacked_TypeOnce.tmp in example_wrap.o
_SwigPyObject_TypeOnce.tmp in example_wrap.o
"_PyObject_Init", referenced from:
_SWIG_Python_newvarlink in example_wrap.o
_SwigPyPacked_New in example_wrap.o
_SwigPyObject_New in example_wrap.o
"_PyObject_IsTrue", referenced from:
_SwigPyObject_own in example_wrap.o
"_PyObject_Malloc", referenced from:
_SWIG_Python_newvarlink in example_wrap.o
_SwigPyPacked_New in example_wrap.o
_SwigPyObject_New in example_wrap.o
"_PyString_AsString", referenced from:
_SWIG_Python_str_AsChar in example_wrap.o
"_PyString_ConcatAndDel", referenced from:
_swig_varlink_str in example_wrap.o
_SwigPyObject_repr in example_wrap.o
"_PyString_Format", referenced from:
_SwigPyObject_format in example_wrap.o
"_PyString_FromFormat", referenced from:
_SwigPyPacked_repr in example_wrap.o
_SwigPyPacked_str in example_wrap.o
_SwigPyObject_repr in example_wrap.o
"_PyString_FromString", referenced from:
_swig_varlink_repr in example_wrap.o
_swig_varlink_str in example_wrap.o
_SWIG_Python_str_FromChar in example_wrap.o
"_PyString_FromStringAndSize", referenced from:
_SWIG_FromCharPtrAndSize in example_wrap.o
"_PyTuple_New", referenced from:
_SwigPyObject_format in example_wrap.o
"_PyTuple_SetItem", referenced from:
_SwigPyObject_format in example_wrap.o
"_PyType_IsSubtype", referenced from:
_SWIG_AsVal_double in example_wrap.o
"_PyType_Ready", referenced from:
_swig_varlink_type in example_wrap.o
_SwigPyPacked_TypeOnce in example_wrap.o
_SwigPyObject_TypeOnce in example_wrap.o
"_Py_InitModule4_64", referenced from:
_init_example in example_wrap.o
_SWIG_Python_SetModule in example_wrap.o
"__PyObject_GetDictPtr", referenced from:
_SWIG_Python_NewShadowInstance in example_wrap.o
"__PyObject_New", referenced from:
_SWIG_Python_NewPointerObj in example_wrap.o
"__Py_NoneStruct", referenced from:
_SWIG_Py_Void in example_wrap.o
"__Py_NotImplementedStruct", referenced from:
_SwigPyObject_richcompare in example_wrap.o
ld: symbol(s) not found for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)