roboforum.ru

Технический форум по робототехнике.

uClinux, и с чем его едят.

Программирование микроконтроллеров AVR, PIC, ARM.
Разработка и изготовление печатных плат для модулей.

Re: uClinux, и с чем его едят.

Сообщение Strijar » 27 июл 2011, 08:17

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


Видимо у вас "гранаты не той системы" ;) Я сейчас по работе 90% времени изучаю исходники ядра и все что вокруг (драйвера итд), все достаточно понятно. Надо просто жить этой системой - принять ее какой она есть и играть по ее правилам. Хотя я уже "гик" с 12 летним стажем ;)
Аватара пользователя
Strijar
 
Сообщения: 664
Зарегистрирован: 28 авг 2006, 17:09
Откуда: Всеволожск (СПб)
прог. языки: С, C++, Python, Lua, VHDL, Verilog, Forth
ФИО: Олег Белоусов

Re: uClinux, и с чем его едят.

Сообщение setar » 27 июл 2011, 10:51

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

Одного базового пакета достаточно чтобы линукс не заработал, ну а вообще да, такая ситуация попадается примерно в 20% пакетов.
У меня-то лично есть ощущение, что основные причины использования нативных компиляторов в том, что 1. "лень разбираться" и 2. "лучше не рисковать".
запуск только что собранного бинарника для выяснения параметров для сборки следующего.
Вы же сами понимаете, что это извращение, хотя я не сомневаюсь, что через эту ж... все и ходят. Только потому, что этот путь наиболее автоматизирован.

:) это Вы разработчикам расскажите.
У меня глубокое знание линукса, и малое знание программерства, и дело совсем не в лени.
А в понимании того что править исходный код пакетов это задача не по плечу мне.
Аватара пользователя
setar
Site Admin
 
Сообщения: 10989
Зарегистрирован: 04 окт 2004, 12:58
Откуда: St.Petersburg
Skype: taranenko.sergey
ФИО: Сергей Тараненко

Re: uClinux, и с чем его едят.

Сообщение Michael_K » 27 июл 2011, 12:52

Да нееет...
Там не надо править исходные коды пакетов (я имею в виду сишные исходники).
Вы же сами сказали, что "выясняются параметры для сборки следующего" - так оно и есть.
Это максимум ключики для запуска мэйков, возможно (менее вероятно) сами мэйки или линкер-скрипты...

Ну, грубо говоря, например, компилеру нужно знать, чтобы собрать следующий пакетик, сколько там памяти, какого она типа, на какой шине висит, тип эзернет-контроллера, его подключение или версии библиотек, чтобы поставить правильные параметры.

Проще собрать и запустить утилитку, которая все это сама определит, и скриптик сам поставит нужные ключики.
В принципе, конечно, если ты сам сделал плату и сам собираешь все библиотеки, ты все эти параметры уже знаешь.
Просто по определению.
Но система огромная и необозримая, поэтому руками все зависимости искать и прописывать, мягко говоря, задолбаешься.
Разбираться никому не охота, есть риск что-то проморгать, только поэтому народ и не парится - я и говорю "лень разбираться" и "лучше не рисковать".
Аватара пользователя
Michael_K
 
Сообщения: 6028
Зарегистрирован: 07 окт 2009, 00:29
Откуда: СПб

Re: uClinux, и с чем его едят.

Сообщение setar » 27 июл 2011, 13:27

:) поверь, это не просто.
То что предлагаешь ты - это переписывание мейк файлов.
Это практически то же самое что править исходники, и вероятность накосячить очень велика.
И ещё огромный минус того что единыжды исправив мейк файлы в 500-600 пакетах получаешь закостенелый дистрибут, без обновления вообще.
Аватара пользователя
setar
Site Admin
 
Сообщения: 10989
Зарегистрирован: 04 окт 2004, 12:58
Откуда: St.Petersburg
Skype: taranenko.sergey
ФИО: Сергей Тараненко

Re: uClinux, и с чем его едят.

