Ник:
Пароль:

Контакты

E-mail: info@starterkit.ru
тел.: +7 922 680-21-73
тел.: +7 922 680-21-74
Телеграм: t.me/starterkit_ru
Партнеры:
otladka.com.ua - г.Киев

Способы оплаты

User Info


Добро пожаловать,
Guest

Регистрация или входРегистрация или вход
Потеряли пароль?Потеряли пароль?

Ник:
Пароль:

ПользователейПользователей:1
Поисковых ботовПоисковых ботов:3
ГостейГостей:1

ОбновитьПодробнееВсегоВсего:5
Форум » starterkit.ru » Embedded Linux
iMX6. Debian. MOXA
Jury093
Добавлено 26.07.2016 11:44 Сообщение: 21
Jury093
4.5

Пункты: 54233
Регистрация: 25.05.2009
Пол: Мужчина
Из: Санкт-Петербург
Цитата
scripts/basic/fixdep: 1: scripts/basic/fixdep: Syntax error: "(" unexpected

угу, забыл упомянуть, сам с этим столкнулся - если взять исходники ядра после сборки с виртуалки, то вспомогательные утилиты ядра будут естесно х86 архитектуры, которые на АРМ не запустятся:
Код
root@imx6q-es:/mnt/root/moxa/0/kernel-fpga-test/scripts/basic# file fixdep
fixdep: ELF 32-bit LSB executable, Intel 80386, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.15, BuildID[sha1]=0x6531a02398ba8f336e707e10fac96905517d65f6, not stripped

тут либо полная пересборка на ките "make clean; make uImage", либо достаточно прибить
rm scripts/basic/fixdep
и проинициировать рекомпиляцию
Код
make ARCH=arm menuconfig

будет выглядеть примерно так:
Код
root@imx6q-es:/mnt/root/moxa/0/kernel-fpga-test/scripts/basic# file fixdep
fixdep: ELF 32-bit LSB executable, ARM, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.26, BuildID[sha1]=0xe048f277f91050d34b3a6c47a7da59558e6151cc, not stripped

вроде больше чудес не было..

На любой вопрос есть любой ответ.
Спуститься к концу Подняться к началу
Персональная информация
qqqqq2
Добавлено 26.07.2016 12:28 Редактировалось 26.07.2016 12:33 Сообщение: 22
qqqqq2
0

Пункты: 5507
Регистрация: 29.04.2016
Из: Санкт-Петербург
Код
root@armets:~/moxa/linux-custom# rm scripts/basic/fixdep
root@armets:~/moxa/linux-custom# make ARCH=arm menuconfig
HOSTCC scripts/basic/fixdep
*** Unable to find the ncurses libraries or the
*** required header files.
*** 'make menuconfig' requires the ncurses libraries.
***
*** Install ncurses (ncurses-devel) and try again.
***
make[1]: *** [scripts/kconfig/dochecklxdialog] Error 1
make: *** [menuconfig] Error 2
root@armets:~/moxa/linux-custom# apt-get install ncurses
Reading package lists... Done
Building dependency tree
Reading state information... Done
Package ncurses is not available, but is referred to by another package.
This may mean that the package is missing, has been obsoleted, or
is only available from another source

E: Package 'ncurses' has no installation candidate
root@armets:~/moxa/linux-custom# apt-get install ncurses-devel
Reading package lists... Done
Building dependency tree
Reading state information... Done
E: Unable to locate package ncurses-devel


Код
root@armets:~/moxa/linux-custom/scripts/basic# file fixdep
fixdep: ELF 32-bit LSB executable, ARM, version 1 (SYSV), dynamically linked (us
es shared libs), for GNU/Linux 2.6.26, BuildID[sha1]=0xe048f277f91050d34b3a6c47a
7da59558e6151cc, not stripped


Код
root@armets:~/moxa/moxa# make
make -C /root/moxa/linux-custom SUBDIRS=/root/moxa/moxa modules
make[1]: Entering directory `/root/moxa/linux-custom'
CC [M] /root/moxa/moxa/npreal2.o
Building modules, stage 2.
MODPOST 1 modules
scripts/mod/modpost: 1: scripts/mod/modpost: Syntax error: word unexpected (expe
cting ")")
make[2]: *** [__modpost] Error 2
make[1]: *** [modules] Error 2
make[1]: Leaving directory `/root/moxa/linux-custom'
make: *** [module] Error 2
Спуститься к концу Подняться к началу
Персональная информация
qqqqq2
Добавлено 26.07.2016 12:42 Редактировалось 26.07.2016 13:38 Сообщение: 23
qqqqq2
0

