gosha-z 2 19 мая, 2019 Опубликовано 19 мая, 2019 · Жалоба make menuconfig - Kernel - там указывается имя конфигурации для сборки ядра Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
andrew_b 14 19 мая, 2019 Опубликовано 19 мая, 2019 · Жалоба @Alex_Golubev, добрый совет: не надо постить текстовые сообщения скриншотами. Текст на то то текст, чтобы его передавать текстом, а не картинками. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Alex_Golubev 0 19 мая, 2019 Опубликовано 19 мая, 2019 (изменено) · Жалоба Вот нашел конфиг вроде он. Spoiler CONFIG_SYSVIPC=y CONFIG_NO_HZ=y CONFIG_HIGH_RES_TIMERS=y CONFIG_TASKSTATS=y CONFIG_TASK_DELAY_ACCT=y CONFIG_TASK_XACCT=y CONFIG_TASK_IO_ACCOUNTING=y CONFIG_IKCONFIG=y CONFIG_IKCONFIG_PROC=y CONFIG_CGROUPS=y # CONFIG_UTS_NS is not set # CONFIG_IPC_NS is not set # CONFIG_PID_NS is not set # CONFIG_NET_NS is not set CONFIG_BLK_DEV_INITRD=y CONFIG_PERF_EVENTS=y # CONFIG_COMPAT_BRK is not set CONFIG_MODULES=y CONFIG_MODULE_FORCE_LOAD=y CONFIG_MODULE_UNLOAD=y CONFIG_MODULE_FORCE_UNLOAD=y CONFIG_MODVERSIONS=y CONFIG_BLK_DEV_INTEGRITY=y # CONFIG_IOSCHED_DEADLINE is not set # CONFIG_IOSCHED_CFQ is not set # CONFIG_ARCH_MULTI_V7 is not set CONFIG_ARCH_MXS=y # CONFIG_ARM_THUMB is not set CONFIG_PREEMPT_VOLUNTARY=y CONFIG_AEABI=y CONFIG_NET=y CONFIG_PACKET=y CONFIG_UNIX=y CONFIG_INET=y CONFIG_IP_PNP=y CONFIG_IP_PNP_DHCP=y CONFIG_SYN_COOKIES=y # CONFIG_INET_XFRM_MODE_TRANSPORT is not set # CONFIG_INET_XFRM_MODE_TUNNEL is not set # CONFIG_INET_XFRM_MODE_BEET is not set # CONFIG_INET_DIAG is not set # CONFIG_IPV6 is not set CONFIG_CAN=m CONFIG_CAN_FLEXCAN=m # CONFIG_WIRELESS is not set CONFIG_DEVTMPFS=y CONFIG_DEVTMPFS_MOUNT=y CONFIG_MTD=y CONFIG_MTD_CMDLINE_PARTS=y CONFIG_MTD_BLOCK=y CONFIG_MTD_DATAFLASH=y CONFIG_MTD_M25P80=y CONFIG_MTD_SST25L=y CONFIG_MTD_NAND=y CONFIG_MTD_NAND_GPMI_NAND=y CONFIG_MTD_SPI_NOR=y CONFIG_MTD_UBI=y # CONFIG_BLK_DEV is not set CONFIG_EEPROM_AT24=y CONFIG_SCSI=y CONFIG_BLK_DEV_SD=y CONFIG_NETDEVICES=y CONFIG_ENC28J60=y CONFIG_ICPLUS_PHY=y CONFIG_MICREL_PHY=y CONFIG_REALTEK_PHY=y CONFIG_SMSC_PHY=y CONFIG_USB_USBNET=y CONFIG_USB_NET_SMSC95XX=y # CONFIG_WLAN is not set CONFIG_INPUT_EVDEV=y # CONFIG_INPUT_KEYBOARD is not set # CONFIG_INPUT_MOUSE is not set CONFIG_INPUT_TOUCHSCREEN=y CONFIG_TOUCHSCREEN_MXS_LRADC=y CONFIG_TOUCHSCREEN_TSC2007=m # CONFIG_SERIO is not set # CONFIG_LEGACY_PTYS is not set CONFIG_SERIAL_AMBA_PL011=y CONFIG_SERIAL_AMBA_PL011_CONSOLE=y CONFIG_SERIAL_MXS_AUART=y # CONFIG_HW_RANDOM is not set CONFIG_I2C=y # CONFIG_I2C_COMPAT is not set CONFIG_I2C_CHARDEV=y CONFIG_I2C_MXS=y CONFIG_SPI=y CONFIG_SPI_GPIO=m CONFIG_SPI_MXS=y CONFIG_GPIO_SYSFS=y # CONFIG_HWMON is not set CONFIG_WATCHDOG=y CONFIG_STMP3XXX_RTC_WATCHDOG=y CONFIG_MFD_MXS_LRADC=y CONFIG_REGULATOR=y CONFIG_REGULATOR_FIXED_VOLTAGE=y CONFIG_FB=y CONFIG_FB_MXS=y CONFIG_BACKLIGHT_LCD_SUPPORT=y CONFIG_LCD_CLASS_DEVICE=y CONFIG_BACKLIGHT_CLASS_DEVICE=y CONFIG_BACKLIGHT_PWM=y CONFIG_FRAMEBUFFER_CONSOLE=y CONFIG_LOGO=y CONFIG_SOUND=y CONFIG_SND=y CONFIG_SND_SOC=y CONFIG_SND_MXS_SOC=y CONFIG_SND_SOC_MXS_SGTL5000=y CONFIG_USB=y CONFIG_USB_EHCI_HCD=y CONFIG_USB_STORAGE=y CONFIG_USB_CHIPIDEA=y CONFIG_USB_CHIPIDEA_UDC=y CONFIG_USB_CHIPIDEA_HOST=y CONFIG_USB_MXS_PHY=y CONFIG_USB_GADGET=y CONFIG_USB_ETH=m CONFIG_USB_MASS_STORAGE=m CONFIG_MMC=y CONFIG_MMC_MXS=y CONFIG_NEW_LEDS=y CONFIG_LEDS_CLASS=y CONFIG_LEDS_GPIO=y CONFIG_LEDS_TRIGGERS=y CONFIG_LEDS_TRIGGER_TIMER=y CONFIG_LEDS_TRIGGER_ONESHOT=y CONFIG_LEDS_TRIGGER_HEARTBEAT=y CONFIG_LEDS_TRIGGER_BACKLIGHT=y CONFIG_LEDS_TRIGGER_GPIO=y CONFIG_RTC_CLASS=y CONFIG_RTC_DRV_DS1307=m CONFIG_RTC_DRV_STMP=y CONFIG_DMADEVICES=y CONFIG_MXS_DMA=y CONFIG_IIO=y CONFIG_MXS_LRADC_ADC=y CONFIG_IIO_SYSFS_TRIGGER=y CONFIG_PWM=y CONFIG_PWM_MXS=y CONFIG_NVMEM_MXS_OCOTP=y CONFIG_EXT4_FS=y # CONFIG_DNOTIFY is not set CONFIG_FSCACHE=m CONFIG_FSCACHE_STATS=y CONFIG_CACHEFILES=m CONFIG_VFAT_FS=y CONFIG_TMPFS=y CONFIG_TMPFS_POSIX_ACL=y CONFIG_JFFS2_FS=y CONFIG_JFFS2_COMPRESSION_OPTIONS=y CONFIG_JFFS2_LZO=y CONFIG_JFFS2_RUBIN=y CONFIG_UBIFS_FS=y CONFIG_UBIFS_FS_ADVANCED_COMPR=y CONFIG_NFS_FS=y CONFIG_NFS_V3_ACL=y CONFIG_NFS_V4=y CONFIG_ROOT_NFS=y CONFIG_NLS_CODEPAGE_437=y CONFIG_NLS_CODEPAGE_850=y CONFIG_NLS_ISO8859_1=y CONFIG_NLS_ISO8859_15=y CONFIG_PRINTK_TIME=y CONFIG_DEBUG_INFO=y CONFIG_FRAME_WARN=2048 CONFIG_UNUSED_SYMBOLS=y CONFIG_MAGIC_SYSRQ=y CONFIG_DEBUG_KERNEL=y CONFIG_SOFTLOCKUP_DETECTOR=y CONFIG_PROVE_LOCKING=y CONFIG_BLK_DEV_IO_TRACE=y CONFIG_STRICT_DEVMEM=y CONFIG_DEBUG_USER=y CONFIG_CRYPTO_DEV_MXS_DCP=y CONFIG_CRC_ITU_T=m CONFIG_CRC7=m CONFIG_FONTS=y make menuconfig - Kernel В строчке defconfig name установлено mxs По пути /home/alexey/work/buildroot/output/build/linux-4.17.8/arch/arm/configs/mxs_defconfig нашел. [*] Linux Kernel │ │ │ │ Kernel version (Custom version) ---> │ │ │ │ (4.17.8) Kernel version │ │ │ │ () Custom kernel patches │ │ │ │ Kernel configuration (Using an in-tree defconfig file) ---│ │ │ │ (mxs) Defconfig name │ │ │ │ () Additional configuration fragment files │ │ │ │ () Custom boot logo file path │ │ │ │ Kernel binary format (zImage) ---> │ │ │ │ Kernel compression format (gzip compression) ---> Изменено 19 мая, 2019 пользователем Alex_Golubev Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
aaarrr 63 20 мая, 2019 Опубликовано 20 мая, 2019 · Жалоба On 5/18/2019 at 5:55 PM, gosha-z said: ЕМНИП, есть нюанс: этот параметр указывает, заголовочные файлы какой версии ядра использовались для сборки glibc из external toolchain. Запустите make - вам скажут, правы Вы, или нет. Совершенно справедливо, только make ничего не скажет до тех пор, пока это не вылезет в виде реальной ошибки. Нужно вернуть 4.10.x On 5/18/2019 at 7:33 PM, Alex_Golubev said: 2. Собрать ядро отдельно 1. Клонируем репозиторий ядра нужной версии (в директории ~/work): git clone git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git --branch=v4.19 --depth=1 Если не знакомы с git, то настоятельно рекомендую изучить в объеме, несколько превышающем clone/pull - инструмент полезный. 2. Для удобства создадим переменную с путем и префиксом к компилятору: export ARMCC_GNUEABI7=/home/<что-то еще>/gcc-linaro-7.4.1-2019.02-x86_64_arm-linux-gnueabi/bin/arm-linux-gnueabi- 3. Переходим в work/linux, снова правим arch/arm/boot/dts/imx28-evk.dts Теперь это наша персональная песочница для сборки ядра, правки никуда не денутся, их можно и нужно будет со временем commit'ить. 4. Запускаем defconfig: make ARCH=arm mxs_defconfig 5. Пробуем собрать: make ARCH=arm CROSS_COMPILE=${ARMCC_GNUEABI7} zImage modules dtbs Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Alex_Golubev 0 20 мая, 2019 Опубликовано 20 мая, 2019 (изменено) · Жалоба Получил ошибку: Spoiler alexey@debian:~/Рабочий стол$ cd /home/alexey/work/linux alexey@debian:~/work/linux$ make ARCH=arm mxs_defconfig YACC scripts/kconfig/zconf.tab.c /bin/sh: 1: bison: not found scripts/Makefile.lib:196: ошибка выполнения рецепта для цели «scripts/kconfig/zconf.tab.c» make[1]: *** [scripts/kconfig/zconf.tab.c] Ошибка 127 Makefile:539: ошибка выполнения рецепта для цели «mxs_defconfig» make: *** [mxs_defconfig] Ошибка 2 alexey@debian:~/work/linux$ Изменено 20 мая, 2019 пользователем Alex_Golubev Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
aaarrr 63 20 мая, 2019 Опубликовано 20 мая, 2019 · Жалоба Не последнюю, наверное. Ставим bison, пробуем собрать снова, доустанавливаем недостающее и т.д. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Alex_Golubev 0 20 мая, 2019 Опубликовано 20 мая, 2019 · Жалоба Вот на команду make ARCH=arm CROSS_COMPILE=${ARMCC_GNUEABI7} zImage modules dtbs выдал ошибки. Spoiler alexey@debian:~/work/linux$ cd /home/alexey/work/linux alexey@debian:~/work/linux$ make ARCH=arm mxs_defconfig LEX scripts/kconfig/zconf.lex.c HOSTCC scripts/kconfig/zconf.tab.o HOSTLD scripts/kconfig/conf # # configuration written to .config # alexey@debian:~/work/linux$ make ARCH=arm CROSS_COMPILE=${ARMCC_GNUEABI7} zImage modules dtbs SYSHDR arch/arm/include/generated/uapi/asm/unistd-common.h SYSHDR arch/arm/include/generated/uapi/asm/unistd-oabi.h SYSHDR arch/arm/include/generated/uapi/asm/unistd-eabi.h UPD include/config/kernel.release WRAP arch/arm/include/generated/uapi/asm/bitsperlong.h WRAP arch/arm/include/generated/uapi/asm/bpf_perf_event.h WRAP arch/arm/include/generated/uapi/asm/errno.h WRAP arch/arm/include/generated/uapi/asm/ioctl.h WRAP arch/arm/include/generated/uapi/asm/ipcbuf.h WRAP arch/arm/include/generated/uapi/asm/msgbuf.h WRAP arch/arm/include/generated/uapi/asm/param.h WRAP arch/arm/include/generated/uapi/asm/poll.h WRAP arch/arm/include/generated/uapi/asm/resource.h WRAP arch/arm/include/generated/uapi/asm/sembuf.h WRAP arch/arm/include/generated/uapi/asm/shmbuf.h WRAP arch/arm/include/generated/uapi/asm/siginfo.h WRAP arch/arm/include/generated/uapi/asm/socket.h WRAP arch/arm/include/generated/uapi/asm/sockios.h WRAP arch/arm/include/generated/uapi/asm/termbits.h WRAP arch/arm/include/generated/uapi/asm/termios.h WRAP arch/arm/include/generated/asm/compat.h WRAP arch/arm/include/generated/asm/current.h WRAP arch/arm/include/generated/asm/early_ioremap.h WRAP arch/arm/include/generated/asm/emergency-restart.h WRAP arch/arm/include/generated/asm/exec.h WRAP arch/arm/include/generated/asm/extable.h WRAP arch/arm/include/generated/asm/irq_regs.h WRAP arch/arm/include/generated/asm/kdebug.h WRAP arch/arm/include/generated/asm/local.h WRAP arch/arm/include/generated/asm/local64.h WRAP arch/arm/include/generated/asm/mm-arch-hooks.h WRAP arch/arm/include/generated/asm/msi.h WRAP arch/arm/include/generated/asm/parport.h WRAP arch/arm/include/generated/asm/preempt.h WRAP arch/arm/include/generated/asm/rwsem.h WRAP arch/arm/include/generated/asm/seccomp.h WRAP arch/arm/include/generated/asm/segment.h WRAP arch/arm/include/generated/asm/serial.h WRAP arch/arm/include/generated/asm/simd.h WRAP arch/arm/include/generated/asm/sizes.h WRAP arch/arm/include/generated/asm/timex.h WRAP arch/arm/include/generated/asm/trace_clock.h UPD include/generated/uapi/linux/version.h UPD include/generated/utsrelease.h SYSNR arch/arm/include/generated/asm/unistd-nr.h GEN arch/arm/include/generated/asm/mach-types.h SYSTBL arch/arm/include/generated/calls-oabi.S SYSTBL arch/arm/include/generated/calls-eabi.S CC kernel/bounds.s gcc: error: unrecognized argument in option ‘-mabi=aapcs-linux’ gcc: note: valid arguments to ‘-mabi=’ are: ms sysv gcc: error: unrecognized command line option ‘-mlittle-endian’ gcc: error: unrecognized command line option ‘-mfpu=vfp’; did you mean ‘-mcpu=’? Kbuild:21: ошибка выполнения рецепта для цели «kernel/bounds.s» make[1]: *** [kernel/bounds.s] Ошибка 1 Makefile:1102: ошибка выполнения рецепта для цели «prepare0» make: *** [prepare0] Ошибка 2 Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
aaarrr 63 20 мая, 2019 Опубликовано 20 мая, 2019 · Жалоба ARMCC_GNUEABI7 не задана, судя по всему. Что скажет echo ${ARMCC_GNUEABI7} ? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Alex_Golubev 0 20 мая, 2019 Опубликовано 20 мая, 2019 (изменено) · Жалоба Не смог разобраться в чем проблема: Spoiler alexey@debian:~/work/linux$ echo ${ARMCC_GNUEABI7} bash: ${ARMCC_GNUEABI7}: неверная подстановка alexey@debian:~/work/linux$ clear И вот еще одна ошибка Spoiler alexey@debian:~/Рабочий стол$ export ARMCC_GNUEABI7=/home/alexey/work/toolchains/gcc-linaro-7.4.1-2019.02-x86_64_arm-linux-gnueabi/bin/arm-linux-gnueabi- bash: export: «ARMCC_GNUEABI7=/home/alexey/work/toolchains/gcc-linaro-7.4.1-2019.02-x86_64_arm-linux-gnueabi/bin/arm-linux-gnueabi-»: это недопустимый идентификатор alexey@debian:~/Рабочий стол$ Изменено 20 мая, 2019 пользователем Alex_Golubev Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
aaarrr 63 20 мая, 2019 Опубликовано 20 мая, 2019 · Жалоба А в export'е что дословно было написано? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Alex_Golubev 0 20 мая, 2019 Опубликовано 20 мая, 2019 (изменено) · Жалоба Все понял. Spoiler alexey@debian:~/Рабочий стол$ export ARMCC_GNUEABI7=/home/alexey/work/toolchains/gcc-linaro-7.4.1-2019.02-x86_64_arm-linux-gnueabi/bin/arm-linux-gnueabi- alexey@debian:~/Рабочий стол$ echo ${ARMCC_GNUEABI7} bash: ${ARMCC_GNUEABI7}: неверная подстановка alexey@debian:~/Рабочий стол$ Но echo ${ARMCC_GNUEABI7} не работает хоть убей. Еще по пунктам прошел вроде все собралось. Наверное ошибся с export. Наверное нужно приступать к 3 пункту? Изменено 20 мая, 2019 пользователем Alex_Golubev Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
gosha-z 2 20 мая, 2019 Опубликовано 20 мая, 2019 · Жалоба Не мучайте себя, пользуйте make CROSS_COMPILE=/home/alexey/work/toolchains/gcc-linaro-7.4.1-2019.02-x86_64_arm-linux-gnueabi/bin/arm-linux-gnueabi- 1 hour ago, Alex_Golubev said: Наверное нужно приступать к 3 пункту? Я бы вставил пункт 2а - научиться грузить свежесобранное ядро по tftp, чтобы после каждой пересборки не насиловать SD-карточку. Хотя бы для начала усвоить набор команд, а потом уже озадачиться хранилищем U-Boot environment Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
aaarrr 63 20 мая, 2019 Опубликовано 20 мая, 2019 · Жалоба 3 hours ago, Alex_Golubev said: Наверное нужно приступать к 3 пункту? К четвертому, скорее. п.3 пойдет параллельно по мере надобности. 1 hour ago, gosha-z said: Я бы вставил пункт 2а - научиться грузить свежесобранное ядро по tftp да и rootfs через NFS лучше подключить. Попозже попробую описать дальнейшие действия по пунктам. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
gosha-z 2 20 мая, 2019 Опубликовано 20 мая, 2019 · Жалоба 39 minutes ago, aaarrr said: да и rootfs через NFS лучше подключить. rootfs не так часто меняешь, как ядро на этапе конфигурирования функционала, тем более, что у него не GE, а FE, а памяти немного... Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
aaarrr 63 20 мая, 2019 Опубликовано 20 мая, 2019 · Жалоба 44 minutes ago, gosha-z said: rootfs не так часто меняешь, как ядро на этапе конфигурирования функционала, тем более, что у него не GE, а FE, а памяти немного... Так ТС еще собирается кутовые приложения ваять. А FE не сильно медленнее карты и заметно быстрее NAND в данном случае. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться