razob 0 28 мая, 2014 Опубликовано 28 мая, 2014 · Жалоба Потихоньку разбираюсь с программированием процессоров ST и на данный момент добрался до этапа сборки ядра. После конфигурирования ядра через configmenu я запускаю сборку, и вот что я на выходе получаю: [root@localhost linux-sh4]# make ARCH=sh CROSS_COMPILE=sh4-linux- vmlinux make: sh4-linux-gcc: Команда не найдена CHK include/linux/version.h make[1]: `include/asm-sh/machtypes.h' не требует обновления. CHK include/linux/utsrelease.h SYMLINK include/asm -> include/asm-sh CC kernel/bounds.s /bin/sh: sh4-linux-gcc: команда не найдена make[1]: *** [kernel/bounds.s] Ошибка 127 make: *** [prepare0] Ошибка 2 [root@localhost linux-sh4]# Как я понимаю, не хватает собственно компилятора gcc. Однако мне никак не удаётся его установить. Из мануала ( http://www.stlinux.com/install/getting-sta...lling-gnu-tools ) следует, что данный пакет именуется stlinuxXX-cross-sh4-gcc или, в моём случае, stlinux24-cross-sh4-gcc. Пытаюсь его установить через yum: [root@localhost linux-sh4]# yum install stlinux24-cross-sh4-gcc Загружены модули: langpacks Выполнять нечего [root@localhost linux-sh4]# Вотъ... Как будто такого пакета нет вовсе, хотя обычно в этом случае yum нормальное сообщение выдаёт. Как быть? ЗЫ работаю в Fedora20 Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
msalov 0 29 мая, 2014 Опубликовано 29 мая, 2014 · Жалоба Эти пакеты не лежат в общем репозитарии, а есть в дистрибутиве STLinux. Ставить их надо командой yum localinstall /path/to/rpm/stlinux24-cross-sh4-binutils-2.19.1-41.i386.rpm Скачать пакеты можно отсюда ftp://ftp.stlinux.com/pub/stlinux/2.4/STLinux/sh4/ по одному Или целиком образ диска отсюда ftp://ftp.stlinux.com/pub/stlinux/2.4/iso/ Вероятно можно подключить репозитарий к yum, что б он сам разрешал зависимости: ftp://ftp.stlinux.com/pub/stlinux/2.4/ или ftp://ftp.stlinux.com/pub/stlinux/2.4/STLinux/ Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
razob 0 29 мая, 2014 Опубликовано 29 мая, 2014 · Жалоба msalov, спасибо за наводку. Теперь я хотя бы знаю, где эти пакеты можно найти. Однако установить их не получается: [root@localhost linux-sh4]# yum localinstall ftp://ftp.stlinux.com/pub/stlinux/2.4/STLinux/sh4/stlinux24-cross-sh4-binutils-2.19.1-41.i386.rpm Загружены модули: langpacks stlinux24-cross-sh4-binutils-2.19.1-41.i386.rpm | 5.2 MB 00:00:06 Проверка /var/tmp/yum-root-lNF1lT/stlinux24-cross-sh4-binutils-2.19.1-41.i386.rpm: stlinux24-cross-sh4-binutils-2.19.1-41.i386 /var/tmp/yum-root-lNF1lT/stlinux24-cross-sh4-binutils-2.19.1-41.i386.rpm: не обновляет установленный пакет. Выполнять нечего [root@localhost linux-sh4]# а вот с другой пакет: yum localinstall ftp://ftp.stlinux.com/pub/stlinux/2.4/STLinux/sh4/stlinux24-sh4-gcc-4.3.4-66.sh4.rpm Загружены модули: langpacks stlinux24-sh4-gcc-4.3.4-66.sh4.rpm | 5.7 MB 00:00:07 Проверка /var/tmp/yum-root-lNF1lT/stlinux24-sh4-gcc-4.3.4-66.sh4.rpm: stlinux24-sh4-gcc-4.3.4-66.sh4 Невозможно добавить пакет ftp://ftp.stlinux.com/pub/stlinux/2.4/STLinux/sh4/stlinux24-sh4-gcc-4.3.4-66.sh4.rpm в список действий. Несовместимая архитектура: sh4 Выполнять нечего [root@localhost linux-sh4]# Самое не приятное то, что согласно мануалу, эти компиляторы должны были установиться автоматом (это верно для версии 2.4, которую я и ставлю). Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
msalov 0 29 мая, 2014 Опубликовано 29 мая, 2014 · Жалоба Раз не ставит cross-пакет, значит он уже установлен. Осталось дело за малым - узнать куда он стал. Сделайте rpm -qlp stlinux24-cross-sh4-binutils-2.19.1-41.i386.rpm | grep sh4-linux-ld С большой долей вероятности там будут строка /opt/STM/STLinux-2.4/devkit/sh4/bin/sh4-linux-ld Значит вам надо добавить /opt/STM/STLinux-2.4/devkit/sh4/bin/ к переменной окружения PATH при запуске make. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
DASM 0 30 мая, 2014 Опубликовано 30 мая, 2014 · Жалоба очень не советую компиляторы кидать в /opt. Лучше в юзерскую папку какую-нибудь. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
mdmitry 0 31 мая, 2014 Опубликовано 31 мая, 2014 · Жалоба очень не советую компиляторы кидать в /opt. Лучше в юзерскую папку какую-нибудь. Поясните, пожалуйста, причины. Codesourcery туда любит по умолчанию устанавливаться. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
razob 0 3 июня, 2014 Опубликовано 3 июня, 2014 · Жалоба msalov, спасибо за наводку - получилось продвинуться чуть дальше. Выполнил конфигурирование ядра STLinux, - практически всё оставил по умолчанию, изменил только тип процессора. И запускаю компиляцию: [root@localhost linux-sh4]# make ARCH=sh CROSS_COMPILE=/opt/STM/STLinux-2.4/devkit/sh4/bin/sh4-linux- vmlinux scripts/kconfig/conf -s arch/sh/Kconfig # # configuration written to .config # CHK include/linux/version.h make[1]: `include/asm-sh/machtypes.h' не требует обновления. CHK include/linux/utsrelease.h SYMLINK include/asm -> include/asm-sh CALL scripts/checksyscalls.sh CHK include/linux/compile.h CC init/do_mounts.o sh4-linux-gcc: ошибка: unrecognized command line option «-m32» /opt/STM/STLinux-2.4/devkit/sh4/bin/sh4-linux-ld: cannot find init/.tmp_mc_do_mounts.o: Нет такого файла или каталога mv: не удалось выполнить stat для «init/.tmp_mx_do_mounts.o»: Нет такого файла или каталога rm: невозможно удалить «init/.tmp_mc_do_mounts.o»: Нет такого файла или каталога LD init/mounts.o LD init/built-in.o CC arch/sh/kernel/machvec.o sh4-linux-gcc: ошибка: unrecognized command line option «-m32» /opt/STM/STLinux-2.4/devkit/sh4/bin/sh4-linux-ld: cannot find arch/sh/kernel/.tmp_mc_machvec.o: Нет такого файла или каталога /opt/STM/STLinux-2.4/devkit/sh4/bin/sh4-linux-objcopy: 'arch/sh/kernel/.tmp_mx_machvec.o': No such file rm: невозможно удалить «arch/sh/kernel/.tmp_mx_machvec.o»: Нет такого файла или каталога rm: невозможно удалить «arch/sh/kernel/.tmp_mc_machvec.o»: Нет такого файла или каталога CC arch/sh/kernel/nmi_debug.o sh4-linux-gcc: ошибка: unrecognized command line option «-m32» /opt/STM/STLinux-2.4/devkit/sh4/bin/sh4-linux-ld: cannot find arch/sh/kernel/.tmp_mc_nmi_debug.o: Нет такого файла или каталога /opt/STM/STLinux-2.4/devkit/sh4/bin/sh4-linux-objcopy: 'arch/sh/kernel/.tmp_mx_nmi_debug.o': No such file rm: невозможно удалить «arch/sh/kernel/.tmp_mx_nmi_debug.o»: Нет такого файла или каталога rm: невозможно удалить «arch/sh/kernel/.tmp_mc_nmi_debug.o»: Нет такого файла или каталога CC arch/sh/kernel/cpu/sh4/cpufreq-stm_cpu_clk.o sh4-linux-gcc: ошибка: unrecognized command line option «-m32» /opt/STM/STLinux-2.4/devkit/sh4/bin/sh4-linux-ld: cannot find arch/sh/kernel/cpu/sh4/.tmp_mc_cpufreq-stm_cpu_clk.o: Нет такого файла или каталога /opt/STM/STLinux-2.4/devkit/sh4/bin/sh4-linux-objcopy: 'arch/sh/kernel/cpu/sh4/.tmp_mx_cpufreq-stm_cpu_clk.o': No such file rm: невозможно удалить «arch/sh/kernel/cpu/sh4/.tmp_mx_cpufreq-stm_cpu_clk.o»: Нет такого файла или каталога rm: невозможно удалить «arch/sh/kernel/cpu/sh4/.tmp_mc_cpufreq-stm_cpu_clk.o»: Нет такого файла или каталога LD arch/sh/kernel/cpu/sh4/built-in.o /opt/STM/STLinux-2.4/devkit/sh4/bin/sh4-linux-ld: cannot find arch/sh/kernel/cpu/sh4/cpufreq-stm_cpu_clk.o: Нет такого файла или каталога make[3]: *** [arch/sh/kernel/cpu/sh4/built-in.o] Ошибка 1 make[2]: *** [arch/sh/kernel/cpu/sh4] Ошибка 2 make[1]: *** [arch/sh/kernel/cpu] Ошибка 2 make: *** [arch/sh/kernel] Ошибка 2 [root@localhost linux-sh4]# погуглил, что же такое -m32: длина переменных int, long и pointer, - то ли это из другой области. Что это? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
razob 0 3 июня, 2014 Опубликовано 3 июня, 2014 · Жалоба ещё вопрос: вот например компилятор требует файл /init/.tmp_mc_do_mounts.o, где записана это требование? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться