etc:users:zps:acquaintance_with_siemens
Table of Contents
Знакомство с Сименс
Сходили в подразделение компании Siemens, которое специализируется на встраиваемых устройствах, под управлением ОС Linux.
Здесь хочу описать там полученную информацию. Там нас встретили два прикольных чувака, одиного из которых звали Максим, а другого Дима.
Вопросы и ответы
Сначала Максим вкратце рассказал о Siemens, о подразделении Siemens в Санкт-Петербурге. Затем он описал что-такое SLIND и с чем его едят. (:
В процессе знакомства мы задавали некоторые вопросы, которые я попытался здесь вспомнить и написать
- Вопрос: зачем каждый раз перезаливать rootfs на устройство, не сделав возможности установить на него менеджер пакетов?
- Ответ: Устройство само по себе может быть ограничено в ресурсах. Например, на нем может быть read-only файловая система. И чтобы обновить rootfs, необходимо воспользоваться “перепрошивкой” и залить всю файловую-систему целиком
- Вопрос: Когда мы ставили SLIND мы не смогли установить кроссскомпилятор для архитектуры arm?
- Ответ: это нормально ;)
- Вопрос: Когда у вас будет кросс-компилятор для arm?
- Ответ: скорее всего он будет в конце следующей недели.
- Вопрос: Когда мы ставили SLIND мы не смогли поставить пакет maintainer-core, хотя в Вики на сайте он описан.
- Ответ: Это тоже нормально, он канул в лету (:
Процесс разработки для/в SLIND
Дима продемонстрировал нам процесс разработки для SLIND.
Он сделал следующие шаги:
- Открыл Eclipse c CDT, в котором был создан проект SLIND1). Данный проект содержал простейщий файлик с программой HelloWorld ((:
- при помощи каких-то менюшек, которые предоставляются плагином, он выбрал для компилирования компилятор под mips, который стоит в rootfs SLIND-a, т.е. в том, который мы получили при помощи slindctl setup; slindctl chroot; apt-get install gcc-.... (для mips)
- далее он откомпилировал программу в бинарник, при помощи чего-то (чего конкретно не заметил). Однако компилирование он запусил прямо в эклипсе
- открыл консоль и набрал file hello. После чего увидел что файл hello – это исполняемый файл elf32 для архитектуры mips.
- сказал что у него где-то запущена QEmu и “проброщен” порт на локальную машину
- руками скопировал файлик на целевую платформу ( похоже что в QEmu)
- запустил там GDB–Server и судя по всему как раз порт этого GDB–Server-a он и “пробросил” на локальную машину
- вновь открыл Eclipse и настроил стандартный отладчик GDB, указав для него тот самый “проброшенный” порт
- настроив отладчик Eсlipse запустил отладку и радовался жизни, показывая в отладчике ассемблерный код, не похожий на i386 (:
Таким образом сейчас плагин для Eclipse может:
- создавать SLIND проект
- собирать (??) SLIND проект
- удаленно(на целевом утсройстве) отлаживать программы.
1)
был применен существующий плагин для Eclipse
etc/users/zps/acquaintance_with_siemens.txt · Last modified: 2016/08/08 20:53 by kel
Discussion
Компиляция средствами CDT. Роль их плагина - подсунуть ему свой gcc.
да, и еще gdb
предлагаю поправить меня там, где я не прав ;)