реклама на сайте
подробности

 
 
> Создание u-boot для LPC2468 с помощью cygwin
mempfis_
сообщение Nov 8 2012, 20:03
Сообщение #1


Профессионал
*****

Группа: Свой
Сообщений: 1 001
Регистрация: 27-06-06
Пользователь №: 18 409



Всем добрый день/вечер/ночь.
Хочу освоить OS Linux для embedded-использования.
На данном этапе разобрался что для использования линукса необходимо чтобы в процессоре жил u-boot и гдето, где есть место, хранилось ядро.
Для начала хочу разобраться с созданием u-boot для LPC2468.
Из примеров есть u-boot-1.3.2 от Olimex.
Для сборки u-boot установил cygwin со встроенным компилятором arm-uclinux-tools-base-gcc3.4.0-20040713.
В папке cygwin создал папку my_uboot а в ней u-boot-1.3.2-olimex в которую распаковал соответствующий архив.

Запускаю cygwin, перехожу в нужную папку и подаю команду make. Привожу результат на картинке.
Для меня этот набор информаии пока что как тёмный лес.
Вопрос к знающим что там не так? Что почитать чтобы в голове прояснилось?
Уже прочитал Gettin strted with uCLinux от Embedded Artist и uboot от NXP.
Облазил yandex/google (где нашёл что под виндой можно использовать cygwin).
Всёравно пока что моих знаний недостаточно чтобы разобраться что к чему и создать свой первый u-boot.
При необходимости могу выложить нужные файлы из архива.
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
alx2
сообщение Nov 9 2012, 11:00
Сообщение #2


Местный
***

Группа: Участник
Сообщений: 340
Регистрация: 25-10-05
Из: Пермь, Россия
Пользователь №: 10 091



Цитата(mempfis_ @ Nov 9 2012, 01:03) *
перехожу в нужную папку и подаю команду make. Привожу результат на картинке.
Вопрос к знающим что там не так? Что почитать чтобы в голове прояснилось?

Во-первых, как Вам уже подсказали, система не находит arm-elf-gcc. Скорее всего директорий, в котором он находится, не включен в переменную path. Или, если имя файла компилятора у Вас иное, установите правильно переменную окружения HOSTCC или оказывайте имя в командной строке make (HOSTCC=как-там-его-gcc), как это описано в разделе Building the Software файла README u-boot'а.

Во-вторых, согласно написанному в файле README, для его сборки надо говорить не просто "make", а "make BOARD_config", где BOARD - имя вашей платы, по которому будет подключен соответствующий файл конфигурации из каталога include/configs/. Если готовой конфигурации для вашей платы нет, придется ее сделать (проще всего взять за основу конфигурацию от какой-нибудь максимально похожей платы и исправить нужное)... Вот как-то так. sm.gif

Почитать - общий README в корне u-boot'а и README для вашей платформы в каталоге doc.

И еще, make - это программа, выполняющая сборку. А файл, в котором описаны правила сборки, называется Makefile.

Наконец, присоединяюсь к совету перенести всю сборку на linux. Там Вы сможете использовать готовые фреймворки для сборки всей системы, например OpenEmbedded. Непонятно, зачем Вам нужен доступ из виртуальной машины к файлам хост-машины. Наоборот, положите все нужные файлы на файловую систему виртуальной машины с linux и там собирайте.

Цитата(Lotor @ Nov 9 2012, 09:25) *
Не собирал такое, но из картинки видно, что в make файле прописан компилятор arm-alf-gcc, т.е. Вы используете не ту toolchain похоже.

В Makefile имя компилятора не прописано. Там используется значение переменной HOSTCC.

Сообщение отредактировал alx2 - Nov 9 2012, 11:18


--------------------
Всего наилучшего,
Alex Mogilnikov
Go to the top of the page
 
+Quote Post
mempfis_
сообщение Nov 9 2012, 15:29
Сообщение #3


Профессионал
*****

