Я кросс-скомпилировал ARMNN для моего устройства ARM Cortex-A9 (Debian 9) на моей хост-системе x86_64 (Ubuntu 18.04).
Я успешно построил ARMNN и все его зависимости без каких-либо ошибок, но когда я пытаюсь запустить пример mnist на Cortex-A9, он выдает следующую ошибку:
duu@34d456-45433g:~/ML-examples/armnn-mnist$ make test
arm-linux-gnueabihf-g++ -O3 -std=c++14 -I/home/duu/armnn/armnn/include mnist_caffe.cpp -o mnist_caffe -L/home/duu/build -larmnn -larmnnCaffeParser
/home/admin/build/libarmnn.so: undefined reference to `exp2f@GLIBC_2.27'
/home/admin/build/libarmnn.so: undefined reference to `logf@GLIBC_2.27'
/home/admin/build/libarmnn.so: undefined reference to `log2f@GLIBC_2.27'
/home/admin/build/libarmnn.so: undefined reference to `powf@GLIBC_2.27'
/home/admin/build/libarmnn.so: undefined reference to `expf@GLIBC_2.27'
collect2: error: ld returned 1 exit status
Makefile:12: recipe for target 'mnist_caffe' failed
make: *** [mnist_caffe] Error 1
Позже я понял, что устройство должно иметь тот же компилятор и тот же пакет GLIB C, оба с те же версии, что и на хосте, на котором была скомпилирована библиотека.
Я скомпилировал ARMNN, используя g cc -6.4.0 и glib c -2.27 на хосте, и у меня есть g cc -6.3. 0 и glib c -2.24 на устройстве Cortex-A9.
Мне удалось сопоставить версии G CC и устранить ошибку компилятора, но я не могу найти совпадающие версии GLIB C на Ubuntu 18.04 и debian 9.
Есть ли способ установить версию GLIB C на любую из систем, которая является общей для обеих систем?
PS: Любой другой способ решения этот вопрос высоко ценится.