Articles of gcc

Как переключиться между gcc и clang в Android NDK Revision 11?

Я использую Android studio 1.5.1 с NDK Revision 11, который объявил, что GCC в NDK теперь устарел в пользу Clang. Мне нужно переключаться между clang и gcc и настраивать флаги. Однако конфигурация приложения и метод использования Android.mk и Application.mk для переключения между ними, похоже, меняются!

Gcc disable -Wall флаг для определенных файлов / папок

В моем проекте есть файлы с открытым исходным кодом (например: http://nothings.org/stb_vorbis/stb_vorbis.c ). Опция -Wall включена в моем файле Android.mk. Во время компиляции в stb_vorbis.c генерируется несколько предупреждений. warning: unused variable <var> warning: statement with no effect warning: <var> defined but not used warning: <var> may be used uninitialized in this function По какой-то причине я […]

OpenSSL скомпилирован для запуска на архитектуре Android x86

Я стукнулся головой о стену: я получил opensl, чтобы скомпилировать все для архитектуры андроидской армейской архитектуры, но для x86 гораздо меньше помощи, и ничего на ней я не могу найти на сайте openSSL. Что-то, что я в конце концов нашел, было статьей intel ( https://software.intel.com/en-us/articles/using-intel-advanced-encryption-standard-new-instructions-on-android#openssl ) при использовании openssl для x86 Архитектуры, а после создания […]

Ошибка, связанная с libgcc.a при кросс-компиляции для Android, но существуют символы?

Я пытаюсь перекрестно скомпилировать очень простую программу для Android, которая работала с android-ndk-r6b и ранее, но не работает на android-ndk-r7 и новее: int main() { ; return 0; } Я смог сделать это, используя сценарий «agcc» на более старой версии Android, который можно найти здесь . Я искренне не пытаюсь использовать файл Android.mk для его […]

GCC думает, что я запускаю x86

Я пытаюсь скомпилировать Cyanogenmod на Linux Mint 15. И получить следующую ошибку. host StaticLib: libmincrypt (/home/benji/Source/out/host/linux-x86/obj/STATIC_LIBRARIES/libmincrypt_intermediates/libmincrypt.a) ERROR: prebuilts/tools/gcc-sdk/../../gcc/linux-x86/host/x86_64-linux-glibc2.7-4.6/bin/x86_64-linux-ar only run on 64-bit linux make: *** [/home/benji/Source/out/host/linux-x86/obj/STATIC_LIBRARIES/libmincrypt_intermediates/libmincrypt.a] Error 1 make: *** Waiting for unfinished jobs…. # In case value of PACKAGES is empty. – benji@ultranoid ~/Source/prebuilts/tools/gcc-sdk $ ./gcc ERROR: ./../../gcc/linux-x86/host/x86_64-linux-glibc2.7-4.6/bin/x86_64-linux-gcc only run on 64-bit linux Я […]

GCC: Простой тест наследования не работает

Я создаю 2D-движок с открытым исходным кодом под названием YoghurtGum. Сейчас я работаю над портом Android, используя NDK от Google. Я сошел с ума из-за ошибок, которые я получал в своем приложении, поэтому я сделал простую тестовую программу: class Base { public: Base() { } virtual ~Base() { } }; // class Base class Vehicle […]

Создание Android NDK Toolchain для x86 Android на Windows через Cygwin

Android SDK включает Android NDK, который, в свою очередь, содержит настраиваемую цепочку инструментов для ПК на платформе ARM для Android; Вопрос заключается в том, как создать цепочку инструментов NDK для работы в Windows для целевого x86 Android? Цепь инструментов уже настроена для создания на базе Windows (cygwin) таргетинга на ARM; Существуют также готовые (неофициальные) NDK […]

Профилирование на Android с опцией pg

Я использую последнюю версию NDK android-ndk-r8b У меня есть некоторые файлы, которые были созданы с помощью Android-компилятора из NDK. i686-android-linux-gcc И теперь я хочу профилировать эти файлы. Я попытался перестроить его с опцией -pg , но я получил ошибку: /tmp/ccixJFcx.o: In function `main': test1.C:(.text+0x17): undefined reference to `mcount' collect2: ld returned 1 exit status Я […]

Поддерживает ли Android поток?

Поддерживает ли Android pthreads? И почему, когда я использую опцию -pthread, я вижу ошибку компоновщика: I686-android-linux / bin / ld: не удается найти -lpthread #include <pthread.h> #include <cxxabi.h> extern "C" int printf (const char *, …); int main() { try { pthread_exit (0); } catch (abi::__forced_unwind &) { printf ("caught forced unwind\n"); throw; } catch […]

Предупреждение ARM: использование swp {b} устарело для этой архитектуры

При компиляции некоторых файлов cpp для моего проекта я получаю предупреждения вроде этого Compile++ arm : MYAPP <= myfile.cpp /tmp/cc53K5MQ.s: Assembler messages: /tmp/cc53K5MQ.s:887: Warning: swp{b} use is deprecated for this architecture Однако в этом предупреждении нет номера строк, поэтому я не знаю, на что смотреть. У вас есть идея, почему я получаю это предупреждение?