0

platform:macOS11.1

Hello, everyone.

When I tried to install HYMLS(https://github.com/nlesc-smcm/hymls), I met the following error.

[ 98%] Building CXX object python/CMakeFiles/HYMLS.dir/CMakeFiles/HYMLS.dir/HYMLSPYTHON_wrap.cxx.o
[100%] Linking CXX shared module _HYMLS.so
Undefined symbols for architecture x86_64:
  "_PyArg_UnpackTuple", referenced from:
      SwigPyObject_own(_object*, _object*) in HYMLSPYTHON_wrap.cxx.o
  "_PyBool_FromLong", referenced from:
      SWIG_From_bool(bool) in HYMLSPYTHON_wrap.cxx.o
      SwigPyObject_richcompare(SwigPyObject*, SwigPyObject*, int) in HYMLSPYTHON_wrap.cxx.o
      SwigPyObject_own(_object*, _object*) in HYMLSPYTHON_wrap.cxx.o
  "_PyBool_Type", referenced from:
      SWIG_AsVal_bool(_object*, bool*) in HYMLSPYTHON_wrap.cxx.o
  "_PyBytes_AsStringAndSize", referenced from:
      SWIG_AsCharPtrAndSize(_object*, char**, unsigned long*, int*) in HYMLSPYTHON_wrap.cxx.o
  "_PyCFunction_Type", referenced from:
      SWIG_PyInstanceMethod_New(_object*, _object*) in HYMLSPYTHON_wrap.cxx.o
  "_PyCMethod_New", referenced from:
      SWIG_PyInstanceMethod_New(_object*, _object*) in HYMLSPYTHON_wrap.cxx.o
  "_PyCapsule_GetPointer", referenced from:
      SWIG_Python_TypeQuery(char const*) in HYMLSPYTHON_wrap.cxx.o
      SWIG_Python_DestroyModule(_object*) in HYMLSPYTHON_wrap.cxx.o
  "_PyCapsule_Import", referenced from:
      SWIG_Python_GetModule(void*) in HYMLSPYTHON_wrap.cxx.o
  "_PyCapsule_New", referenced from:
      SWIG_Python_TypeQuery(char const*) in HYMLSPYTHON_wrap.cxx.o
      SWIG_Python_SetModule(swig_module_info*) in HYMLSPYTHON_wrap.cxx.o
  "_PyDict_GetItem", referenced from:
      SWIG_Python_TypeQuery(char const*) in HYMLSPYTHON_wrap.cxx.o
  "_PyDict_New", referenced from:
      SWIG_Python_TypeCache() in HYMLSPYTHON_wrap.cxx.o
      SWIG_Python_NewShadowInstance(SwigPyClientData*, _object*) in HYMLSPYTHON_wrap.cxx.o
  "_PyDict_SetItem", referenced from:
      SWIG_Python_TypeQuery(char const*) in HYMLSPYTHON_wrap.cxx.o
  "_PyDict_SetItemString", referenced from:
      SWIG_Python_InstallConstants(_object*, swig_const_info*) in HYMLSPYTHON_wrap.cxx.o
  "_PyErr_Clear", referenced from:
      SWIG_Python_GetModule(void*) in HYMLSPYTHON_wrap.cxx.o
      SWIG_Python_ConvertPtrAndOwn(_object*, void**, swig_type_info*, int, int*) in HYMLSPYTHON_wrap.cxx.o
      SWIG_Python_GetSwigThis(_object*) in HYMLSPYTHON_wrap.cxx.o
      SWIG_AsVal_long(_object*, long*) in HYMLSPYTHON_wrap.cxx.o
      SWIG_AsVal_long_SS_long(_object*, long long*) in HYMLSPYTHON_wrap.cxx.o
      SwigPyClientData_New(_object*) in HYMLSPYTHON_wrap.cxx.o
      SWIG_AsVal_double(_object*, double*) in HYMLSPYTHON_wrap.cxx.o
      ...
  "_PyErr_Fetch", referenced from:
      SWIG_Python_RaiseOrModifyTypeError(char const*) in HYMLSPYTHON_wrap.cxx.o
      SwigPyObject_dealloc(_object*) in HYMLSPYTHON_wrap.cxx.o
  "_PyErr_Format", referenced from:
      SWIG_Python_UnpackTuple(_object*, char const*, long, long, _object**) in HYMLSPYTHON_wrap.cxx.o
  "_PyErr_GivenExceptionMatches", referenced from:
      SWIG_Python_TypeErrorOccurred(_object*) in HYMLSPYTHON_wrap.cxx.o
  "_PyErr_Occurred", referenced from:
      _wrap_Tools_Revision(_object*, _object*) in HYMLSPYTHON_wrap.cxx.o
      _wrap_Tools_RestoreIO(_object*, _object*) in HYMLSPYTHON_wrap.cxx.o
      _wrap_Tools_InitializedIO(_object*, _object*) in HYMLSPYTHON_wrap.cxx.o
      _wrap_Tools_Error(_object*, _object*) in HYMLSPYTHON_wrap.cxx.o
      _wrap_Tools_Warning(_object*, _object*) in HYMLSPYTHON_wrap.cxx.o
      _wrap_Tools_SignalHandler(_object*, _object*) in HYMLSPYTHON_wrap.cxx.o
      _wrap_Tools_StartTiming(_object*, _object*) in HYMLSPYTHON_wrap.cxx.o
      ...
  "_PyErr_Restore", referenced from:
      SWIG_Python_RaiseOrModifyTypeError(char const*) in HYMLSPYTHON_wrap.cxx.o
      SwigPyObject_dealloc(_object*) in HYMLSPYTHON_wrap.cxx.o
  "_PyErr_SetString", referenced from:
      _wrap_Tools_Revision(_object*, _object*) in HYMLSPYTHON_wrap.cxx.o
      _wrap_Tools_RestoreIO(_object*, _object*) in HYMLSPYTHON_wrap.cxx.o
      _wrap_Tools_InitializedIO(_object*, _object*) in HYMLSPYTHON_wrap.cxx.o
      _wrap_Tools_Error(_object*, _object*) in HYMLSPYTHON_wrap.cxx.o
      _wrap_Tools_Warning(_object*, _object*) in HYMLSPYTHON_wrap.cxx.o
      _wrap_Tools_SignalHandler(_object*, _object*) in HYMLSPYTHON_wrap.cxx.o
      _wrap_Tools_StartTiming(_object*, _object*) in HYMLSPYTHON_wrap.cxx.o
      ...
  "_PyErr_WriteUnraisable", referenced from:
      SwigPyObject_dealloc(_object*) in HYMLSPYTHON_wrap.cxx.o
  "_PyExc_AttributeError", referenced from:
      SWIG_Python_ErrorType(int) in HYMLSPYTHON_wrap.cxx.o
  "_PyExc_Exception", referenced from:
      _wrap_Tools_Revision(_object*, _object*) in HYMLSPYTHON_wrap.cxx.o
      _wrap_Tools_RestoreIO(_object*, _object*) in HYMLSPYTHON_wrap.cxx.o
      _wrap_Tools_InitializedIO(_object*, _object*) in HYMLSPYTHON_wrap.cxx.o
      _wrap_Tools_Error(_object*, _object*) in HYMLSPYTHON_wrap.cxx.o
      _wrap_Tools_Warning(_object*, _object*) in HYMLSPYTHON_wrap.cxx.o
      _wrap_Tools_SignalHandler(_object*, _object*) in HYMLSPYTHON_wrap.cxx.o
      _wrap_Tools_StartTiming(_object*, _object*) in HYMLSPYTHON_wrap.cxx.o
      ...
  "_PyExc_IOError", referenced from:
      SWIG_Python_ErrorType(int) in HYMLSPYTHON_wrap.cxx.o
  "_PyExc_IndexError", referenced from:
      SWIG_Python_ErrorType(int) in HYMLSPYTHON_wrap.cxx.o
  "_PyExc_MemoryError", referenced from:
      SWIG_Python_ErrorType(int) in HYMLSPYTHON_wrap.cxx.o
  "_PyExc_OverflowError", referenced from:
      SWIG_Python_ErrorType(int) in HYMLSPYTHON_wrap.cxx.o
  "_PyExc_RuntimeError", referenced from:
      SWIG_Python_ErrorType(int) in HYMLSPYTHON_wrap.cxx.o
  "_PyExc_SyntaxError", referenced from:
      SWIG_Python_ErrorType(int) in HYMLSPYTHON_wrap.cxx.o
  "_PyExc_SystemError", referenced from:
      SWIG_Python_UnpackTuple(_object*, char const*, long, long, _object**) in HYMLSPYTHON_wrap.cxx.o
      SWIG_Python_ErrorType(int) in HYMLSPYTHON_wrap.cxx.o
  "_PyExc_TypeError", referenced from:
      SWIG_Python_UnpackTuple(_object*, char const*, long, long, _object**) in HYMLSPYTHON_wrap.cxx.o
      SWIG_Python_RaiseOrModifyTypeError(char const*) in HYMLSPYTHON_wrap.cxx.o
      SWIG_Python_ErrorType(int) in HYMLSPYTHON_wrap.cxx.o
      SWIG_Python_TypeErrorOccurred(_object*) in HYMLSPYTHON_wrap.cxx.o
      SwigPyObject_append(_object*, _object*) in HYMLSPYTHON_wrap.cxx.o
  "_PyExc_ValueError", referenced from:
      SWIG_Python_ErrorType(int) in HYMLSPYTHON_wrap.cxx.o
  "_PyExc_ZeroDivisionError", referenced from:
      SWIG_Python_ErrorType(int) in HYMLSPYTHON_wrap.cxx.o
  "_PyFloat_AsDouble", referenced from:
      SWIG_AsVal_double(_object*, double*) in HYMLSPYTHON_wrap.cxx.o
  "_PyFloat_FromDouble", referenced from:
      _wrap_Preconditioner_InitializeTime(_object*, _object*) in HYMLSPYTHON_wrap.cxx.o
      _wrap_Preconditioner_ComputeTime(_object*, _object*) in HYMLSPYTHON_wrap.cxx.o
      _wrap_Preconditioner_ApplyInverseTime(_object*, _object*) in HYMLSPYTHON_wrap.cxx.o
      _wrap_Preconditioner_InitializeFlops(_object*, _object*) in HYMLSPYTHON_wrap.cxx.o
      _wrap_Preconditioner_ComputeFlops(_object*, _object*) in HYMLSPYTHON_wrap.cxx.o
      _wrap_Preconditioner_ApplyInverseFlops(_object*, _object*) in HYMLSPYTHON_wrap.cxx.o
      _wrap_Preconditioner_NormInf(_object*, _object*) in HYMLSPYTHON_wrap.cxx.o
      ...
  "_PyFloat_Type", referenced from:
      SWIG_AsVal_double(_object*, double*) in HYMLSPYTHON_wrap.cxx.o
  "_PyImport_AddModule", referenced from:
      SWIG_Python_SetModule(swig_module_info*) in HYMLSPYTHON_wrap.cxx.o
  "_PyInstanceMethod_New", referenced from:
      SWIG_PyInstanceMethod_New(_object*, _object*) in HYMLSPYTHON_wrap.cxx.o
  "_PyLong_AsDouble", referenced from:
      SWIG_AsVal_double(_object*, double*) in HYMLSPYTHON_wrap.cxx.o
  "_PyLong_AsLong", referenced from:
      SWIG_AsVal_long(_object*, long*) in HYMLSPYTHON_wrap.cxx.o
  "_PyLong_AsLongLong", referenced from:
      SWIG_AsVal_long_SS_long(_object*, long long*) in HYMLSPYTHON_wrap.cxx.o
  "_PyLong_FromLong", referenced from:
      SWIG_From_int(int) in HYMLSPYTHON_wrap.cxx.o
  "_PyLong_FromVoidPtr", referenced from:
      SwigPyObject_long(SwigPyObject*) in HYMLSPYTHON_wrap.cxx.o
  "_PyModule_AddObject", referenced from:
      SWIG_Python_SetModule(swig_module_info*) in HYMLSPYTHON_wrap.cxx.o
  "_PyModule_Create2", referenced from:
      _PyInit__HYMLS in HYMLSPYTHON_wrap.cxx.o
  "_PyModule_GetDict", referenced from:
      _PyInit__HYMLS in HYMLSPYTHON_wrap.cxx.o
  "_PyObject_Call", referenced from:
      SWIG_Python_NewShadowInstance(SwigPyClientData*, _object*) in HYMLSPYTHON_wrap.cxx.o
  "_PyObject_CallFunctionObjArgs", referenced from:
      SWIG_Python_ConvertPtrAndOwn(_object*, void**, swig_type_info*, int, int*) in HYMLSPYTHON_wrap.cxx.o
      SwigPyObject_dealloc(_object*) in HYMLSPYTHON_wrap.cxx.o
  "_PyObject_Free", referenced from:
      SwigPyPacked_dealloc(_object*) in HYMLSPYTHON_wrap.cxx.o
      SwigPyObject_dealloc(_object*) in HYMLSPYTHON_wrap.cxx.o
      SwigPyPacked_New(void*, unsigned long, swig_type_info*) in HYMLSPYTHON_wrap.cxx.o
  "_PyObject_GenericGetAttr", referenced from:
      l___const._ZL21SwigPyPacked_TypeOncev.tmp in HYMLSPYTHON_wrap.cxx.o
      l___const._ZL21SwigPyObject_TypeOncev.tmp in HYMLSPYTHON_wrap.cxx.o
  "_PyObject_GetAttr", referenced from:
      SWIG_Python_GetSwigThis(_object*) in HYMLSPYTHON_wrap.cxx.o
  "_PyObject_GetAttrString", referenced from:
      SwigPyClientData_New(_object*) in HYMLSPYTHON_wrap.cxx.o
  "_PyObject_IsInstance", referenced from:
      SwigPyClientData_New(_object*) in HYMLSPYTHON_wrap.cxx.o
  "_PyObject_IsTrue", referenced from:
      SWIG_AsVal_bool(_object*, bool*) in HYMLSPYTHON_wrap.cxx.o
      SwigPyObject_own(_object*, _object*) in HYMLSPYTHON_wrap.cxx.o
  "_PyObject_SetAttr", referenced from:
      SWIG_Python_NewShadowInstance(SwigPyClientData*, _object*) in HYMLSPYTHON_wrap.cxx.o
      SWIG_Python_SetSwigThis(_object*, _object*) in HYMLSPYTHON_wrap.cxx.o
  "_PyTuple_New", referenced from:
      SWIG_Python_NewShadowInstance(SwigPyClientData*, _object*) in HYMLSPYTHON_wrap.cxx.o
      SwigPyClientData_New(_object*) in HYMLSPYTHON_wrap.cxx.o
  "_PyTuple_SetItem", referenced from:
      SwigPyClientData_New(_object*) in HYMLSPYTHON_wrap.cxx.o
  "_PyType_IsSubtype", referenced from:
      SWIG_PyInstanceMethod_New(_object*, _object*) in HYMLSPYTHON_wrap.cxx.o
      SWIG_AsVal_double(_object*, double*) in HYMLSPYTHON_wrap.cxx.o
  "_PyType_Ready", referenced from:
      SwigPyPacked_TypeOnce() in HYMLSPYTHON_wrap.cxx.o
      SwigPyObject_TypeOnce() in HYMLSPYTHON_wrap.cxx.o
  "_PyType_Type", referenced from:
      SwigPyClientData_New(_object*) in HYMLSPYTHON_wrap.cxx.o
  "_PyUnicode_AsUTF8String", referenced from:
      SWIG_AsCharPtrAndSize(_object*, char**, unsigned long*, int*) in HYMLSPYTHON_wrap.cxx.o
  "_PyUnicode_Concat", referenced from:
      SwigPyObject_repr(SwigPyObject*) in HYMLSPYTHON_wrap.cxx.o
  "_PyUnicode_DecodeUTF8", referenced from:
      SWIG_FromCharPtrAndSize(char const*, unsigned long) in HYMLSPYTHON_wrap.cxx.o
  "_PyUnicode_FromFormat", referenced from:
      SWIG_Python_RaiseOrModifyTypeError(char const*) in HYMLSPYTHON_wrap.cxx.o
      SwigPyPacked_repr(SwigPyPacked*) in HYMLSPYTHON_wrap.cxx.o
      SwigPyPacked_str(SwigPyPacked*) in HYMLSPYTHON_wrap.cxx.o
      SwigPyObject_repr(SwigPyObject*) in HYMLSPYTHON_wrap.cxx.o
  "_PyUnicode_FromString", referenced from:
      SWIG_Python_str_FromChar(char const*) in HYMLSPYTHON_wrap.cxx.o
  "_Py_DecRef", referenced from:
      SwigPyObject_repr(SwigPyObject*) in HYMLSPYTHON_wrap.cxx.o
  "__PyObject_New", referenced from:
      SWIG_Python_NewPointerObj(_object*, void*, swig_type_info*, int) in HYMLSPYTHON_wrap.cxx.o
      SwigPyObject_New(void*, swig_type_info*, int) in HYMLSPYTHON_wrap.cxx.o
      SwigPyPacked_New(void*, unsigned long, swig_type_info*) in HYMLSPYTHON_wrap.cxx.o
  "__Py_Dealloc", referenced from:
      _Py_DECREF(_object*) in HYMLSPYTHON_wrap.cxx.o
  "__Py_NoneStruct", referenced from:
      SWIG_Py_Void() in HYMLSPYTHON_wrap.cxx.o
      SWIG_Python_ConvertPtrAndOwn(_object*, void**, swig_type_info*, int, int*) in HYMLSPYTHON_wrap.cxx.o
  "__Py_NotImplementedStruct", referenced from:
      SwigPyObject_richcompare(SwigPyObject*, SwigPyObject*, int) in HYMLSPYTHON_wrap.cxx.o
ld: symbol(s) not found for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)
make[2]: *** [python/_HYMLS.so] Error 1
make[1]: *** [python/CMakeFiles/HYMLS.dir/all] Error 2
make: *** [all] Error 2

I guess this is because these things(like _PyArg_UnpackTuple) have not been compiled.I have solved a similar problem by using this conjecture, but I don't how to fix this.

I have installed SWIG on my computer.

/usr/local/Cellar/swig/4.0.2/bin/swig
/usr/local/Cellar/swig/4.0.2/share/swig

Could anyone help me with this?

Weiqiang Guo
  • 13
  • 1
  • 4

0 Answers0