Пункты: 5507
Регистрация: 29.04.2016
Из: Санкт-Петербург
Надо все скрипты таким образом перекомпилировать?

Но вот scripts/mod/modpost не образуется вновь (после make ARCH=arm menuconfig), если его удалить

в папке scripts/mod остались
Код
elfconfig.h
mk_elfconfig
.gitignore
empty.c
file2alias.c
Makefile
mk_elfconfig.c
modpost.c
modpost.h
sumversion.c
Спуститься к концу Подняться к началу
Персональная информация
Jury093
Добавлено 26.07.2016 13:45 Редактировалось 26.07.2016 13:49 Сообщение: 24
Jury093
4.5

Пункты: 54233
Регистрация: 25.05.2009
Пол: Мужчина
Из: Санкт-Петербург
Цитата
Надо все скрипты таким образом перекомпилировать?
Но вот scripts/mod/modpost не образуется вновь (после make ARCH=arm menuconfig), если его удалить

видимо я поторопился для ускорения процесса и похоже проще почистить и пересобрать ядро на плате..
Код
make clean
make -j2 ARCH=arm uImage

вероятно modpost не вызывается для menuconfig, а используется для компиляции отдельных модулей, отсюда и не рекомпилируется..

update чисто для справки - "Надо все скрипты таким образом" - это не скрипт, это исполнимый бинарный код
скриптом обычно называют текстовый файл с атрибутом +x, который построчно выполняется интерпретатором (например sh, bash и etc)

На любой вопрос есть любой ответ.
Спуститься к концу Подняться к началу
Персональная информация
qqqqq2
Добавлено 26.07.2016 14:00 Редактировалось 26.07.2016 14:04 Сообщение: 25
qqqqq2
0

Пункты: 5507
Регистрация: 29.04.2016
Из: Санкт-Петербург
Цитата
видимо я поторопился для ускорения процесса и похоже проще почистить и пересобрать ядро на плате..

Поясните, пожалуйста, как сейчас происходит загрузка/работа системы и что будет если, я пересоберу ядро на плате.

И что дальше делать, после пересборки.
Спуститься к концу Подняться к началу
Персональная информация
Jury093
Добавлено 26.07.2016 14:46 Сообщение: 26
Jury093
4.5

Пункты: 54233
Регистрация: 25.05.2009
Пол: Мужчина
Из: Санкт-Петербург
Цитата
Поясните, пожалуйста, как сейчас происходит загрузка/работа системы и что будет если, я пересоберу ядро на плате.

не, с системой пока ничего делать не надо - достаточно почистить ядро от старых объектников и кода, потом просто пересобрать.
смысл операции - получить запускаемые утилиты, с помощью которых можно скомпилировать внешний модуль - в вашем случае для Moxa

Цитата
И что дальше делать, после пересборки.

после сборки имеет смысл почитать файл-инструкцию README.TXT
как я понял, после компиляции создаются файлы
*.ko - это модули для железки
mx* - бинарники серверной части
скрипты и конфиги - для настройки штатной работы

не вчитывался, но вероятно в ридми.тхт сказано, что и как делать..
давайте сначала убедимся, что железо исправно и видно в системе в любом виде.. а потом видимо есть смысл мигрировать сборку на комп с x86 архитектурой, так программистам привычнее..

На любой вопрос есть любой ответ.
Спуститься к концу Подняться к началу
Персональная информация
qqqqq2
Добавлено 26.07.2016 14:49 Сообщение: 27
qqqqq2
0

