Nokia Internet Tablet N8XX     

Ответы на вопросы о таблетках

  • Вы не зашли.

#1 11-02-2008 04:24:07

tony2001  
ТаблетМонстр
На форуме с: 05-02-2008
Сообщений: 37
Отблагодарили :   
 

[howto] сборка пакетов на таблетке

Краткое описание того, как я собираю пакеты на таблетке.

Disclaimer
-----
Сразу хочу предупредить: если у вас мало места на флэшках, вы не умеете пользоваться SSH
и/или собирать софт из исходников на *nix - вам это не надо.

Данное описание не претендует на полноту или полную верность, оно из разряда "works for me".
Скорее всего, собирать пакеты на самой таблетке - это неправильно.
Но ставить SDK и т.п. мне лень, поэтому я решил пойти по короткому пути.
У меня N800 с OS2008. В OS2007 что-то может отличаться, а может и нет.
Я её видел ровно 5 минут, поскольку перепрошил таблетку сразу.

Подготовка
-----
Для начала надо поставить SSH-клиент и сервер, с ними дальше будет намного проще.
Они уже есть в пакете(ах) на maemo.org, пакет называется "openssh".
Ставьте и логиньтесь на таблетку с десктопа (ssh root@<ip address>)
Здесь, кстати, поможет wifiinfo, который показывает текущий IP-адрес таблетки.
Взять его можно тут: http://anderenen.de/repository    chinook free

Очевидно, что нужен компилятор и dev-пакеты.
Выполняем в шелле от рута:
apt-get install gcc
apt-get install g++
apt-get install libc6-dev
apt-get install bzip2
apt-get install autotools-dev

Так же, вам понадобятся GNU grep & GNU tar.
Они есть у меня в репозитории (см. в самом низу).
Пакеты gtar и gnugrep.

Это небходимый минимум, далее придется ставить что-то в зависимости от того, что вы собираете.

Важный момент:
флэшки монтируются с noexec, поэтому выполнять что-то с них не получится - надо либо перемонтировать
их без этой опции, либо собирать на встроенной памяти (т.е. в домашней директории).

Собственно, на этом этапе обычные ./configure && make уже должны работать.

Сборка deb-пакета
------
После успешного окончания make, выполняем:
`make install prefix=/home/user/tmp-build/usr/local/`.

/home/user/tmp-build - это просто временная директория.
/usr/local/ - это префикс пути (./configure --prefix=<префикс>), куда будут ставиться файлы.

Это создаст /home/user/tmp-build/usr/local/ и установит все файлы пакета в эту директорию.
Скорее всего, вам надо будет удалить некоторое кол-во из этих файлов, вряд ли вам нужны хидеры и документация.

Создаём control-файл - /home/user/tmp-build/DEBIAN/control, он должен содержать примерно следующее:

Код:

Package: ftp
Section: user/internet
Priority: optional
Maintainer: John Doe <mail@example.com>
Version: 1.5
Architecture: armel
Description: minimalistic FTP client

Описание формата файла есть здесь: http://fts.ifac.cnr.it/cgi-bin/dwww?typ … -control/5    и в гугле.

Далее, в директории /home/user выполняем:
`dpkg-deb -b tmp-build ftp-1.5.deb`
в результате чего получаем пакет "ftp-1.5.deb" c теми файлами, которые были в /home/user/tmp-build на этот момент.

К сожалению, в dpkg-deb захардкожены команды tar, в частности опция --null, которая отсутствует в Busybox,
стоящем на таблетках.
Поэтому, для этого этапа требуется GNU tar.

Ставим пакет:
`dpkg -i ftp-1.5.deb`

Готово.

Репозиторий
------
Мой репозиторий тут:
http://maemo.daylessday.org/repo    chinook user

Пока есть следующие пакеты (новые будут добавляться по мере необходимости):
ftp-1.5
gtar-1.19
gnugrep-2.5.3
gnubash-3.2
nmap-4.53
ping-20071127
telnet-1.5
vim-7.1
whois-1.5
unrar-3.7.8
findutils-4.2.32 (нормальный find + locate)
rx-34-kernel-modules-extrafs (поддержка ext2/ext3/reiserfs/smbfs/cifs)

Если есть предложения по пакетам - обращайтесь.

Отредактированно tony2001 (23-08-2008 14:01:21)

Неактивен

 

#2 11-02-2008 04:59:50

tony2001  
ТаблетМонстр
На форуме с: 05-02-2008
Сообщений: 37
Отблагодарили :   
 

Re: [howto] сборка пакетов на таблетке

>Как на счёт использования официального garage.maemo.org для собранных пакетов?

