FPC + Android

Вопросы программирования на Free Pascal, использования компилятора и утилит.

Модератор: Модераторы

FPC + Android

Сообщение VirtUX » 26.03.2013 17:30:04

Есть-ли у кого опыт компиляции под Android с помощью FPC? Поделитесь впечатлениями. Под какой ОС компилили? Если можно, то пошагово распишите установку SDK, NDK и ANT. Тут, тут и тут быыыль, архивы качаааааль, установить не получился :(
Имеется всегда под рукой LinuxMint 14 и Windows 8. Хотелось бы настроить кросс-компиляцию под ними.
Спасибо!
Аватара пользователя
VirtUX
энтузиаст
 
Сообщения: 878
Зарегистрирован: 05.02.2008 10:52:19
Откуда: Крым, Алушта

Re: FPC + Android

Сообщение NTFS » 26.03.2013 17:39:29

Вести разработку под Android на чем-либо, кроме Java (или C++, для критичных системных приложений) - так же удобно и правильно, как спать на потолке. В принципе, при помощи хитрой системы подвесок и перекладин, можно достичь и того, и другого - только зачем?
NTFS
постоялец
 
Сообщения: 388
Зарегистрирован: 05.11.2007 14:57:50
Откуда: Краснодар

Re: FPC + Android

Сообщение VirtUX » 26.03.2013 17:59:43

NTFS писал(а):зачем?

есть написанный код. Я компилю его под Windows и Linux. Все работает отлично. Теперь появилась надобность этот же код скомпилить под Android и iOS. С iOS пока время терпит. С Android нет. Переписывать код на Java или C++ ни времени, ни желания нет. Да и смысл, если FPC позволяет компилить кросс-платформенно?
Аватара пользователя
VirtUX
энтузиаст
 
Сообщения: 878
Зарегистрирован: 05.02.2008 10:52:19
Откуда: Крым, Алушта

Re: FPC + Android

Сообщение absdjfh » 26.03.2013 19:47:40

VirtUX писал(а):Я компилю его под Windows и Linux. Все работает отлично. Теперь появилась надобность этот же код скомпилить под Android и iOS.

А разве нет различий между мобильными и стационарными платформами? В смысле, не принципиальных, а особенностей использования, связанных с переходом на сенсорное управление. Не слишком ли много оптимизаций? Или вы пишете "под себя"?
absdjfh
новенький
 
Сообщения: 60
Зарегистрирован: 21.01.2012 13:59:00

Re: FPC + Android

Сообщение STAKANOV » 26.03.2013 19:58:36

я пробовал из windows 7, все делал по инструкциям из вики, использовал готовый кросскомпилятор версии 2.5.1, там же ссылки есть где качать, пример скомпилировал, установил, но запускаться он отказался, пока забил на это дело. Но тема интересная и перспективная, скоро поддержка андройда в fpc появится (прям "-Tandroid" будет) , сейчас она в разработке

opengl не пробовал

Добавлено спустя 7 минут 58 секунд:
NTFS писал(а):Вести разработку под Android на чем-либо, кроме Java (или C++, для критичных системных приложений) - так же удобно и правильно, как спать на потолке. В принципе, при помощи хитрой системы подвесок и перекладин, можно достичь и того, и другого - только зачем?

если fpc на выходе будет выдавать байткод для dalvik, то нет разницы (если конечно не задаваться вопросом какой язык лучше ;-) )
Аватара пользователя
STAKANOV
энтузиаст
 
Сообщения: 1069
Зарегистрирован: 14.05.2006 21:26:24
Откуда: Зеленоград

Re: FPC + Android

Сообщение NTFS » 26.03.2013 22:18:55

Тут видите какое дело. В отличие от Linux, которая абсолютно открытая, и Windows, которая хорошо документирована, разработчики Android сделали все, чтобы писать можно было нормально только на Яве. Нужно использовать наиболее целевые средства разработки. Время, затраченное на изучение языка и пакетов, потом окупится. А исправлять по три косяка за раз при использовании хитрых поделок - наоборот, будет сжирать время и деньги.

Не советую, короче.
NTFS
постоялец
 
