Ник:
Пароль:

Контакты

E-mail: info@starterkit.ru
тел.: +7 922 680-21-73
тел.: +7 922 680-21-74
Телеграм: t.me/starterkit_ru
Партнеры:
otladka.com.ua - г.Киев

Способы оплаты

User Info


Добро пожаловать,
Guest

Регистрация или входРегистрация или вход
Потеряли пароль?Потеряли пароль?

Ник:
Пароль:

ПользователейПользователей:9
Поисковых ботовПоисковых ботов:2
ГостейГостей:1

ОбновитьПодробнееВсегоВсего:12
Форум » starterkit.ru » Embedded Linux
Обновление Ubuntu из виртуальной машины
qqqqq2
Добавлено 24.06.2016 14:18 Сообщение: 21
qqqqq2
0

Пункты: 5507
Регистрация: 29.04.2016
Из: Санкт-Петербург
Jury093, еще раз огромное спасибо!

Пока всё отлично.
Сделаны первые шаги.
1. Создано приложение в MonoDevelop с графическим интерфейсом (GTK).
2. Произведен обмен данными по протоколу ModbusTCP между виртуалкой и компом.
Теперь нужно, чтобы приложение запускалось в iMX6...
Спуститься к концу Подняться к началу
Персональная информация
Jury093
Добавлено 24.06.2016 16:55 Сообщение: 22
Jury093
4.5

Пункты: 54233
Регистрация: 25.05.2009
Пол: Мужчина
Из: Санкт-Петербург
Цитата
Jury093, еще раз огромное спасибо!
Пока всё отлично.

я за вас рад

Цитата
Сделаны первые шаги.
1. Создано приложение в MonoDevelop с графическим интерфейсом (GTK).
2. Произведен обмен данными по протоколу ModbusTCP между виртуалкой и компом.
Теперь нужно, чтобы приложение запускалось в iMX6...

мнэ.. тут два варианта:
- кросскомпиляция на x86 платформе в кодах для АРМа, процесс примерно как ядро собирать или рутовую в билдруте
- компиляция прямо на целевой платформе. складываете исходники на таргет, туда же доставляете компилятор, так же библиотеки и заголовочные пакеты и пробуете собрать..

есть еще фейковый вариант - на таргете поставить какой-нить dosbox, или другой эмулятор х86 архитектуры для АРМа и запускать х86 нативно, но это не ваш случай (хотя я win 3.11 запускал на imx6q, а также читал что умудрились Win95)

На любой вопрос есть любой ответ.
Спуститься к концу Подняться к началу
Персональная информация
qqqqq2
Добавлено 27.06.2016 09:44 Сообщение: 23
qqqqq2
0

Пункты: 5507
Регистрация: 29.04.2016
Из: Санкт-Петербург
Jury093, благодарю за советы.
Правда, как у дилетанта уже есть множество вопросов )))

Первый и самый главный - неоходимо ли на целевой платформе установить mono и GTK?
Если да, то как это правильно сделать?
Кросскомпиляция приложения в MonoDevelop прошла без проблем.
Спуститься к концу Подняться к началу
Персональная информация
Jury093
Добавлено 27.06.2016 13:03 Сообщение: 24
Jury093
4.5

Пункты: 54233
Регистрация: 25.05.2009
Пол: Мужчина
Из: Санкт-Петербург
Цитата
Первый и самый главный - неоходимо ли на целевой платформе установить mono и GTK?
Если да, то как это правильно сделать?

если честно - я не знаю. никогда не занимался созданием больших пакетов..
на опыте кросскомпиляции QT могу сказать, что формируется каталог, куда при сборке раскладываются бинарники, либы, заголовки - для QT это самодостаточно и более ничего доставлять на таргет не надо (кроме make и gcc)
что там у вашего "mono" я не в курсе.. собрали, пробуйте запустить на таргете. если чего не хватает, то доставляете требуемое..
в рутовой из buildroot через менюконфиг
в нормальной рутовой (Debian/Ubuntu) через apt-get

Цитата
Кросскомпиляция приложения в MonoDevelop прошла без проблем.

т.е. вы получили бинарники для целевой платформы?
после переноса на плату imx6 запускать пробовали?

На любой вопрос есть любой ответ.
Спуститься к концу Подняться к началу
Персональная информация
qqqqq2
Добавлено 28.06.2016 12:26 Сообщение: 25
qqqqq2
0

Пункты: 5507
Регистрация: 29.04.2016
Из: Санкт-Петербург
Цитата
Цитата
Кросскомпиляция приложения в MonoDevelop прошла без проблем.

т.е. вы получили бинарники для целевой платформы?
после переноса на плату imx6 запускать пробовали?

Я неправильно понял термин "кросскомпиляция".
Имел ввиду, что произведена компиляция под процессор "любой, а не только x86".
Получившийся файл "имя.exe" запускался в виртуалке командой "mono имя.exe".
Я правильно понимаю, что в iMX6 не так будет запускаться?
Спуститься к концу Подняться к началу
Персональная информация
Jury093
Добавлено 28.06.2016 12:38 Сообщение: 26
Jury093
4.5

Пункты: 54233
Регистрация: 25.05.2009
Пол: Мужчина
Из: Санкт-Петербург
Цитата
Я правильно понимаю, что в iMX6 не так будет запускаться?

разумеется не будет, ведь это код для х86..
вам нужен компилятор, которым собирается ядро для imx6, указываете архитектуру ARCH=arm и компилируете..
начните с малого - в составе ядра есть простейшие примеры, почитайте доки.. ваша цель - на нативной линукс машине (или виртуалке) с x86 процом собрать бинарник в кодах ARM..
на таргете дайте команду
Код
file /bin/bash

ваш бинарник должен быть со схожими параметрами..

На любой вопрос есть любой ответ.
Спуститься к концу Подняться к началу
Персональная информация
qqqqq2
Добавлено 28.06.2016 17:09 Сообщение: 27
qqqqq2
0

Пункты: 5507
Регистрация: 29.04.2016
Из: Санкт-Петербург
Jury093, бинарник - это файл "имя.exe"?
тогда
Код
# ls
MonoDevHello.exe
# MonoDevHello.exe /bin/bash
bash: MonoDevHello.exe: not found
Спуститься к концу Подняться к началу
Персональная информация
Jury093
Добавлено 28.06.2016 17:29 Редактировалось 28.06.2016 17:30 Сообщение: 28
Jury093
4.5

Пункты: 54233
Регистрация: 25.05.2009
Пол: Мужчина
Из: Санкт-Петербург
Цитата
Jury093, бинарник - это файл "имя.exe"?


???
нет конечно.. для вашего надо
Код
file MonoDevHello.exe

что впрочем бессмысленно, там по любому покажет 386, типа
Код
file SIM5360\ QDL\ Ver3.4.04.exe
SIM5360 QDL Ver3.4.04.exe: PE32 executable (GUI) Intel 80386, for MS Windows

не надо EXE запускать на imx6! надо перекомпилировать свои исходники в бинарный код, который сможет запуститься на ARM..

На любой вопрос есть любой ответ.
Спуститься к концу Подняться к началу
Персональная информация
qqqqq2
Добавлено 29.06.2016 09:56 Редактировалось 29.06.2016 09:59 Сообщение: 29
qqqqq2
0

Пункты: 5507
Регистрация: 29.04.2016
Из: Санкт-Петербург
Цитата

не надо EXE запускать на imx6! надо перекомпилировать свои исходники в бинарный код, который сможет запуститься на ARM..


Вот что выдает Mono Develop
http://i62.fastpic.ru/thumb/2016/0629/d6/d6cf5389c8b54046b9925283006dd5d6.jpeg]
Спуститься к концу Подняться к началу
Персональная информация
Jury093
Добавлено 29.06.2016 12:25 Сообщение: 30
Jury093
4.5

Пункты: 54233
Регистрация: 25.05.2009
Пол: Мужчина
Из: Санкт-Петербург
Цитата
Вот что выдает Mono Develop

то, что там в опциях указана платформа "Linux" не означает, что исполнимый код запустится на ARM imx6..
либо ищите в опциях вашей среды разработки слово "ARM", либо читайте доку к пакету этого IDE, либо инфу на форумах..

фух-х.. у меня ощущение что обсуждение ходит по кругу.. то ли я объясняю не доходчиво, то ли вы вопросы задаете не те..

может так погуглите: "how to run mono imx6" "how to run mono arm"

На любой вопрос есть любой ответ.
Спуститься к концу Подняться к началу
Персональная информация
Форум » starterkit.ru » Embedded Linux