Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Проблема со сборкой компилятора gcc c помощью скриптов crosstool под Cywin
Форум на CrossPlatform.RU > Разработка > Инструменты разработчика
Goliath
У меня стоит задача настроить под Windows 7 кросс компилятор под платформу Linux для различных Embedded устройств (пока неважно каких, но там разные платформы). Я поискал в интернете материалы по этой теме. И пока оставил свой выбор на UNIX-подобной среде для Windows - Cygwin (установил его и т.д.). Я нашел на sourceforge.net вот ссылка уже собранный gcc компилятор (но у него версии 3.3.6, а версия библиотеки 2.3.2). В перспективе мне вообще нужны будут разные версии компиляторов.

Сейчас, в данный момент, мне нужно найти (собрать как я понимаю) хотя бы кросс компилятор gcc версии 3.4.3 и версией библиотеки glib 2.3.4 для i386 для Cygwin.

Я пользуюсь инструкцией вот на этом сайте:
http://kegel.com/crosstool/crosstool-0.43/...owto.html#quick

Скачал crosstool-0.43.tar.gz, распаковал его. Зашел в распакованную папку. Сделал файл копию файла demo-i686.sh и назвал его demo-i386.sh. Подправил немного скрипт. Поставил как раз то, что мне нужно:
eval `cat i386.dat gcc-3.4.3-glibc-2.3.4.dat` sh all.sh --notest


содержимое файла demo-i386.sh:
#!/bin/sh
# This script has one line for each known working toolchain
# for this architecture.  Uncomment the one you want.
# Generated by generate-demo.pl from buildlogs/all.dats.txt

set -ex
TARBALLS_DIR=/opt/crosstool
RESULT_TOP=/opt/crosstool
export TARBALLS_DIR RESULT_TOP
GCC_LANGUAGES="c,c++"
export GCC_LANGUAGES

# Really, you should do the mkdir before running this,
# and chown /opt/crosstool to yourself so you don't need to run as root.
mkdir -p $RESULT_TOP

eval `cat i386.dat gcc-3.4.3-glibc-2.3.4.dat` sh all.sh --notest

echo Done.


Папка /opt/crosstool есть. Запускаю его в Cygwin этот скрипт:
sh demo-i686.sh


В конце выдаётся ошибка, что файлы не найдены. Вот я сделал скрин лога (извиняюсь что большой, но вполне читаемый, если увеличить):
http://i.imgur.com/NSvkt.png

В чём тут проблемы? Кто-нибудь делал что-то похожее?
Я пробовал уже которые demo скрипты запускать - аналогично, тоже самое всё. Т.е. выполняется, скачивается, а в конце - файлы не найдены.

Спасибо заранее за ответы.
igor_bogomolov
Ссылка которую ты привел, древняя как мир. Можно посмотреть их скрипты и почитать доки для ознакомления, но навряд ли ты что-нибудь ими соберешь.
Если ищешь готовый инструмент для сборки, посмотри на ptxdist или crostool-ng. Хотя всё это под Linux и на вряд ли они заведутся под Windows, хотя я пока этого не проверял.

Собственно, передо мной стоит та же задача. Правда она для меня не срочная и не приоритетная, поэтому в ближайшее время я не собирался ей заниматься.
В соседней теме я уже выкладывал собственные скрипты для сборки arm тулчейна под Linux. Можешь попытаться воспользоваться ими, как заготовкой (все строки с пропатчиванием исходников можешь опустить, они не обязательны).
Iron Bug
в каком каталоге реально лежит /opt/crosstool? в пути до него не должно быть пробелов.
под семёркой не знаю, но раньше ещё было ограничение на имя файа до 240 символов и он ругался, если его запускать из каталога с длинным именем.
Goliath
Цитата(igor_bogomolov @ 20.9.2011, 21:53) *
Ссылка которую ты привел, древняя как мир. Можно посмотреть их скрипты и почитать доки для ознакомления, но навряд ли ты что-нибудь ими соберешь.
Если ищешь готовый инструмент для сборки, посмотри на ptxdist или crostool-ng. Хотя всё это под Linux и на вряд ли они заведутся под Windows, хотя я пока этого не проверял.

Собственно, передо мной стоит та же задача. Правда она для меня не срочная и не приоритетная, поэтому в ближайшее время я не собирался ей заниматься.
В соседней теме я уже выкладывал собственные скрипты для сборки arm тулчейна под Linux. Можешь попытаться воспользоваться ими, как заготовкой (все строки с пропатчиванием исходников можешь опустить, они не обязательны).

как не странно собрал всё, что нужно и компилятор нормально работает.
Мне нужно именно, чтобы завелось под Windows. Я всё протестил. Нормально компилится под Windows. Теперь у меня стоит другая задача. Запустить из моего Windows приложения Cygwin и передать в его bash Cygwin необходимую команду и выполнить её (тут подразумевается команда компиляции необходимых файлов тем компилятором который я установил). Сижу думаю как это сделать.
Iron Bug
Цитата(Goliath @ 22.9.2011, 15:57) *
Запустить из моего Windows приложения Cygwin и передать в его bash Cygwin необходимую команду и выполнить её

дык, стандартными средствами венды (смотря в чём пишешь), вызов:

<бла-бла-бла>\cygwin\bin\bash.exe --login -i -c <команда>

(обязательно из каталога \cygwin\bin\)

вообще, man bash внутри cygwin - там всё это подробно описано.
igor_bogomolov
Цитата(Goliath @ 22.9.2011, 13:57) *
как не странно собрал всё, что нужно и компилятор нормально работает.
У меня тогда вопрос: подцепляются ли библиотеки собранные кросс компилятором на Windows?
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Форум IP.Board © 2001-2024 IPS, Inc.