Сообщения: 388
Зарегистрирован: 05.11.2007 14:57:50
Откуда: Краснодар

Re: FPC + Android

Сообщение STAKANOV » 26.03.2013 23:48:52

NTFS писал(а):разработчики Android сделали все, чтобы писать можно было нормально только на Яве

Они просто взяли линукс, урезали его немного, пошаманили с безопасностью, а все прикладное ПО обязали работать в виртуальной машине, которая в первую очередь оптимизирована для ARM, а ява тут вторична. ВМ эта полностью открыта, Андройд тоже открыт. Уверен, что со следующего релиза в fpc будет полная поддержка андройда.
Аватара пользователя
STAKANOV
энтузиаст
 
Сообщения: 1069
Зарегистрирован: 14.05.2006 21:26:24
Откуда: Зеленоград

Re: FPC + Android

Сообщение NTFS » 27.03.2013 00:03:33

Вопрос не в поддержке виртуальной машины, а в поддержке графических компонент. Сомневаюсь, что разработчики FPC будут делать обертки для всех элементов. А способов разработать приложение с тремя кнопками и так навалом.
NTFS
постоялец
 
Сообщения: 388
Зарегистрирован: 05.11.2007 14:57:50
Откуда: Краснодар

Re: FPC + Android

Сообщение iN0k » 27.03.2013 00:19:54

была подобная задача.
решал по мануалам из серии http://wiki.lazarus.freepascal.org/Cust ... ce/Android ...
Windows 7, ANT не использовал, компилировал руками. все заработало (не с первого раза, воевал с путями к библиотекам всяким).
из минусов ... предлагаемый интерфейс выглядит более чем ЧУЖЕРОДНО, однако работает (правда не все, VirtualTree не захотел).
после экспериментов стало понятно:
1. логику и алгоритмы выносить в NDK
2. интерфейс либо описывать в проекте приложения Android (файлах типа XML). при загрузке приложения из NDK проходить по визуальным объектам и прописывать им события, либо весь интерфейс руками реал тайм (работало оба варианта, но гемор еще тот, все равно что приложение только на winApi рисовать)

PS. вспомнил, сборку крос. FPC-ANDROID тоже качнул готовую, так как его компиляцию неасилил :(
iN0k
постоялец
 
Сообщения: 146
Зарегистрирован: 18.07.2012 14:09:50

Re: FPC + Android

Сообщение stanilar » 27.03.2013 10:24:32

Поскольку lazarus не мой постоянный инструмент программирования (хотя и использую его для распространения "коммерческого" продукта, по причине отсутствия собственной дельфовой лицензии), пользуюсь CodeTyphon. Он для игр с кросскомпиляцией подходит на отлично. Там это дело настраивается одним! кликом мыши. Есть в нем и рабочие примеры под андрюшу. Есть даже примеры работы с OpenGL ES. (Кстати CT устанавливается и на линух).

IMHO Могу сказать сразу, что попытки найти прямые визуальные библиотеки обречены (хотя и есть достойные сторонние решения). И дело тут не в кривости fpc, а в идеологии самой платформы. Под мобильник любой интерфейс должен быть произведением исскуства. Надеюсь Вы сами понимаете почему. Под это дело и заточено все их апи. Прибавьте к этому старые болезни линуха в виде несовместимости апи между версиями (а 90% программ под разные версии андроида без перекомпиляции несовместимы). Так что алгоритм работы может быть таким: алгоритмы - FPC, интерфейс - либо родной, либо расование, либо рисование через компоненты. Но тут более ничего сказать не могу, т.к. сосредоточился на работе с GLES, а в таких приложениях нет проблем с видом кнопок :-)

P.S. Чтобы еще немного уверить Вас, в возможности нормальной разработки под андроид на FPC, предлагаю погуглить исходники игры FoembJumb, возможно, они доступны тут.
stanilar
постоялец
 
Сообщения: 289
Зарегистрирован: 09.03.2010 19:09:02

Re: FPC + Android

Сообщение NTFS » 27.03.2013 11:17:22

