ВНИМАНИЕ!!! Вы находитесь на странице устаревшего выпуска CrystaX NDK.
Новый CrystaX NDK 10.3.2 доступен для скачивания, предлагая многочисленные исправления и улучшения; скорее всего, вам стоило бы попробовать новую версию вместо устаревшей.

Описание

Здесь выложены дистрибутивы Android NDK 1.6_r1, пересобранные мной из официальных исходников. Добавлена поддержка C++ exceptions, RTTI и Standard C++ Library (в частности, STL). Изменения вносились только в сборочные скрипты и настроечные включаемые файлы.

Лицензия

Содержимое CrystaX NDK покрывается различными open-source лицензиями. Более детально можно узнать, заглянув в каждый интересующий файл и прочитав copyright disclaimer.

Обратите внимание, что CrystaX NDK дистрибутивы также содержат уже собранные двоичные файлы - компилятор, линкер и т.д. Их исходные коды доступны на GitHub-е (вы можете использовать сборочный скрипт, чтобы скачать их автоматически).

GCC и сопутствующие инструменты (GDB, binutils и т.д.) покрываются либо GNU General Public License (GPL), либо GNU Lesser General Public License (LGPL). Вы можете найти более детальную информацию о них в файлах COPYING и COPYING.LIB, находящихся в каталогах $NDK/toolchains/$tc/prebuilt/$system.

Набор инструментов LLVM/Clang покрывается LLVM "BSD" лицензией.

По существу, правила лицензирования такие же, как у Android NDK от Google - т.е. разрешается любое использование, как коммерческое, так и некоммерческое. Единственное добавление к этим правилам - это CrystaX-специфичный код, который покрывается разрешительной 'BSD 2-clause' лицензией.

Скачать

Файл Размер SHA256
android-ndk-r2-windows-crystax-1.zip 110.442 MB 030fc7f644b3bc4...2f29bf165ea352
android-ndk-r2-darwin-x86-crystax-1.tar.bz2 90.833 MB 389bbfb6ecdb813...ca4e5611d8a40a
android-ndk-r2-linux-x86-crystax-1.tar.bz2 88.356 MB 190c1a9cb424b5a...ef3eeea7d7dbff

Инструкции по сборке

Вы также можете собрать дистрибутив самостоятельно, если вас не устраивают по каким-либо причинам те версии, что собрал я. Для этого следуйте инструкциям ниже.

Необходимое ПО:

  • Для Windows, последняя версия Cygwin
  • GNU Make 3.81 или выше
  • GNU Makeinfo (наиболее свежая версия)
  • GIT (для скачивания исходников android toolchain)
  • Наиболее свежая версия GNU Libtool (automake, autoconf и т.д.)
  • GNU C/C++ 3.x или выше (для Windows, это должна быть именно 3.x, не 4.x)
  • Библиотека ncurses (в случае Cygwin это должен быть пакет ncurses-devel)
  • GNU flex (наиболее свежая версия)
  • Утилита patch. Скорее всего она уже установлена если вы используете Linux или Mac OS X; в Cygwin она должна быть установлена отдельно

Инструкции

  • Скачайте мой патч и сохраните его где-нибудь
  • Скачайте android-ndk-1.6_r1 для вашей платформы с официального сайта
  • Распакуйте полученный архив и перейдите в каталог android-ndk-1.6_r1
  • Примените мой патч:
    patch -p1 <path-to-my-patch
  • Установите переменную окружения ANDROID_NDK_ROOT так, чтобы она указывала на текущий каталог:
    export ANDROID_NDK_ROOT=`pwd`
  • Для Windows, установите переменную окружения CC так, чтобы она указывала на GCC 3:
    export CC=gcc-3
  • Запустите команду сборки:
    ./build/tools/build-toolchain.sh
    Эта команда скачает исходники android toolchain (включая binutils, gcc и gdb), пропатчит их и запустит компиляцию. Это может занять довольно много времени в зависимости от вашей конфигурации, поэтому будьте терпеливы.
  • Теперь вы можете попробовать протестировать вашу сборку. Соберите приложение hello-jni по стандартной инструкции (я модифицировал его так, что теперь там используется STL и исключения) и запустите на эмуляторе/устройстве
  • Наслаждайтесь!

Back
Home
Map
Back
Home
Map

Наши авторы: