Сергей Борщ 134 16 мая, 2008 Опубликовано 16 мая, 2008 · Жалоба Итак. Оно собралось. Даже компилирует. Пока обнаружил один косяк - gcc не подлинковывает автоматом crt430x261x.o. Для 241х все нормально. Ошибку исправил, пошлю им патч - судя по рассылке там началась некоторая активность. Не нравится, что собирается оно из цыгвина. Если кто имеет опыт легкого перевода сборки из-под цыгвина на MinGW - буду благодарен. Еще не понравилось - все файлы исходников и документации в сборке под винду имеют линуксовые переводы строк. Неплохо бы их конвертить при генерации инсталятора. ------------------------------------------------- Инструкция, если кому-то захочется собрать тоже. 1) Ставим cygwin (желательно в c:\cygwin, иначе придется править файлы .nsi) 2) Запускаем setup от cygwin, проверяем, что стоят cvs, binutils, gcc, libintl2 (в ней живет cygintl-2.dll) diffutils patch !!!! Проверяем, что не стоит python(чтобы вызывался python из виндовса, в котором есть py2exe. py2exe под цыгвин не бывает) 3) Ставим под винду: Python: http://www.python.org/download/ py2exe: http://sourceforge.net/project/py2exe/ pywin32: http://sourceforge.net/projects/pywin32/ NSIS: http://puzzle.dl.sourceforge.net/sourcefor...-2.37-setup.exe 4) Вытягиваем исходники из cvs: mkdir mspgcc/sf cd mspgcc/sf export CVSROOT=:pserver:[email protected]:/cvsroot/mspgcc export CVS_RSH=ssh cvs login (на запрос пароля жмем Enter) cvs checkout . 5) создаем в цыгвине директорию /opt/mspgcc (не знаю зачем, но так написано в их инструкции) mkdir /opt/mspgcc 6) (этот шаг пропустить, патчи уже внесены в cvs репозиторий mspgcc) копируем патчи в ~/mspgcc/sf/packages/patches отсюда: http://homepages.inf.ed.ac.uk/mbarnes/msp_patch/ makefile сохраняем в ~/mspgcc/sf/packages 7) скачиваем с сайта и кладем в ~/mspgcc/sf/packaging файлы, которые пока не строятся автоматически: mspgcc-faq.pdf, mspgcc-manual.pdf. msp430-gdbproxy.exe msp430.dll 8) создаем директории: make folders 9) у меня wget отказался скачивать исходники (я за проксей), поэтому исходники (binutils-2.17.tar.bz2, gcc-core-3.2.3.tar.bz2, gcc-g++-3.2.3.tar.bz2) я скачал с http://ftp.gnu.org/gnu в ~/mspgcc/packages/archives вручную оперой. gdb-6.0.tar.gz2 лежит на ftp://ftp.sources.redhat.com/pub/gdb/old-releases 10) Если python версии 2.5 или выше, то: - удаляем в ~/mspgcc/sf/packages/mspgcc-full-install.nsi ссылки на zlib.py - заменяем ссылки: python24.dll -> python25.dll (или на соответствующий версии питона) PyWinTypes24.dll -> PyWinTypes25.dll ( --//-- ) Если cygwin ставили не в c:\cygwin, то правим ссылки на него в mspgcc-base.nsh, mspgcc-full-install.nsi 11) идем в ~/mspgcc/packages и запускаем строительство: make build-installer Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
klen 1 17 мая, 2008 Опубликовано 17 мая, 2008 · Жалоба . Если кто имеет опыт легкого перевода сборки из-под цыгвина на MinGW - буду благодарен. а проблема в чем? все также Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Сергей Борщ 134 20 мая, 2008 Опубликовано 20 мая, 2008 · Жалоба а проблема в чем? все также Ну например вот: c:/serzh/MSPGCC/sf/PACKAG~1/build/gcc-3.2.3/gcc/./collect2.c:461: undefined reference to `kill' c:/serzh/MSPGCC/sf/PACKAG~1/build/gcc-3.2.3/gcc/./collect2.c:461: undefined reference to `kill' collect2.o: In function `scan_prog_file': c:/serzh/MSPGCC/sf/PACKAG~1/build/gcc-3.2.3/gcc/./collect2.c:2107: undefined reference to `pipe' c:/serzh/MSPGCC/sf/PACKAG~1/build/gcc-3.2.3/gcc/./collect2.c:2130: undefined reference to `fork' Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
MrYuran 22 30 декабря, 2008 Опубликовано 30 декабря, 2008 · Жалоба Решил повторить этот подвиг. Вопрос по п.2 2) Запускаем setup от cygwin, проверяем, что стоят cvs, binutils, gcc, libintl2 (в ней живет cygintl-2.dll) diffutils patch Где проверяем и как? Сорри за тупые вопросы, до меня просто как до жирафа обычно доходит... А поколупать хочется... Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Сергей Борщ 134 30 декабря, 2008 Опубликовано 30 декабря, 2008 · Жалоба Решил повторить этот подвиг. Вопрос по п.2 При запуске setup он предложит выбрать устанавливаемые пакеты. Вот там и убедиться, что названные пакеты установлены. Этот сетап можно запускать сколько угодно раз, добавляя/убирая пакеты. Вообще, эта инструкция несколько устарела. Сейчас mspgcc собирается не под cygwin, а под msys. Поэтому технология несколько изменилась. 1) Ставите msys, mingw32, python 2) cvs -d:pserver:[email protected]:/cvsroot/mspgcc login 3) в TortoiseCVS проходит cvs -z3 -d:pserver:[email protected]:/cvsroot/mspgcc co . 3a) с командной строки приходится вытягивать каждый модуль отдельно: cvs -z3 -d:pserver:[email protected]:/cvsroot/mspgcc co packaging cvs -z3 -d:pserver:[email protected]:/cvsroot/mspgcc co gcc cvs -z3 -d:pserver:[email protected]:/cvsroot/mspgcc co msp430-libc cvs -z3 -d:pserver:[email protected]:/cvsroot/mspgcc co docs cvs -z3 -d:pserver:[email protected]:/cvsroot/mspgcc co libraries cvs -z3 -d:pserver:[email protected]:/cvsroot/mspgcc co libmspgcc cvs -z3 -d:pserver:[email protected]:/cvsroot/mspgcc co python 4) в packaging добавляю в makefile в самое начало строчки WINDIR=1 export WINDIR MSYSCON=1 export MSYSCON PWD=$(shell pwd) 5) make folders 6) в создавшуюся packaging/archives копируем binutils-2.18.tar.bz2, gcc-core-3.2.3.tar.bz2, gcc-g++-3.2.3.tar.bz2, gdb-6.8.tar.bz2 7) make build в packaging/build/installed получается собранный пакет, но без инсталятора. Его можно копировать в нужное место и прописывать в path путь к его папке bin. Или не копировать. Инсталятор пока не освоил - не смог с налета собрать документацию. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
MrYuran 22 3 апреля, 2009 Опубликовано 3 апреля, 2009 · Жалоба Вообще, эта инструкция несколько устарела. Сейчас mspgcc собирается не под cygwin, а под msys. Поэтому технология несколько изменилась. 1) Ставите msys, mingw32, python Откуда такая информация? Официальная инструкция, датированная февралём 2009, об этом умалчивает. Там правда, предлагается всё скачать с редхэта и гну.орг, может, это оно и есть, я пока в таких тонкостях не ориентируюсь... 2) cvs -d:pserver:[email protected]:/cvsroot/mspgcc login Вот что получилось: C:\Program Files\CVSNT>cvs -d:pserver:[email protected]:/cvsr oot/mspgcc login Logging in to :pserver:[email protected]:2401:/cvsroot/mspgcc CVS Password: <Enter> cvs [login aborted]: Error reading from server mspgcc.cvs.sourceforge.net: 0: No such file or directory C:\Program Files\CVSNT> У меня подозрение, что сисадмин порты режет... Насколько я понимаю, нужно открыть порт 2401? ######## Перетёр с админом, картинка поменялась: CVS Password: connect to mspgcc.cvs.sourceforge.net:2401 failed: Попытка установить соединение была безуспешной, т.к. от другого компьютера за требуемое время не получен нужн ый отклик, или было разорвано уже установленное соединение из-за неверного откли ка уже подключенного компьютера. C:\Program Files\CVSNT> на -z3 такая же реакция. Ладно, попробую ещё дома. Там сам себе одмин :) Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Сергей Борщ 134 3 апреля, 2009 Опубликовано 3 апреля, 2009 · Жалоба Откуда такая информация? Официальная инструкция, датированная февралём 2009, об этом умалчивает. Там правда, предлагается всё скачать с редхэта и гну.орг, может, это оно и есть, я пока в таких тонкостях не ориентируюсь... Из дистрибутива пропал cygwin.dll, зато появился msys-1.0.dll. В патч binutils для 430x включена правка objdump именно для msys. В глобальном makefile bp packaging есть строки "if MSYSCON". Да и сам я его так собираю. connect to mspgcc.cvs.sourceforge.net:2401 failed: Попытка установить соединение была безуспешной, т.к. от другого компьютера за требуемое время не получен нужн ый отклик, или было разорвано уже установленное соединение из-за неверного откли ка уже подключенного компьютера. C:\Program Files\CVSNT> А вы не через проксю ходите случайно? У меня аналогичное поведение дома. Через проксю cvs в режиме pserver не работает. Точнее ходят слухи, что работает cvs -d:pserver;proxy=proxyhost;proxyport=8080:[email protected]: но мне из дома так и не удалось. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
MrYuran 22 3 апреля, 2009 Опубликовано 3 апреля, 2009 · Жалоба А вы не через проксю ходите случайно? У меня аналогичное поведение дома. Через проксю cvs в режиме pserver не работает. Точнее ходят слухи, что работает cvs -d:pserver;proxy=proxyhost;proxyport=8080:[email protected]: но мне из дома так и не удалось. Да, через корпоративную проксю :( Ну да бог с ним. Дома проверю. Хотя и там наверняка что-нето прикручено (JDSL) Ещё вот давно такой вопрос мучает: почему mspgcc "засохло" на версии GCc 3.4 ? Почему AVR-GCC (и WinAVR) включен в основной состав и шагает в ногу с основным проектом? Что за дискриминация? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
klen 1 3 апреля, 2009 Опубликовано 3 апреля, 2009 · Жалоба Ещё вот давно такой вопрос мучает: почему mspgcc "засохло" на версии GCc 3.4 ? Почему AVR-GCC (и WinAVR) включен в основной состав и шагает в ногу с основным проектом? Что за дискриминация? оно не само шагает, это мы c Вами его и шагаем :), если mspgcc "никто его шагать" нехочет то наверно он не сильно нужен... Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Сергей Борщ 134 4 апреля, 2009 Опубликовано 4 апреля, 2009 · Жалоба Ещё вот давно такой вопрос мучает: почему mspgcc "засохло" на версии GCc 3.4 ? Почему AVR-GCC (и WinAVR) включен в основной состав и шагает в ногу с основным проектом? И с каждым обновлением avr-gcc появляются стоны "проект стал больше". Где-то в рассылке по mspgcc проскакивало обсуждение, резюме было примерно таким - с точки зрения компактности кода gcc 3.x лучше, а поскольку в embedded-устройствах память - весьма ценный ресурс, то переход на 4.x был признан непреспективным. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
MrYuran 22 6 апреля, 2009 Опубликовано 6 апреля, 2009 · Жалоба Ну да бог с ним. Дома проверю. Как и предполагалось, дома всё прошло на ура. Черепашка с точкой вместо имени модуля выкачала из репозитория всё что только можно за минуту. Ладно, идём далее. Выдержка из официальной инструкции: tar --bzip2 -xf binutils-2.19.tar.bz2 //Распаковываем? mkdir build-binutils //Создаём build-binutils cd binutils-2.10 //Переходим в binutils-2.10 (а откуда оно взялось?) patch -p1 < ../packaging/patches/binutils-2.19.patch //Чё-то патчим cd ../build-binutils //Переходим в папку build-binutils (пустую?) ../binutils-2.19/configure --target=msp430 --prefix=/usr/local/msp430 //Не понимаю make //Чё-то собираем su //? Я так понял в винде не нужно make install //Тоже непонятно Понятно, конечно, что сначала нужно хотя бы бегло ознакомиться с общими понятиями гнушных технологий, но хочется прям вот щас снаскоку пусть даже обезьянкиным пошаговым методом чего-нибудь сотворить, а потом уже методом научных тыков исследовать вглубь и вширь. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Сергей Борщ 134 6 апреля, 2009 Опубликовано 6 апреля, 2009 · Жалоба Понятно, конечно, что сначала нужно хотя бы бегло ознакомиться с общими понятиями гнушных технологий, но хочется прям вот щас снаскоку пусть даже обезьянкиным пошаговым методом чего-нибудь сотворить, а потом уже методом научных тыков исследовать вглубь и вширь. cvs up -r MSP430X cd packaging make folders binutils gcc gdb Получаете построенный инструмент в packaging/build/installed. Поддержка 430Х пока привязана к binutils 2.18, впрочем он должен все необходимое выкачать сам. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
mdmitry 0 3 октября, 2009 Опубликовано 3 октября, 2009 · Жалоба cvs -z3 -d:pserver:[email protected]:/cvsroot/mspgcc co libmspgcc Не находит. При просмотре по веб-интерфейсу не видно такого пакета. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Сергей Борщ 134 5 октября, 2009 Опубликовано 5 октября, 2009 · Жалоба Не находит. При просмотре по веб-интерфейсу не видно такого пакета.То ли я ошибся, то ли что-то изменилось, но для строительства libmspgcc используется модуль jtag: cvs -z3 -d:pserver:[email protected]:/cvsroot/mspgcc co jtag Но он вам скорее всего не нужен - это работа со старыми кристаллами, поддержки новых в обозримом будущем не будет. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
mdmitry 0 5 октября, 2009 Опубликовано 5 октября, 2009 · Жалоба То ли я ошибся, то ли что-то изменилось, но для строительства libmspgcc используется модуль jtag: cvs -z3 -d:pserver:[email protected]:/cvsroot/mspgcc co jtag Но он вам скорее всего не нужен - это работа со старыми кристаллами, поддержки новых в обозримом будущем не будет. спасибо, попробую подсунуть модуль jtag, в логе на него были указания. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться