Я уже несколько дней пытаюсь перекомпилировать устаревший LeapMotion SDK для Python3, начиная с этого учебника .
Я пробовал:
- перекомпиляция с разными версиями python3
- с использованием предварительно скомпилированного Leap Python., Как указано в руководстве
- , очищение inte rnet от существующего Leap Python .so скомпилирован для любой версии python3 для загрузки или любой информации / решения, относящегося к этой ошибке
- клонирование каждого инструмента на github, который обещает перекомпилировать Leap Python для Python3 на Ma c
И я ничего нигде не могу найти, кажется, люди могли это делать какое-то время, но нет информации о том, почему это не работает или как это сделать сегодня?
Может ли кто-нибудь помочь мне исправить или найти обходной путь для sh этого? Я не могу использовать Python версию <3, потому что зависимости моего проекта требуют Python3, желательно самая стабильная версия. </p>
Я нас ing swig 3.0.12, clang 11.0.3 на x86_64-apple-darwin19.4.0
Это ошибка, которую я получаю на последнем шаге:
$ clang++ -arch i386 -arch x86_64 -I/Library/Frameworks/Python.framework/Versions/3.6/include/python3.6m LeapPython.cpp libLeap.dylib /Library/Frameworks/Python.framework/Versions/3.6/lib/
libpython3.6.dylib -shared -o LeapPython.so
LeapPython.cpp:6846:7: error: unknown type name 'leap_list_helper'
leap_list_helper * temp;
^
LeapPython.cpp:6847:33: error: unknown type name 'leap_list_helper'
temp = reinterpret_cast< leap_list_helper * >(argp);
^
LeapPython.cpp:6848:7: error: use of undeclared identifier 'Pointable'
Pointable = *temp;
^
LeapPython.cpp:6861:47: error: use of undeclared identifier 'Pointable'
pyobj = SWIG_NewPointerObj(SWIG_as_voidptr(&Pointable), SWIGTYPE_p_leap_list_helper, 0 );
^
LeapPython.cpp:6876:7: error: unknown type name 'leap_list_helper'
leap_list_helper * temp;
^
LeapPython.cpp:6877:33: error: unknown type name 'leap_list_helper'
temp = reinterpret_cast< leap_list_helper * >(argp);
^
LeapPython.cpp:6878:7: error: use of undeclared identifier 'Finger'
Finger = *temp;
^
LeapPython.cpp:6891:47: error: use of undeclared identifier 'Finger'
pyobj = SWIG_NewPointerObj(SWIG_as_voidptr(&Finger), SWIGTYPE_p_leap_list_helper, 0 );
^
LeapPython.cpp:6906:7: error: unknown type name 'leap_list_helper'
leap_list_helper * temp;
^
LeapPython.cpp:6907:33: error: unknown type name 'leap_list_helper'
temp = reinterpret_cast< leap_list_helper * >(argp);
^
LeapPython.cpp:6908:7: error: use of undeclared identifier 'Tool'
Tool = *temp;
^
LeapPython.cpp:6921:47: error: use of undeclared identifier 'Tool'
pyobj = SWIG_NewPointerObj(SWIG_as_voidptr(&Tool), SWIGTYPE_p_leap_list_helper, 0 );
^
LeapPython.cpp:6936:7: error: unknown type name 'leap_list_helper'
leap_list_helper * temp;
^
LeapPython.cpp:6937:33: error: unknown type name 'leap_list_helper'
temp = reinterpret_cast< leap_list_helper * >(argp);
^
LeapPython.cpp:6938:7: error: use of undeclared identifier 'Gesture'
Gesture = *temp;
^
LeapPython.cpp:6951:47: error: use of undeclared identifier 'Gesture'
pyobj = SWIG_NewPointerObj(SWIG_as_voidptr(&Gesture), SWIGTYPE_p_leap_list_helper, 0 );
^
LeapPython.cpp:6966:7: error: unknown type name 'leap_list_helper'
leap_list_helper * temp;
^
LeapPython.cpp:6967:33: error: unknown type name 'leap_list_helper'
temp = reinterpret_cast< leap_list_helper * >(argp);
^
LeapPython.cpp:6968:7: error: use of undeclared identifier 'Image'
Image = *temp;
^
fatal error: too many errors emitted, stopping now [-ferror-limit=]
20 errors generated.
I Не понимаю, почему я получаю такие ошибки типа. Leap Python. cpp успешно сгенерирован командой swig -c++ -python -o LeapPython.cpp -interface LeapPython Leap.i
и, похоже, не вызывает проблем у других, кто пытался это сделать в прошлом.