Ник:
Пароль:

Контакты

E-mail: info@starterkit.ru
тел.: +7 922 680-21-73
тел.: +7 922 680-21-74
Телеграм: t.me/starterkit_ru

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

User Info


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

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

Ник:
Пароль:

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

ОбновитьПодробнееВсегоВсего:7
Форум » starterkit.ru » Embedded Linux
Как скомпилировать программу на С для SK-MAT91SAM9G45
sidalexsandr
Добавлено 24.12.2010 00:32
0
Сообщение: 1
sidalexsandr
0

Пункты: 1408
Регистрация: 21.11.2010
Прошу строго не судить. Форум читал, но остались вопросы.

На моей плате компилятор языка Си расположен по другому пути.
Вот путь: /usr/local/cross-gcc/arm-2007q1/arm-none-linux-gnueabi/bin. Непосредственно в самой папке bin находиться файл gcc.

Подскажите пожалуйста что мне набрать чтобы скомпилировать программу prog.c для отладочной платы?
Спуститься к концу Подняться к началу
Персональная информация
Jury093
Добавлено 24.12.2010 01:01 Редактировалось 24.12.2010 01:02 Сообщение: 2
Jury093
4.5

Пункты: 54271
Регистрация: 25.05.2009
Пол: Мужчина
Из: Санкт-Петербург
Цитата
Подскажите пожалуйста что мне набрать чтобы скомпилировать программу prog.c для отладочной платы?

взято отсюда
http://wiki.starterkit.ru/cross_compiler
попробуйте для статической сборки
/usr/local/cross-gcc/arm-2007q1/arm-none-linux-gnueabi/bin/gcc -static -o hello hello.c где все что до gcc можно вынести в переменную CC
а вместо "hello" напишите имя своей программы
напомню, что после копирования бинарника на плату надо проверить/дать права на запуск и запускать
./name-your-proga

На любой вопрос есть любой ответ.
Спуститься к концу Подняться к началу
Персональная информация
Hermes
Добавлено 24.12.2010 09:07 Сообщение: 3
Hermes
5

Пункты: 3383
Регистрация: 02.04.2010
добавлю что права на запуск задаются камандой:
Код
chmod +x /путь/до/ващей/программы
Спуститься к концу Подняться к началу
Персональная информация
Pavel Ivanchenko
Добавлено 24.12.2010 09:14 Сообщение: 4
Pavel Ivanchenko
Admin
4.39

Пункты: 92788
Регистрация: 24.03.2009
Пол: Мужчина
Цитата
Подскажите пожалуйста что мне набрать чтобы скомпилировать программу prog.c для отладочной платы?

Неужели сложно догадаться, для чего в виртуальной машине лежит пример hello world.
Спуститься к концу Подняться к началу
Персональная информация
sidalexsandr
Добавлено 24.12.2010 11:46 Сообщение: 5
sidalexsandr
0

Пункты: 1408
Регистрация: 21.11.2010
Всем спасибо.
Спуститься к концу Подняться к началу
Персональная информация
sidalexsandr
Добавлено 24.12.2010 11:47 Сообщение: 6
sidalexsandr
0

Пункты: 1408
Регистрация: 21.11.2010
Pavel Ivanchenko не знал что в виртуалке лежит пример hello world. Сейчас посмотрю где он.
Спуститься к концу Подняться к началу
Персональная информация
sidalexsandr
Добавлено 26.12.2010 16:35 Сообщение: 7
sidalexsandr
0

Пункты: 1408
Регистрация: 21.11.2010
Всем спасибо. Разобрался.

1) Кросс-компилятор для arm архитектуры находился на Linux , который шел в комплекте с платой SK-MAT91SAM9G45/M10.
Вот привожу запуск компиляции с путями:
/usr/local/cross-gcc/arm-2007q1/bin/arm-none-linux-gnueabi-gcc -static -o test.out test.c

Соответственно test.c имя программы которую компилирую
2) Дальше закачал на плату. На плате ввожу комманды:
cd католог-куда-записал-программу
chmod +x test.out
./test.out
Последняя комманда запускает соотвественно скомпилированную программу на плате.
Спуститься к концу Подняться к началу
Персональная информация
sidalexsandr
Добавлено 26.12.2010 16:36 Сообщение: 8
sidalexsandr
0

Пункты: 1408
Регистрация: 21.11.2010
Текстик программы из файла test.c:

#include <stdio.h>
main(void)
{
printf("Hello word\n");
}
Спуститься к концу Подняться к началу
Персональная информация
sidalexsandr
Добавлено 26.12.2010 16:39 Сообщение: 9
sidalexsandr
0

Пункты: 1408
Регистрация: 21.11.2010
1) Как записать /usr/local/cross-gcc/arm-2007q1/bin/ в переменную OC. И как потом запускать компиляцию?
2) Можно ли всю строку
/usr/local/cross-gcc/arm-2007q1/bin/arm-none-linux-gnueabi-gcc -static -o test.out test.c

записать в скрипт и потом для запуска компиляции вызывать созданный скрипт?
Спуститься к концу Подняться к началу
Персональная информация
Jury093
Добавлено 26.12.2010 20:53 Сообщение: 10
Jury093
4.5

Пункты: 54271
Регистрация: 25.05.2009
Пол: Мужчина
Из: Санкт-Петербург
Цитата
1) Как записать /usr/local/cross-gcc/arm-2007q1/bin/ в переменную OC. И как потом запускать компиляцию?
2) Можно ли всю строку
/usr/local/cross-gcc/arm-2007q1/bin/arm-none-linux-gnueabi-gcc -static -o test.out test.c

записать в скрипт и потом для запуска компиляции вызывать созданный скрипт?

в консоли виртуальной машины дайте команду set
и исследуйте переменную PATH
в гугле наберите export path и смотрите в контексте "линукс"
посмотрите содержимое Makefile в примере Hello World, тот что посоветовал Павел..

зы зачем ключ -static можно почитать на форуме или в ближайшем линукс-сообществе

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