This project has been on hold since 2016
All the data on this site is still available (and will stay available) but not up-to-date anymore
You might like to check Dmitry Moskalchuk's portfolio for his other projects
ВНИМАНИЕ!!! Вы находитесь на странице устаревшего выпуска 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

Наши авторы: