Про сборку Ecos
Для сборки ecos нужно установить:
tk8.5 tk8.5-dev tcl tcl8.5-dev
При отсутсвии этих пакетов получим примерно следующие ошибки при сборке:
configure: error: unable to locate Tk config file tkConfig.sh
или:
error: unable to locate Tcl configuration file tclConfig.sh
Установка Ecos.
Допустим есть директория ecos-3.0 полученная из архива "ecos-3.0.i386linux.tar.bz2".
а) Создаем внутри ecos-3.0 директорию build и переходим в неё.
б) выполняем:
./../configure --prefix=$WORKING_DIR/ecosInstall --with-tcl-version=8.5
где:
--prefix это путь куда установить ecos после выполнения команды make install.
--with-tcl-version - номер версии.
в) выполняем:
make sudo make install
ecos установлен. Теперь доступна сборка приложений.
Про сборку Redboot
Пример сборки redboot для цели malta_mips32_4kc (MIPS Malta board with Mips32 4Kc processor).
Список доступных целей для сборки можно увидеть в ecos-3.0/packages/hal/
или выполнив команду:
export ECOS_REPOSITORY=PATH_TO_ecos-3.0/ecos-3.0/packages PATH_TO_ecosInstall/ecosInstall/bin/ecosconfig list
Также существует графическая версия ecosconfig - Configuration Tool из файла
"configtool-2.11-i386.tar.gz"
Сборка redboot
#) создаем директорию redboot
mkdir redboot
#) объявляем путь до файла ecos.db и путь до кросс-компилятора:
export ECOS_REPOSITORY=PATH_TO_ecos-3.0/ecos-3.0/packages export PATH=$PATH:PATH_TO_gnutools/gnutools_4.3.2/mipsisa32-elf/bin
#) создаем файл с конфигурацией сборки для данной цели:
PATH_TO_ecosInstall/ecosInstall/bin/ecosconfig new malta_mips32_4kc redboot
#) импортируем конфигурацию redboot для данной платформы:
PATH_TO_ecosInstall/ecosInstall/bin/ecosconfig import PATH_TO_ecos-3.0/ecos-3.0/packages/hal/mips/malta/v3_0/misc/redboot_RAM.ecm
#) обрабатываем конфликты:
PATH_TO_ecosInstall/ecosInstall/bin/ecosInstall/bin/ecosconfig resolve
#) создаем дерево проекта:
PATH_TO_ecosInstall/ecosInstall/binecosInstall/bin/ecosconfig tree
#) собираем:
make
После выполнения последней операции, образ redboot для прошивки будет будет распологаться в redboot/install/bin