Подтвердить что ты не робот

Как начать разработку программного обеспечения Maemo

Через несколько месяцев я приобрел устройство Nokia N800, и с тех пор я испытываю желание писать для него некоторый код. Я знаю, что некоторые из приложений, которые я запускаю, написаны на Python и что для платформы Maemo есть моно-порт.

В основном, я спрашиваю:

  • Есть ли рекомендованный язык разработки платформы Maemo?
  • Какие средства разработки существуют?
  • Могу ли я использовать Windows или Linux в качестве моей основной машины разработки и которую вы рекомендуете и почему?
4b9b3361

Ответ 1

Структура Hildon состоит из расширений GTK +, поэтому языком является C. Вы можете использовать обертки С++ (maemomm) тоже, Или вы можете пойти с pymaemo для создания приложений с Python, что для меня намного проще, чем C или С++. Я также видел попытку в рубиновом порту, но недавно не выполнил этот проект.

В среде разработки есть "scratchbox", который дает вам песочницу для компиляции и запуска вашего приложения. Здесь ссылка о том, как настроить среду разработки scratchbox. (Конечно, мне потребовалось много времени, чтобы все наладилось.)

Вам нужно будет использовать Linux в качестве своей машины разработки, потому что ваш Nokia N800 - это действительно мини-Linux-компьютер.

Если вы хотите иметь опыт IDE, попробуйте ESbox плагин для Eclipse.

Получайте удовольствие от взлома!!!

Ответ 2

Я настоятельно рекомендую вам попробовать С++ и QT.

QT уже хорошо поддерживается для Diablo и Fremantle, а следующая версия Maemo (Harmattan) должна быть на основе QT.

Обучение QT будет намного проще, чем GTK +, кодирование будет быстрее и веселее, ваше приложение может быть скомпилировано на разных платформах, и вы даже сможете разрабатывать и отлаживать в Windows, а затем просто запускать qmake && сделать в среде с нуля.

Взгляните на этот учебник: Начало работы с QT для Maemo

Для компиляции кода для устройства Maemo вам все еще нужен ящик Linux. Если вы используете окна, вы можете настроить ubuntu (или kubuntu) на машине VirtualBox.

Maemo SDk + вместе с Scratchbox 2 - лучшая альтернатива, чем Maemo SDK и Scratchbox.

Я лично использую создателя QT в Windows, kubuntu 9.04 в VirtualBox, и я никогда не был счастливее. Когда я начал, я попробовал "официальный" подход: Ubuntu, GTK +, C-язык и scratchbox 1.... это было больно.

Ответ 4

Для дополнительного удовольствия на ходу вы можете получить linux gcc и сделать инструменты, запущенные на самом планшете, и выполнить свое программирование и компиляцию на устройстве. Для любой помощи в подобных материалах форумы Maemo Talk являются фантастическими.

Ответ 6

Там Scratchbox Virtual Appliance для разработки Maemo (я не уверен, что ссылка правильная), но так, как я начал взлом. Мне потребовалось время от времени, чтобы выяснить, как создать скретч-бокс самостоятельно.

Ответ 7

Nokia прилагает все усилия для предоставления инструментов и документации для разработчиков. Я бы сказал, что одним из лучших мест для начала является Forum Nokia:

http://www.forum.nokia.com/Technology_Topics/Device_Platforms/Maemo.xhtml

Следующая остановка для разработки для Maemo - это, конечно, штаб-квартира Maemo:

http://maemo.org/development/

Эти две ссылки относятся к порталам, где вам нужно будет развернуться для дальнейшей информации, но они неплохие отправные точки. Теперь, чтобы ответить на ваши вопросы напрямую:

  • Я полагаю, что двумя "рекомендуемыми" языками являются C и python. Хотя они хорошо поддерживаются, они не являются единственным выбором, как вы видели из предыдущих ответов. В дополнение к этим языкам perl находится на устройстве, хотя он не находится в том же состоянии, что и на debian.

  • Главным инструментом разработки является SDK. Он позволяет тестировать среду и компилировать программное обеспечение для устройства. Вы также можете использовать Eclipse, для которого есть плагины.

  • Рекомендуется использовать Linux как машину разработки, но вы можете запустить ее на виртуальной машине в Windows. В то время как я предпочитаю мой OS быть 100% бесплатно и для этого выбрать Debian, Nokia упорно трудится, чтобы сделать лучшую среду разработки для Windows. Так что будьте уверены, что Nokia не обязательно разделяет мое предубеждение!: -)

Ответ 8

Я должен ответить на ответ Карачкова.

В настоящее время рекомендуются два рекомендуемых подхода:

  • Python + PyGtk

  • С++ и Qt

Используя что-нибудь еще, вы настроились на некоторую боль (если вы не ветеран Gtk +, поскольку вы задаете этот вопрос, я полагаю, что вы этого не сделали). С++ и Qt - это будущее Maemo, и Qt хорошо работает на "старых" платформах, таких как Diablo.

Как отладчик, я рекомендую вам собрать (скомпилировать) "cgdb". Обычный старый gdb может быть слишком спартанским.

Как правило, вы должны разработать свое приложение как "нормальное" приложение Qt с помощью Qt Creator и иногда тестировать его в scratchbox.

Ответ 9

Я развиваюсь в основном с python и pyside (я развиваюсь на N900). У меня есть все мои файлы в nokia N900, и я использую sshfs для монтирования моего домашнего каталога на моем компьютере. Затем я развиваюсь на своем рабочем столе, фактически сохраняя все прямо в сотовом телефоне и использую SSH для удаленного запуска.

Если вам становится слишком лениво даже подобрать устройство, чтобы посмотреть на экран, вы можете использовать VNC; хотя лично я чувствую, что он просто недостаточно отзывчив.

Да, все, что у меня есть на моем рабочем столе, - это мой редактор (кстати, возвышенный текст). Остальные живут на мобильном устройстве. Я использую git для синхронизации вещей/создания резервных копий и т.д.

py2deb отлично подходит для создания пакетов, как только вы захотите распространять свой проект. Опять же, не нужно ничего устанавливать на вашем рабочем столе.

ЕСЛИ вы предпочли бы быть более консервативным, SDK предназначен для debian, и вы будете много страдать с любой операционной системой, отличной от debian (если вы не используете виртуальную машину). Имейте в виду!:)