Сообщение Strijar » 27 июл 2011, 13:38

setar писал(а):То что предлагаешь ты - это переписывание мейк файлов.
Это практически то же самое что править исходники, и вероятность накосячить очень велика.
И ещё огромный минус того что единыжды исправив мейк файлы в 500-600 пакетах получаешь закостенелый дистрибут, без обновления вообще.


Вот именно для этого и придумали давным давно autoconfig и pkg-config. Другой вопрос, что пользуются ими криво - частенько народ и не подозревает что существует кросс-компиляция.
Аватара пользователя
Strijar
 
Сообщения: 664
Зарегистрирован: 28 авг 2006, 17:09
Откуда: Всеволожск (СПб)
прог. языки: С, C++, Python, Lua, VHDL, Verilog, Forth
ФИО: Олег Белоусов

Re: uClinux, и с чем его едят.

Сообщение Michael_K » 27 июл 2011, 13:55

Нене... я не предлагаю. нафиг-нафиг. :)
Это просто оффтоп про кросс- и нэйтив- компиляторы...

Другое дело, что мне же так и так придется что-то править, потому что пакета именно под свою плату я абсолютно точно не найду.
Максимум, я найду "похожий". Ну, скажем, от олимексовской платы.
Но я абсолютно пока не понимаю, куда его крутить.

Там "штатный" вариант - это загрузить в проц бинарный убут, который подгрузит ядро с внешнего носителя.
У меня, конечно, есть там возможность подключить SD-карточку и интерфейс там штатный, но вот, например, нога определения наличия флэшки - другая (не такая, как на олимексе), управление питанием флэшки - тоже, а эзернета нет вообще,
то есть кусок убута, который работает с TFTP мне не нужен (и даже вреден, потому что он там что-то инициализирует, а у меня эти ноги используются). Зато у меня на плате стоит микросхема сериал-флэш (с которой казалось бы можно грузиться штатно, но этому нужно как-то научить убут).

Поэтому я пока не очень понимаю, с чего правильно (читай "кошерно" с линуксовой точки зрения) начать ковырять...
Ковыряюсь, конечно, потихоньку, но пока "между дел".

Например, меня все больше посещает мысль, нафига мне убут вообще как таковой? :)
Аватара пользователя
Michael_K
 
Сообщения: 6028
Зарегистрирован: 07 окт 2009, 00:29
Откуда: СПб

Re: uClinux, и с чем его едят.

Сообщение setar » 27 июл 2011, 14:35

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

И начать как раз удобно со сборки "заточенного под борду" юбута.
там опциями в исходниках можно выключить ненужный функционал.
так я делал для mini2440, только вроде подробно не документировал
Аватара пользователя
setar
Site Admin
 
Сообщения: 10989
Зарегистрирован: 04 окт 2004, 12:58
Откуда: St.Petersburg
Skype: taranenko.sergey
ФИО: Сергей Тараненко

Re: uClinux, и с чем его едят.

Сообщение Michael_K » 27 июл 2011, 14:39

setar писал(а):получаешь закостенелый дистрибут, без обновления вообще.

А вот это меня как раз нисколько не волнует.

С чем можно сравнивать? С самопиской? Там ты тоже "получаешь закостенелый дистрибут без обновления вообще".
И еще, вы, пожалуйста, не путайте компьютер или эваборду с конечным пользовательским устройством.

Вы давно на стиральной машинке обновляли ось?
А на станке с ЧПУ, например, обновляет кто-то ось?
А в кардиомониторе, спектроанализаторе или пользовательском интерфейсе паровой турбины?
Нет!!! Принцип "работает-не трогай" в таких приложениях работает как часы - в ста процентах случаев.

юбут полезен для динамической смены параметров загрузки ядра.

Я понимаю, что в процессе ковыряния это удобно, конечно,
чтобы не перезаливать все каждый раз через непойми какое место.
Проблема в том, что его еще нужно "заточить под борду"
Аватара пользователя
Michael_K
 
