ilya.guzikov
ilya.guzikov7 июля 2019 г. 7:23

Qt, Android, при сборке выдаёт ошибку can not find -lc++

Сделал сборку для андроида.
Версия SDK: 26.1.1, Версия NDK: 20.0.5594570
JDK версия 8

получаю 2 ошибки при сборке:
error: cannot find -lc++
error: linker command failed with exit code 1 (use -v to see invocation)
Подскажите пожалуйста, в чём может быть ошибка.

Рекомендуем хостинг TIMEWEB
Рекомендуем хостинг TIMEWEB
Стабильный хостинг, на котором располагается социальная сеть EVILEG. Для проектов на Django рекомендуем VDS хостинг.

Вам это нравится? Поделитесь в социальных сетях!

27
Evgenii Legotckoi
  • 7 июля 2019 г. 8:30

Операционная система Linux? Компилятор установили?

sudo apt install gcc g++
    ilya.guzikov
    • 7 июля 2019 г. 9:02

    операционная система windows
    все проекты для windows собираются и работают без проблем

      ilya.guzikov
      • 7 июля 2019 г. 9:03

      вот консоль сборки

      D:\Work\QtAndroid\android-ndk-r20/toolchains/arm-linux-androideabi-4.9/prebuilt/windows-x86_64/lib/gcc/arm-linux-androideabi/4.9.x/../../../../arm-linux-androideabi/bin\ld: error: cannot find -lc++
      clang++: error: linker command failed with exit code 1 (use -v to see invocation)
      make: *** [libANDROID1.so] Error 1
      16:02:55: Процесс «D:\Work\QtAndroid\android-ndk-r20\prebuilt\windows-x86_64\bin\make.exe» завершился с кодом 2.
      Ошибка при сборке/установке проекта ANDROID1 (комплект: Android для armeabi-v7a (Clang Qt 5.12.0 for Android ARMv7))

        BlinCT
        • 7 июля 2019 г. 14:49

        Воспользуйтесь линуксом) там проще все решается

          Evgenii Legotckoi
          • 8 июля 2019 г. 2:53

          А что с комплектами для Андроид в Maitenance Tool, там всё нормально установилось? И почему-то у вас просит clang++, не может быть так, что у вас комплект разработки для clang? А самого clang нет на ПК?

            ilya.guzikov
            • 8 июля 2019 г. 4:24

            весь комплект для андроида устанавливал через android studio т.к. через Qt Creator устанавливает не корректно.
            может, какой-то копонент при установке Qt Creator необходимо доустановить.
            BlinCT хочется именно на windows, основная операционка.

              Evgenii Legotckoi
              • 8 июля 2019 г. 4:30

              Я имел ввиду комплекты сборки с библиотеками Qt, которые устанавливаются через Maintenance Tools. Они также должны быть установлены помимо SDK и NDK, которые вы уже установили. Без них не получится собрать проект под Андроид.

              Вот здесь установлены эти пакеты?

                ilya.guzikov
                • 8 июля 2019 г. 5:22

                да, всё установлено

                  Evgenii Legotckoi
                  • 8 июля 2019 г. 6:05

                  А что в Tool -> Options -> Kit?

                  Как там обстоит ситуация с настройкой компиляторов?

                    ilya.guzikov
                    • 8 июля 2019 г. 6:18
                    • (ред.)

                    вроде всё настроено

                      Алексей Внуков
                      • 8 июля 2019 г. 7:46

                      собственно, обновилась андроид студия и такая же ситуация. до обновления было норм

                        BlinCT
                        • 8 июля 2019 г. 8:05

                        Зачем вам эта студия? Есть же более лучшие варианты, IntelliJ IDEA вот это отличный выбор по сравнению с убогой если честно Android Studio.

                          Evgenii Legotckoi
                          • 8 июля 2019 г. 8:07
                          • (ред.)

                          А ничего, что IntelliJ IDEA и Android Studio - это одно и тоже? Просто Android Studio - это специализированный форк IntelliJ IDEA?

                          Открой JetBrains Toolbox и посмотри, что там же предлагается к установке и Android Studio

                            BlinCT
                            • 8 июля 2019 г. 8:13

                            То что форк это понятно, но он на столько плох.
                            Кароче "такого при Сталине не было". Таких проблем там не возникало никогда.

                              Evgenii Legotckoi
                              • 8 июля 2019 г. 8:20

                              Интересный вопрос, специализированный инструмент, который официально поддерживается Google Company хуже базового инcтрументария, который в Intellij Idea Community Edition является урезанным по умолчанию и нужно по хорошему покупать Proffesional Edition, что априори глупо, поскольку Android Studio является бесплатным продуктом, в отличии от первого.

                              И при том, что в данной проблеме, которая описывается в топике, очевидно проскальзывает баг со стороны Qt Creator, а ведь они постоянно лажают с выпусками и через выпуск в Qt Creator всегда крашится поддержка Android.

                              А вот это вообще не аргумент -> Кароче "такого при Сталине не было".

                                BlinCT
                                • 8 июля 2019 г. 8:22

                                Ну само собою я подразумевал не Community Edition а Proffesional Edition.
                                Она полноценная.

                                  Алексей Внуков
                                  • 8 июля 2019 г. 8:22

                                  на баг репорте ( тут ) нашел временное решение (обход), пока не появится исправление в версиях 5.12.5 / 5.13.1. нужно в про добавить

                                  android {
                                      QMAKE_LFLAGS += -nostdlib++
                                  }
                                  
                                    ilya.guzikov
                                    • 8 июля 2019 г. 8:54

                                    Алексей ваш совет помог, сборка продвинулась дальше, однако qt не видит внешнее устройство, а эмулятор грузится минут 30.
                                    получаю вот такое сообщение при сборке
                                    BUILD FAILED in 10s
                                    3 actionable tasks: 1 executed, 2 up-to-date
                                    Building the android package failed!
                                    -- For more information, run this command with --verbose.
                                    15:52:50: Процесс «C:\Qt\5.12.0\android_armv7\bin\androiddeployqt.exe» завершился с кодом 14.
                                    Ошибка при сборке/установке проекта ANDROID1 (комплект: Android для armeabi-v7a (Clang Qt 5.12.0 for Android ARMv7))
                                    Во время выполнения этапа «Сборка Android APK»

                                      Алексей Внуков
                                      • 8 июля 2019 г. 8:59
                                      • (ред.)

                                      ну у меня как раз все на оборот, на телефон сборка идет а эмулятор не видет

                                      как вариант могу предложить поставить более старую версию андроид студии и не обновлятье ее, может помочь

                                        ilya.guzikov
                                        • 8 июля 2019 г. 9:25

                                        Алексей, вы работаете под Windows?

                                          Алексей Внуков
                                          • 8 июля 2019 г. 10:19

                                          да

                                            ilya.guzikov
                                            • 8 июля 2019 г. 10:29

                                            сейчас видит внешнее устройство, но так же не собирается, ошибка та же

                                              ilya.guzikov
                                              • 9 июля 2019 г. 15:34

                                              Добавил вставку из баг репорта
                                              android {
                                              QMAKE_LFLAGS += -nostdlib++
                                              }

                                              ошибка пропала, но проект не собирается, в консоле сборки выводит

                                              BUILD FAILED in 48s
                                              3 actionable tasks: 1 executed, 2 up-to-date
                                              Building the android package failed!
                                              -- For more information, run this command with --verbose.
                                              19:29:42: Процесс «C:\Qt\5.12.0\android_armv7\bin\androiddeployqt.exe» завершился с кодом 14.
                                              Ошибка при сборке/установке проекта ANDROID1 (комплект: Android для armeabi-v7a (Clang Qt 5.12.0 for Android ARMv7))
                                              Во время выполнения этапа «Сборка Android APK»

                                              может ещё есть предложения, на линуксе qt вообще никакие комплекты не собирает

                                                Алексей Внуков
                                                • 11 июля 2019 г. 5:44

                                                спустя несколько попыток эксперементов, теперь во время сборки вываливает сообщение "Прекращена работа программы aidl.exe". переустановка всей андроид студии не помогает, копировал папку Android, с машины где все работает - результат тот же.

                                                  ilya.guzikov
                                                  • 11 июля 2019 г. 11:19

                                                  У меня результат следующий. На Windows ничего не заработало. Установид Linux поставил qt, sdk, jdk, ndk и такая же ошибка вылезла, которая описана в теме обсуждения.
                                                  Воспользовался советом Aleksej Vnukov и в pro file добавил вставку:
                                                  android {
                                                  QMAKE_LFLAGS += -nostdlib++
                                                  }

                                                  после этого ошибки пропали, но проект не собирался.
                                                  затем в sdk manager удалил образ ARM EABI v7a System Image
                                                  и проект собрался

                                                    АД
                                                    • 27 октября 2019 г. 12:21
                                                    • (ред.)

                                                    Проблема из-за NDK 20.x решена здесь https://codereview.qt-project.org/c/qt/qtbase/+/264903/9/mkspecs/android-clang/qmake.conf#34
                                                    Сейчас обновился на NDK 21. Появилась еще одна проблема. Пока не решил. Не обновляйтесь на NDK 21!!! теперь вот не знаю, как откатиться на ndk 20...

                                                      H
                                                      • 23 ноября 2019 г. 20:09

                                                      Откатывать ничего не нужно. Я делал так: скачивал нужную версию NDK, распоковывал её и в QtCreator указывал к ней путь. У меня так работает.

                                                        Комментарии

                                                        Только авторизованные пользователи могут публиковать комментарии.
                                                        Пожалуйста, авторизуйтесь или зарегистрируйтесь
                                                        e
                                                        • ehot
                                                        • 31 марта 2024 г. 21:29

                                                        C++ - Тест 003. Условия и циклы

                                                        • Результат:78баллов,
                                                        • Очки рейтинга2
                                                        B

                                                        C++ - Тест 002. Константы

                                                        • Результат:16баллов,
                                                        • Очки рейтинга-10
                                                        B

                                                        C++ - Тест 001. Первая программа и типы данных

                                                        • Результат:46баллов,
                                                        • Очки рейтинга-6
                                                        Последние комментарии
                                                        k
                                                        kmssr9 февраля 2024 г. 2:43
                                                        Qt Linux - Урок 001. Автозапуск Qt приложения под Linux как сделать автозапуск для флэтпака, который не даёт создавать файлы в ~/.config - вот это вопрос ))
                                                        АК
                                                        Анатолий Кононенко5 февраля 2024 г. 9:50
                                                        Qt WinAPI - Урок 007. Работаем с ICMP Ping в Qt Без строки #include <QRegularExpressionValidator> в заголовочном файле не работает валидатор.
                                                        EVA
                                                        EVA25 декабря 2023 г. 18:30
                                                        Boost - статическая линковка в CMake проекте под Windows Ошибка LNK1104 часто возникает, когда компоновщик не может найти или открыть файл библиотеки. В вашем случае, это файл libboost_locale-vc142-mt-gd-x64-1_74.lib из библиотеки Boost для C+…
                                                        J
                                                        JonnyJo25 декабря 2023 г. 16:38
                                                        Boost - статическая линковка в CMake проекте под Windows Сделал всё по-как у вас, но выдаёт ошибку [build] LINK : fatal error LNK1104: не удается открыть файл "libboost_locale-vc142-mt-gd-x64-1_74.lib" Хоть убей, не могу понять в чём дел…
                                                        G
                                                        Gvozdik19 декабря 2023 г. 5:01
                                                        Qt/C++ - Урок 056. Подключение библиотеки Boost в Qt для компиляторов MinGW и MSVC Для решения твой проблемы добавь в файл .pro строчку "LIBS += -lws2_32" она решит проблему , лично мне помогло.
                                                        Сейчас обсуждают на форуме
                                                        a
                                                        a_vlasov14 апреля 2024 г. 13:41
                                                        Мобильное приложение на C++Qt и бэкенд к нему на Django Rest Framework Евгений, добрый день! Такой вопрос. Верно ли следующее утверждение: Любое Android-приложение, написанное на Java/Kotlin чисто теоретически (пусть и с большими трудностями) можно написать и на C+…
                                                        Павел Дорофеев
                                                        Павел Дорофеев14 апреля 2024 г. 9:35
                                                        QTableWidget с 2 заголовками Вот тут есть кастомный QTableView с многорядностью проект поддерживается, обращайтесь
                                                        f
                                                        fastrex4 апреля 2024 г. 11:47
                                                        Вернуть старое поведение QComboBox, не менять индекс при resetModel Добрый день! У нас много проектов в которых используется QComboBox, в версии 5.5.1, когда модель испускает сигнал resetModel, currentIndex не менялся. В версии 5.15 при resetModel происходит try…
                                                        P
                                                        Pisych27 февраля 2023 г. 12:04
                                                        Как получить в массив значения из связанной модели? Спасибо, разобрался:))
                                                        AC
                                                        Alexandru Codreanu19 января 2024 г. 19:57
                                                        QML Обнулить значения SpinBox Доброго времени суток, не могу разобраться с обнулением значение SpinBox находящего в делегате. import QtQuickimport QtQuick.ControlsWindow { width: 640 height: 480 visible: tr…

                                                        Следите за нами в социальных сетях