Во-первых, заблаговременно за то, что вы хотя бы прочитали этот вопрос.
Во-вторых, не стесняйтесь называть меня идиотом, если это не "разумно",
Теперь о проблемах...
Я запускаю Ubuntu 16.04 (64 бит) с QT Creator в качестве моей IDE, и в целом он отлично работает. Я могу перекрестно скомпилировать Raspberry Pi3 (запуск raspbian), а также скомпилировать плагины для X-Plane.
Все было здорово, пока мне не понадобилось реализовать MySql в моем проекте. Это когда все пошло на юг.
Я не могу использовать библиотеку Qt для этого, поскольку X-Plane не любит ничего Qt, связанного в своих плагинах. Но это нормально, у меня есть коннектор-С++, работающий на этой машине, и он подключается к моему серверу MySql и делает все, что он должен.
Я думаю, что я прочитал почти каждый форум и смотрел каждое видео на YouTube, но не могу заставить Qt Creator скомпилировать с коннектором для малины pi.
Я написал/скомпилировал тестовое приложение локально (с g++) на pi, и он отлично работает. Однако почему-то (возможно, правительственный заговор?) Он отказывается связывать библиотеки при компиляции под Qt Creator.
Ошибка, которую я получаю при компиляции в QtCreator: undefined ссылка на 'get_driver_instance'
В настоящее время я выполнил инструкции по созданию кросс-компилятора здесь: https://wiki.qt.io/RaspberryPi2EGLFS
Загрузите код разъема отсюда: git clone https://github.com/mysql/mysql-connector-cpp
Я выполнил инструкции для компиляции коннектора-С++ здесь: https://dev.mysql.com/doc/connector-cpp/en/connector-cpp-installation-source-unix.html
И я ударил голову 1000х на кирпичную стену здесь: (картина с окровавленной кровью стены недоступна)
Кроме того, я попытался скомпилировать коннектор на моем компьютере Ubuntu с путями к pi sysroot и т.д., Но я думаю, что он сделал 64-битную версию, которая заставляет Qt Creator иметь фиктивную косу "непризнанный формат".
Я надеюсь, что это просто у меня "старший момент", и кто-то может указать мне в правильном направлении.
Чтобы сохранить ненужные журналы/код, я буду ждать, пока кто-то его попросит, а затем скопируйте/вставьте то, что им нужно.
Опять же, спасибо заранее и знаю, что я буду бесконечно благодарен за любой свет по этому поводу (желательно, прежде чем я пойду даже безумец)
Хорошо после 2 недель боли, я решил эту проблему. Вот что я считаю проблемой:
Во-первых, я обнаружил, что mysqlcppconn не нужен (по крайней мере для меня) и использовал библиотеки mysql в /usr/lib
Во-вторых, символические ссылки на libmysqlclient.so.6.0.22 были по умолчанию: libmysqlclient.so.6 → libmysqlclient.so.6.0.22
Компилятор искал libmysqlclient.so, которого не было. Поэтому я создал ссылку (libmysqlclient.so → libmysqlclient.so.6), и она сработала!
Спасибо всем, кто помог.