Сообщения: 6028
Зарегистрирован: 07 окт 2009, 00:29
Откуда: СПб

Re: uClinux, и с чем его едят.

Сообщение setar » 27 июл 2011, 14:52

есть удобные инструменты, в том числе обновления линукса.
Какие из них оставить а какими принебречь - решать Вам
Аватара пользователя
setar
Site Admin
 
Сообщения: 10989
Зарегистрирован: 04 окт 2004, 12:58
Откуда: St.Petersburg
Skype: taranenko.sergey
ФИО: Сергей Тараненко

Re: uClinux, и с чем его едят.

Сообщение Strijar » 27 июл 2011, 16:57

Michael_K писал(а):Нене... я не предлагаю. нафиг-нафиг. :)
Другое дело, что мне же так и так придется что-то править, потому что пакета именно под свою плату я абсолютно точно не найду.


Что значит "пакета под свою плату"? Если на этой плате Линукс - то софту все равно на какой плате он будет работать. На 99% даже без разницы какой проц (1% на ASM вставки)
Аватара пользователя
Strijar
 
Сообщения: 664
Зарегистрирован: 28 авг 2006, 17:09
Откуда: Всеволожск (СПб)
прог. языки: С, C++, Python, Lua, VHDL, Verilog, Forth
ФИО: Олег Белоусов

Re: uClinux, и с чем его едят.

Сообщение Michael_K » 27 июл 2011, 18:32

Strijar писал(а):Что значит "пакета под свою плату"?

Неправильно выразился - сборки линукса под свою плату.
Аватара пользователя
Michael_K
 
Сообщения: 6028
Зарегистрирован: 07 окт 2009, 00:29
Откуда: СПб

Re: uClinux, и с чем его едят.

Сообщение setar » 28 июл 2011, 02:04

к вопросу разумности нативной сборки: forum96/topic8508.html
смотреть первый пост со слов "пример насколько это "тяжкая задача""
Аватара пользователя
setar
Site Admin
 
Сообщения: 10989
Зарегистрирован: 04 окт 2004, 12:58
Откуда: St.Petersburg
Skype: taranenko.sergey
ФИО: Сергей Тараненко

Re: uClinux, и с чем его едят.

Сообщение Dmitry__ » 28 июл 2011, 02:54

прочитал статью, не встретил ни одного знакомого слова, ты действительно такой умный? :shock: :good: :oops:
Аватара пользователя
Dmitry__
 
Сообщения: 8033
Зарегистрирован: 13 янв 2011, 15:25
Откуда: Санкт-Петербург

Re: uClinux, и с чем его едят.

Сообщение setar » 28 июл 2011, 08:52

Там тема просто очень сложная, я часто сам к своим же записям обращаюсь.
Пока делаешь - все в голове, пару недель отвлекся и в голове только общее понимание процесса.
Аватара пользователя
setar
Site Admin
 
Сообщения: 10989
Зарегистрирован: 04 окт 2004, 12:58
Откуда: St.Petersburg
Skype: taranenko.sergey
ФИО: Сергей Тараненко

Re: uClinux, и с чем его едят.

Сообщение Strijar » 28 июл 2011, 10:35

setar писал(а):Там тема просто очень сложная, я часто сам к своим же записям обращаюсь.


Сергей, а ты не пробовал OpenEmbedded? Я до сих пор пользовался buildroot, но новые версии чего то для sparc не хотят собирать toolchain. Вот подумываю про OE - там софта вагон и тележка, но поддержки sparc "в коробке" почти нет.
Аватара пользователя
Strijar
 
Сообщения: 664
Зарегистрирован: 28 авг 2006, 17:09
Откуда: Всеволожск (СПб)
прог. языки: С, C++, Python, Lua, VHDL, Verilog, Forth
ФИО: Олег Белоусов

Пред.След.

Вернуться в Микроконтроллеры

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

Сейчас этот форум просматривают: Google [Bot] и гости: 3