Насколько я понимаю, garage - это собрание софта, а не собрание портов.
В любом случае, а смысл?

links есть в repostory.maemo.org:

Код:

# apt-cache showpkg links
Package: links
Versions:
0.99+1.00pre12-1osso(/var/lib/apt/lists/repostory.maemo.org_dists_chinook_free_binary-armel_Packages)

Reverse Depends:
  docbook-utils,links
Dependencies:
0.99+1.00pre12-1osso - libc6 (2 2.3.5-1) links-ssl (3 0.99-1.1)
Provides:
0.99+1.00pre12-1osso - www-browser

или это не тот линкс?

Неактивен

 

#3 11-02-2008 05:18:26

tony2001  
ТаблетМонстр
На форуме с: 05-02-2008
Сообщений: 37
Отблагодарили :   
 

Re: [howto] сборка пакетов на таблетке

>Ну собрание портов тоже.
я не вижу где такое сказано: "This site is meant for hosting various software projects related to the maemo development platform."

>Links2 то собранный есть, но он не хилдонизирован(у него два режима, консольный и графический использующий иксы.
я пока очень слабо себе представляю процесс хилдонизации, поэтому в первую очередь могу помочь со сборкой чего-то простого/консольного.

Неактивен

 

#4 12-02-2008 03:12:21

Unatine  
Таблетоид
На форуме с: 27-08-2007
Сообщений: 64
Отблагодарили :   
Вебсайт
 

Re: [howto] сборка пакетов на таблетке

tony2001 говорит:

>я не вижу где такое сказано: "This site is meant for hosting various software projects related to the maemo development platform."

"software projects related to the maemo development platform" не значит что только изначально написанные программы для Maemo smile там тот же python есть, evince и много чего портированного smile

tony2001 говорит:

>Links2 то собранный есть, но он не хилдонизирован(у него два режима, консольный и графический использующий иксы.
я пока очень слабо себе представляю процесс хилдонизации, поэтому в первую очередь могу помочь со сборкой чего-то простого/консольного.

по хилдонизации существующего ПО несколько есть статей на maemo.org. с консольными вещами как раз проблем нет. исключение могут составлять вещи вроде TOR, так как они используют специфические библиотеки и привязаны к функциональности ядра.

с хилдонизацией gtk2 софта немного, если написано на python+gtk2 еще меньше smile. с другим (gtk1, qt, fltk и так далее) будут проблемы уже hmm


SE P1i, Nokia N800, N810, Eee PC 900, LBook V3 и еще куча всего hmm

Неактивен

 

#5 12-02-2008 03:16:21

tony2001  
ТаблетМонстр
На форуме с: 05-02-2008
Сообщений: 37
Отблагодарили :   
 

Re: [howto] сборка пакетов на таблетке

>"software projects related to the maemo development platform" не значит что только изначально написанные программы для Maemo
ок, я подумаю на этот счёт.
вероятно, имеет смысл создать нечто подобное http://unxutils.sourceforge.net/   

>с консольными вещами как раз проблем нет.
о том и речь smile

>с хилдонизацией gtk2 софта немного
у меня пока проблемы с установкой соотв-щих devel-пакетов.
см. http://bugs.maemo.org/show_bug.cgi?id=2930   

Неактивен

 

#6 12-02-2008 04:47:36

Unatine  
Таблетоид
На форуме с: 27-08-2007
Сообщений: 64
Отблагодарили :   
Вебсайт
 

Re: [howto] сборка пакетов на таблетке

я бы все таки посоветовал бы не мучать так таблетку, так как нормальное окружение для сборки может занять очень много места smile
cоветую вот на это посмотреть: http://maemovmware.garage.maemo.org/   
из софта будет нужен только vmware player. а внутри уже все есть smile


SE P1i, Nokia N800, N810, Eee PC 900, LBook V3 и еще куча всего hmm

Неактивен

 

#7 12-02-2008 05:15:40

tony2001  
ТаблетМонстр
На форуме с: 05-02-2008
Сообщений: 37
Отблагодарили :   
 

Re: [howto] сборка пакетов на таблетке

посмотрю, спасибо.
пока просто лень что-то ставить только из-за идеологической неправильности.

Неактивен

 

#8 13-02-2008 02:05:43

tony2001  
ТаблетМонстр
На форуме с: 05-02-2008
Сообщений: 37
Отблагодарили :   
 

Re: [howto] сборка пакетов на таблетке

Посмотрел.
Под VMWare & Qemu maemo-launcher падает сразу после старта.
Я так понимаю, что для нормальной работы требуется 32-битная ОС, которой у меня нет.
Жаль.

Отредактированно tony2001 (13-02-2008 02:06:01)

Неактивен

 

#9 13-02-2008 02:14:13

Unatine  
Таблетоид
На форуме с: 27-08-2007
Сообщений: 64
Отблагодарили :   
Вебсайт
 

Re: [howto] сборка пакетов на таблетке

хм. странно.
дома проверю еще раз...
хостовая ОС вроде 64бита (mac os x) + vmware fusion. но имхо дело не в этом. не должно быть разницы от хостовой ОС.
проверю - сделаю новый топик с данным вопросом.


SE P1i, Nokia N800, N810, Eee PC 900, LBook V3 и еще куча всего hmm

Неактивен

 

#10 23-08-2008 09:24:10

DJArty  
TabletGeek
Откуда: Харьков
На форуме с: 24-01-2008
Сообщений: 127
Отблагодарили :   10 
Opera 

Re: [howto] сборка пакетов на таблетке

tony2001 говорит:

/usr/local/ - это префикс пути (./configure --prefix=<префикс>), куда будут ставиться файлы.

А таблетка видит по умолчанию то что ставится в /usr/local/bin  ??  (пока из моих проб как будто не видит исполняемого файла туда установившегося)
И ещё, если на закладке "Проблемы" в Диспетчере приложений пишет что не может установить из-за несовместимого пакета приложений
Это означает что например? )   
Под скэтчбоксом собрался дэбпакет и установился с пом. dpkg  (на таблетке кстати тоже ставится из консоли с пом. dpkg) но хочется ж что б и в Диспетчере ставился - в чём несовместимость, в описании control гдето траблы или глубже? smile


N800(4.2008.36-5) + Transcend SDHC 8Gb Class 6 + Router TP-Link TL-WR642G

Неактивен

 

#11 23-08-2008 10:06:20

tony2001  
ТаблетМонстр
На форуме с: 05-02-2008
Сообщений: 37
Отблагодарили :   
Opera 

Re: [howto] сборка пакетов на таблетке

>А таблетка видит по умолчанию то что ставится в /usr/local/bin  ??
>(пока из моих проб как будто не видит исполняемого файла туда установившегося)
у вас /usr/local/bin в PATH есть?
если нет - указывайте просто полный путь от корня.
или добавльте его в PATH.

>И ещё, если на закладке "Проблемы" в Диспетчере приложений пишет что не может установить
>из-за несовместимого пакета приложений Это означает что например? )   
это означает, что неправильно указана категория в control.
должно быть что-то типа "Section: user/utils", часть с "user/" - обязательна.