Пункты: 5507
Регистрация: 29.04.2016
Из: Санкт-Петербург
Что-то пошло не так...
В конце сборки.
Код
LD vmlinux.o
MODPOST vmlinux.o
WARNING: modpost: Found 1 section mismatch(es).
To see full details build your kernel with:
'make CONFIG_DEBUG_SECTION_MISMATCH=y'
GEN .version
CHK include/generated/compile.h
SKIPPED include/generated/compile.h
LD .tmp_vmlinux1
KSYM .tmp_kallsyms1.S
AS .tmp_kallsyms1.o
LD .tmp_vmlinux2
KSYM .tmp_kallsyms2.S
AS .tmp_kallsyms2.o
LD vmlinux
SYSMAP System.map
SYSMAP .tmp_System.map
OBJCOPY arch/arm/boot/Image
Kernel: arch/arm/boot/Image is ready
AS arch/arm/boot/compressed/head.o
GZIP arch/arm/boot/compressed/piggy.gzip
CC arch/arm/boot/compressed/misc.o
CC arch/arm/boot/compressed/decompress.o
SHIPPED arch/arm/boot/compressed/lib1funcs.S
AS arch/arm/boot/compressed/piggy.gzip.o
AS arch/arm/boot/compressed/lib1funcs.o
LD arch/arm/boot/compressed/vmlinux
OBJCOPY arch/arm/boot/zImage
Kernel: arch/arm/boot/zImage is ready
UIMAGE arch/arm/boot/uImage
"mkimage" command not found - U-Boot images will not be built
make[1]: *** [arch/arm/boot/uImage] Error 1
make: *** [uImage] Error 2
Спуститься к концу Подняться к началу
Персональная информация
qqqqq2
Добавлено 26.07.2016 14:54 Сообщение: 28
qqqqq2
0

Пункты: 5507
Регистрация: 29.04.2016
Из: Санкт-Петербург
Не проще ли будет использовать ваши исходники )
Спуститься к концу Подняться к началу
Персональная информация
Jury093
Добавлено 26.07.2016 16:25 Редактировалось 26.07.2016 16:27 Сообщение: 29
Jury093
4.5

Пункты: 54233
Регистрация: 25.05.2009
Пол: Мужчина
Из: Санкт-Петербург
Цитата
Не проще ли будет использовать ваши исходники )

исходники чего? у меня копия ваших, включая ядро и Ко..
в принципе уже можно пробовать собрать модули - вероятно все нужные утилиты уже скомпилировались..

что касается этой ошибки, то не хватает mkimage, утилита которую создает исходник юбута..
попробуйте это:
Посмотреть или скачать файл «mkimage» — https://yadi.sk/d/CltHdnVetdx9B
положить на плату, допустим в /usr/local/bin или /bin - чтобы по путям "видна" была
не забудьте chmod +x mkimage
и повторно make uImage - оно должно быстро пробежаться и шустро дособирать

На любой вопрос есть любой ответ.
Спуститься к концу Подняться к началу
Персональная информация
qqqqq2
Добавлено 26.07.2016 16:41 Редактировалось 26.07.2016 16:42 Сообщение: 30
qqqqq2
0

Пункты: 5507
Регистрация: 29.04.2016
Из: Санкт-Петербург
Цитата

попробуйте это:
Посмотреть или скачать файл «mkimage» — https://yadi.sk/d/CltHdnVetdx9B
положить на плату, допустим в /usr/local/bin или /bin - чтобы по путям "видна" была
не забудьте chmod +x mkimage
и повторно make uImage - оно должно быстро пробежаться и шустро дособирать


Код
root@armets:~/moxa/linux-custom# make uImage
CHK include/linux/version.h
CHK include/generated/utsrelease.h
make[1]: `include/generated/mach-types.h' is up to date.
CALL scripts/checksyscalls.sh
CHK include/generated/compile.h
SKIPPED include/generated/compile.h
Kernel: arch/arm/boot/Image is ready
SHIPPED arch/arm/boot/compressed/lib1funcs.S
AS arch/arm/boot/compressed/lib1funcs.o
LD arch/arm/boot/compressed/vmlinux
OBJCOPY arch/arm/boot/zImage
Kernel: arch/arm/boot/zImage is ready
UIMAGE arch/arm/boot/uImage
Image Name: Linux-3.1.2
Created: Tue Jul 26 15:39:10 2016
Image Type: ARM Linux Kernel Image (uncompressed)
Data Size: 4243048 Bytes = 4143.60 kB = 4.05 MB
Load Address: 10008000
Entry Point: 10008000
Image arch/arm/boot/uImage is ready
root@armets:~/moxa/linux-custom#
Спуститься к концу Подняться к началу
Персональная информация
Форум » starterkit.ru » Embedded Linux