И все-таки я не пойму, зачем. ООП - он почти одинаков, что в Java, что в ObjectPascal. В Java даже помощнее будет. Синтаксис и SDK для Java изучаются за неделю, если неспешно. Что еще? Мои любимые классы-хелперы, написанные на Pascal? Большинство того, ради чего в Pascal приходилось делать свой класс, в Java уже есть в SDK.
Исключение вижу только одно - когда приложение сочетает сложную бизнес-логику, написанную на Pascal, крайне простой интерфейс и очень злого заказчика, который подгоняет плеткой-семихвосткой. Тогда эти игры целесообразны.
А начинать новый проект с костылями... не знаю, не знаю.
NTFS
постоялец
 
Сообщения: 388
Зарегистрирован: 05.11.2007 14:57:50
Откуда: Краснодар

Re: FPC + Android

Сообщение stanilar » 27.03.2013 13:20:11

NTFS писал(а):И все-таки я не пойму, зачем.

Мистер Смит?

NTFS писал(а): Java

Говорят что в android JAVA уже не та.

NTFS писал(а):А начинать новый проект с костылями... не знаю, не знаю.

Если разрабатывать под android на C#, то там "костыли" будут другими?
stanilar
постоялец
 
Сообщения: 289
Зарегистрирован: 09.03.2010 19:09:02

Re: FPC + Android

Сообщение .wOvAN » 27.03.2013 15:36:37

Делал пробное приложение, но это тот ещё гемор, инфа разрознена. Только на то чтобы собрать всё в кучу надо день потратить, в итоге можно получить работающее приложение, но ... много но...
.wOvAN
постоялец
 
Сообщения: 118
Зарегистрирован: 16.04.2010 06:36:12

Re: FPC + Android

Сообщение VirtUX » 02.04.2013 00:15:48

Так я и не победил собрать кросс-компилятор. Пришлось в экстра-быстром темпе писать на "чудо-языке" под ADT. Матерился, пил коньяк (для успокоения), штудировал форумы "чудо-писателей", снова матерился, снова коньяк. Пару раз мой смарт был на грани полета в стену. Один раз уходил я в забвение после посещения пивного рая с другом (таким же "любителем" "чудо-языка" и самого ADT). Много чего произошло за этот короткий промежуток времени... Но проект почти закончил, хотя уже два дня просрочки от сдачи его в пользование. Сколько еще моих нервов уйдет на это "милейшее чудотворение" одному Ему известно.
Искренне сочувствую всем писателям на "чудо-языке", и действительно считающим, что на нем можно программировать... Про Eclipse with ADT просто помолчу.
К чему это я все...
Дорогие и уважаемые люди. Добрые и не очень. Оооочень прошу помочь собрать кросс-компилятор. Поймите меня правильно: я не за себя волнуюсь, а за разработчиков "различных чудес". Не долго им осталось жить, если FPC для Android не появится на моем ПСишнике...
P.S. Прошу не воспринимать все написанное выше за чистую монету. Просто помогите, пока я еще не попал к людям в белых халатах...
Аватара пользователя
VirtUX
энтузиаст
 
Сообщения: 878
Зарегистрирован: 05.02.2008 10:52:19
Откуда: Крым, Алушта

Re: FPC + Android

Сообщение iN0k » 02.04.2013 07:18:48

подолью огонь к холиВару:
давным-давно, бросили меня освоить новую перспективную технологию JAVA. Дали толстенный толмуд + cd, и маленький проект. Толмуд полистал, проект написал, после чего встал вопрос: а че медленно то так? в ТОЛСТЕННОМ толмуде была такая глава: "Оптимизация Ваших приложений ...", она занимала ровно 2 (ДВЕ) странички, смысл которых таков: если ваши программы на JAVA работают медленно, не партесь, через год выйдет новый компьютер (новое поколение процессоров), на котором ВСЕ будет летать.

с тех пор компы действительно стали быстрее, а технология JAVA вряд ли изменились кардинально.
iN0k
постоялец
 
Сообщения: 146
Зарегистрирован: 18.07.2012 14:09:50

След.

Вернуться в Free Pascal Compiler

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 1

Рейтинг@Mail.ru