15 июля 2012

Lazarus + ZenGL = *.apk

  В названии поста, конечно не все компоненты описаны. К этому плюсуется ещё Android SDK + NDK. Но вернёмся к теме.
 В этом посте попробую объяснить, как при помощи Lazarus'a из под Windows попутно используя Eclipse получить apk приложение. Забыл упомянуть ещё один немаловажный компонент - ZenGL, графический 2D-движок от Andru. В итоге статья выльется в сообщение на тему "сборка android демок из ZenGL".

 Для начала ссылки:


 Будем считать, что вы всё же сумели Android SDK прикрутить к Eclips'у. Просто, в сети статей на эту тему полно и не вижу смысла повторяться. 

 Устанавливаем Lazarus. Распаковываем ppcrossarm в C:\lazarus\fpc\2.6.0. 
 Примечание:
    в настройках проекта(Проект-Инспектор Проекта-Другие) может понадобится указатьпрямые            пути:
     -FDD:\lazarus\android-ndk-r8\toolchains\arm-linux-androideabi-4.4.3\prebuilt\windows\bin
     -FuD:\lazarus\android-ndk-r8\platforms\android-14\arch-arm\usr\lib
     -FLD:\lazarus\android-ndk-r8\platforms\android-14\arch-arm\usr\lib\libdl.so

   В моём случае пришлось вытворять такое. Может-быть дела лишь в кривизне моих рук.

Остаётся лишь собрать. Если при настройке нигде не ошиблись то в папке libs получаем дополнительную *.so либу нашего проекта.

 Следующим шагом будет импорт проекта в Eclipse. Создаём новый android проект. Делаем как на скриншоте. Скрин найден в инете, так как в данныймомент нет возможности запустить эклипс у себя.

 В итоге нам следует лишь запустить проект. 

 Читателям прошу указать в комментариях моменты которые следовало бы раскрыть подробнее. В случае вопрос, статью буду дорабатывать, "обогащать" скриншотами.

6 комментариев:

  1. М-да, как все же тяжко прогить под мобильные платформы... Впрочем, кроссплатформ, наверное, всегда таков. Я пока не заморачивался с этим, но, думаю, для расширения кругозора поставлю как-нибудь что-нибудь юникосподобное и попробую скомпилить win/linux-приложение

    ОтветитьУдалить
  2. Ну единственно что я пока встречал из семейства pascal, что используется без костылей для конечного пользователя - MidletPascal. Но на нём получиться кодить лишь для фана. Ну а эклипсу прикрутить Андроид СДК не так уж трудно. Но тут уже следует яву учить)

    ОтветитьУдалить
  3. ух ты! ZenGl! Круто! Скомпилилось? Работает? Очень интересно! Рассказывай все, что получилось! А то в статье-то ни слова про этот граф. двиг!

    ОтветитьУдалить
    Ответы
    1. Да, всё скомпилилось без труда)) хотя при компиляция с *.so либы из-за незнания лазаря пришлось повозиться)) проверял в эмуляторе, работает без нареканий. Андроид-устройства под рукой не имеется, поэтому на реальных устройствах ещё не тестил.

      Про движок: к ZenGL присматриваюсь уже давно, но ничего на нём так и не начинал делать. После ведения поддержки андроида стал для меня ещё более лакомым куском)

      Удалить
  4. а для чего в настройках проекта нужно указывать прямые пути? и к чему ведут эти пути?

    ОтветитьУдалить