Неактивен

 

#12 23-08-2008 10:34:50

Wall  
TabletGeek
На форуме с: 28-08-2007
Сообщений: 1168
Отблагодарили :   72 
Firefox 

Re: [howto] сборка пакетов на таблетке

tony2001 говорит:

это означает, что неправильно указана категория в control.
должно быть что-то типа "Section: user/utils", часть с "user/" - обязательна.

Одно уточнение - 'user' нужно добавлять, если хотите, чтобы пакет был виден в списке менеджера программ. Для зависимых пакетов, например, библиотек, этого лучше не делать. Зависимости менеджер приложений вытащит из репозитория и поставит сам. И при удалении основного пакета сам удалит.
Естественно, все вышесказанное имеет смысл если ваши пакеты лежат в репозитории.


Nokia 770/IT 2006, N810

Неактивен

 

#13 23-08-2008 13:18:25

DJArty  
TabletGeek
Откуда: Харьков
На форуме с: 24-01-2008
Сообщений: 127
Отблагодарили :   10 
Opera 

Re: [howto] сборка пакетов на таблетке

Спасибо! )
Правда совершенно случайно само расфиксилось - просто взял чужой control (и там таки да - на удачу user/ был ато б морочился )
Наверно имеет смысл топикстартеру подправить пример wink
Щас запостю переподелку smile вдруг кому пригодится )

Отредактированно DJArty (23-08-2008 13:20:19)


N800(4.2008.36-5) + Transcend SDHC 8Gb Class 6 + Router TP-Link TL-WR642G

Неактивен

 

#14 24-08-2008 02:40:53

svs57  
TabletGeek
Откуда: Санкт-Петербург
На форуме с: 30-03-2008
Сообщений: 1217
Отблагодарили :   71 
 

Re: [howto] сборка пакетов на таблетке

Я собираю из исходников Дебиана. Как - написано в Дебиан wiki.
Конечно хилдонизации нет.


N810 (DIABLO_4.2008.36-5)

Неактивен

 

Board footer

Powered by PunBB
© Copyright 2002-2008 Rickard Andersson

Использованы иконки браузеров с форума forum.mozilla-russia.org

[ Generated in 0.519 seconds, 8 queries executed ]