Группа: Свой
Сообщений: 1 001
Регистрация: 27-06-06
Пользователь №: 18 409



Цитата
Наконец, присоединяюсь к совету перенести всю сборку на linux. Там Вы сможете использовать готовые фреймворки для сборки всей системы, например OpenEmbedded. Непонятно, зачем Вам нужен доступ из виртуальной машины к файлам хост-машины. Наоборот, положите все нужные файлы на файловую систему виртуальной машины с linux и там собирайте.


Я не против собирать всё в виртуальной машине или чистом линуксе. Но в данный момент я не могу поставить линукс на компьютер. Вместо него поставил виртуальную машину Vmplayer и запустил Debian 5. Так вот в Debian я не могу добраться до архива компилятора и исходников u-boot которые положил в общие папки.
В настройках виртуальной машини прописал
Код
sharedFolder0.present = "TRUE"
sharedFolder0.enabled = "TRUE"
sharedFolder0.readAccess = "TRUE"
sharedFolder0.writeAccess = "TRUE"
sharedFolder0.hostPath = "D:\!!!linux\shared\temp\"
sharedFolder0.guestName = "host_temp"
sharedFolder0.expiration = "never"
sharedFolder1.present = "TRUE"
sharedFolder1.enabled = "TRUE"
sharedFolder1.readAccess = "TRUE"
sharedFolder1.writeAccess = "TRUE"
sharedFolder1.hostPath = "D:\!!!linux\shared\dev\"
sharedFolder1.guestName = "host_dev"
sharedFolder1.expiration = "never"
sharedFolder.maxNum = "2"
isolation.tools.hgfs.disable = "FALSE"


Всё приблизительно как в Getting_started_with_uClinux_A.pdf

По поводу cygwin.

Залез в Makefile, нашёл строку
Код
ifeq ($(ARCH),arm)
CROSS_COMPILE = arm-elf- //тут стояло arm-linux-
endif


Также нашёл несколько конфигураций

Код
lpc_e2294_config:    unconfig    
    @$(MKCONFIG) $(@:_config=) arm arm720t lpc_e2294 NULL lpc2292

lpc_e2468_config: unconfig
    @$(MKCONFIG) $(@:_config=) arm arm720t lpc_e2468 NULL lpc2468

lpc_2478_stk_config: unconfig
    @$(MKCONFIG) $(@:_config=) arm arm720t lpc_2478_stk NULL lpc2468


Для теста подаю команду make lpc_2478_stk_config
Для этой и для других конфигураций возникает ошибка как на картинке.
Go to the top of the page
 
+Quote Post
alx2
сообщение Nov 12 2012, 05:32
Сообщение #4


Местный
***

Группа: Участник
Сообщений: 340
Регистрация: 25-10-05
Из: Пермь, Россия
Пользователь №: 10 091



Цитата(mempfis_ @ Nov 9 2012, 20:29) *
В настройках виртуальной машини прописал
....
Всё приблизительно как в Getting_started_with_uClinux_A.pdf

Лень читать этот документ, извините. Лично мое мнение - Вам не shared-folders надо настраивать, а сеть. Чтобы гостевая система имела доступ в интернет. Потом просто скачиваете из интернета нужные Вам исходники (через git, svn, ftp, http и все что угодно) прямо в файловую систему виртуальной машины. И собираете там же. А хост-система пусть используется только в качестве терминала. Никакие исходники на хост-системе хранить не надо...

И еще: не могли бы Вы сообщения об ошибках копировать сюда в виде текста, а не картинки-скриншота? А то очень неудобно сообщения из картинок читать...

Сообщение отредактировал alx2 - Nov 12 2012, 05:36


--------------------
Всего наилучшего,
Alex Mogilnikov
Go to the top of the page
 
+Quote Post



Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 30th July 2025 - 15:16
Рейтинг@Mail.ru


Страница сгенерированна за 0.01426 секунд с 7
ELECTRONIX ©2004-2016