页次: 1
不好意思,我的屏不是800*480的,烧这个应该不行
烧这个正常吗: https://whycan.cn/t_2689.html
结贴:感谢晕哥,确实如此,编译buildroot生成根文件的时候不能再用arm-linux-gnueabi,而应该用默认下载的Sourcery CodeBench ARM 2014.5
那么我以后在PC上交叉编译C程序生成可执行文件到nano上的时候,编译器应该用哪个呢?按道理,也应该用根文件系统同样的编译器Sourcery CodeBench ARM 2014.5?
对, 你的编译器有问题, 导致根文件系统有问题:
https://whycan.cn/t_2757.html
https://whycan.cn/t_1180.html
https://whycan.cn/t_1896.html
按照荔枝派nano的教程和本论坛置顶帖子的顺序,制作了完成了镜像文件,烧写进去之后,发现最后起不来
1、看打印信息,发现了spi,并且好像挂载rootfs也成功了
2、搜索本论坛,参考了一些,也取消了一些配置上的东西,不管用
3、难道是根文件系统有问题?
U-Boot SPL 2018.01-05679-g013ca457fd-dirty (Aug 31 2019 - 22:35:11)
DRAM: 32 MiB
Trying to boot from MMC1
Card did not respond to voltage select!
mmc_init: -95, time 22
spl: mmc init failed with error: -95
Trying to boot from sunxi SPI
U-Boot 2018.01-05679-g013ca457fd-dirty (Aug 31 2019 - 22:35:11 +0800) Allwinner Technology
CPU: Allwinner F Series (SUNIV)
Model: Lichee Pi Nano
DRAM: 32 MiB
MMC: SUNXI SD/MMC: 0
SF: Detected w25q128bv with page size 256 Bytes, erase size 4 KiB, total 16 MiB
*** Warning - bad CRC, using default environment
Setting up a 800x480 lcd console (overscan 0x0)
In: serial@1c25000
Out: serial@1c25000
Err: serial@1c25000
Net: No ethernet found.
starting USB...
No controllers found
Hit any key to stop autoboot: 0
SF: Detected w25q128bv with page size 256 Bytes, erase size 4 KiB, total 16 MiB
device 0 offset 0x100000, size 0x4000
SF: 16384 bytes @ 0x100000 Read: OK
device 0 offset 0x110000, size 0x400000
SF: 4194304 bytes @ 0x110000 Read: OK
## Flattened Device Tree blob at 80c00000
Booting using the fdt blob at 0x80c00000
Loading Device Tree to 80e5f000, end 80e63ddc ... OK
Starting kernel ...
[ 0.000000] Booting Linux on physical CPU 0x0
[ 0.000000] Linux version 5.2.0-licheepi-nano+ (qiup@qiup-virtual-machine) (gcc version 7.4.0 (Ubuntu/Linaro 7.4.0-1ubuntu1~18.04.1)) #1 Fri Aug 30 23:26:40 CST 2019
[ 0.000000] CPU: ARM926EJ-S [41069265] revision 5 (ARMv5TEJ), cr=0005317f
[ 0.000000] CPU: VIVT data cache, VIVT instruction cache
[ 0.000000] OF: fdt: Machine model: Lichee Pi Nano
[ 0.000000] Memory policy: Data cache writeback
[ 0.000000] Built 1 zonelists, mobility grouping on. Total pages: 8128
[ 0.000000] Kernel command line: console=ttyS0,115200 panic=5 rootwait root=/dev/mtdblock3 rw rootfstype=jffs2
[ 0.000000] Dentry cache hash table entries: 4096 (order: 2, 16384 bytes)
[ 0.000000] Inode-cache hash table entries: 2048 (order: 1, 8192 bytes)
[ 0.000000] Memory: 23760K/32768K available (5120K kernel code, 208K rwdata, 1300K rodata, 1024K init, 221K bss, 9008K reserved, 0K cma-reserved, 0K highmem)
[ 0.000000] SLUB: HWalign=32, Order=0-3, MinObjects=0, CPUs=1, Nodes=1
[ 0.000000] NR_IRQS: 16, nr_irqs: 16, preallocated irqs: 16
[ 0.000000] random: get_random_bytes called from start_kernel+0x254/0x3cc with crng_init=0
[ 0.000046] sched_clock: 32 bits at 24MHz, resolution 41ns, wraps every 89478484971ns
[ 0.000126] clocksource: timer: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 79635851949 ns
[ 0.000639] Console: colour dummy device 80x30
[ 0.000739] Calibrating delay loop... 203.16 BogoMIPS (lpj=1015808)
[ 0.070246] pid_max: default: 32768 minimum: 301
[ 0.070697] Mount-cache hash table entries: 1024 (order: 0, 4096 bytes)
[ 0.070758] Mountpoint-cache hash table entries: 1024 (order: 0, 4096 bytes)
[ 0.072584] CPU: Testing write buffer coherency: ok
[ 0.074720] Setting up static identity map for 0x80100000 - 0x80100058
[ 0.077164] devtmpfs: initialized
[ 0.083376] clocksource: jiffies: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 19112604462750000 ns
[ 0.083441] futex hash table entries: 256 (order: -1, 3072 bytes)
[ 0.083778] pinctrl core: initialized pinctrl subsystem
[ 0.087298] DMA: preallocated 256 KiB pool for atomic coherent allocations
[ 0.089356] cpuidle: using governor menu
[ 0.142230] SCSI subsystem initialized
[ 0.142653] usbcore: registered new interface driver usbfs
[ 0.142818] usbcore: registered new interface driver hub
[ 0.143023] usbcore: registered new device driver usb
[ 0.143506] pps_core: LinuxPPS API ver. 1 registered
[ 0.143533] pps_core: Software ver. 5.3.6 - Copyright 2005-2007 Rodolfo Giometti <giometti@linux.it>
[ 0.144167] Advanced Linux Sound Architecture Driver Initialized.
[ 0.144539] clocksource: Switched to clocksource timer
[ 0.176901] NetWinder Floating Point Emulator V0.97 (double precision)
[ 0.178918] Initialise system trusted keyrings
[ 0.179543] workingset: timestamp_bits=30 max_order=13 bucket_order=0
[ 0.198654] jffs2: version 2.2. (NAND) © 2001-2006 Red Hat, Inc.
[ 0.206458] Key type asymmetric registered
[ 0.206499] Asymmetric key parser 'x509' registered
[ 0.206665] Block layer SCSI generic (bsg) driver version 0.4 loaded (major 252)
[ 0.206693] io scheduler mq-deadline registered
[ 0.206709] io scheduler kyber registered
[ 0.219835] suniv-f1c100s-pinctrl 1c20800.pinctrl: initialized sunXi PIO driver
[ 0.421925] Serial: 8250/16550 driver, 8 ports, IRQ sharing disabled
[ 0.428196] suniv-f1c100s-pinctrl 1c20800.pinctrl: 1c20800.pinctrl supply vcc-pe not found, using dummy regulator
[ 0.430037] printk: console [ttyS0] disabled
[ 0.450331] 1c25000.serial: ttyS0 at MMIO 0x1c25000 (irq = 24, base_baud = 6250000) is a 16550A
[ 0.777835] printk: console [ttyS0] enabled
[ 0.786192] suniv-f1c100s-pinctrl 1c20800.pinctrl: 1c20800.pinctrl supply vcc-pd not found, using dummy regulator
[ 0.804839] SCSI Media Changer driver v0.25
[ 0.810628] suniv-f1c100s-pinctrl 1c20800.pinctrl: 1c20800.pinctrl supply vcc-pc not found, using dummy regulator
[ 0.823926] m25p80 spi0.0: w25q128 (16384 Kbytes)
[ 0.828867] 4 fixed-partitions partitions found on MTD device spi0.0
[ 0.835289] Creating 4 MTD partitions on "spi0.0":
[ 0.840095] 0x000000000000-0x000000100000 : "u-boot"
[ 0.849304] 0x000000100000-0x000000110000 : "dtb"
[ 0.858011] 0x000000110000-0x000000510000 : "kernel"
[ 0.867110] 0x000000510000-0x000001000000 : "rootfs"
[ 0.876615] ehci_hcd: USB 2.0 'Enhanced' Host Controller (EHCI) Driver
[ 0.883150] ehci-platform: EHCI generic platform driver
[ 0.888849] ohci_hcd: USB 1.1 'Open' Host Controller (OHCI) Driver
[ 0.895180] ohci-platform: OHCI generic platform driver
[ 0.900798] usbcore: registered new interface driver usb-storage
[ 0.907942] i2c /dev entries driver
[ 0.915824] suniv-f1c100s-pinctrl 1c20800.pinctrl: 1c20800.pinctrl supply vcc-pf not found, using dummy regulator
[ 0.954098] sunxi-mmc 1c0f000.mmc: initialized, max. request size: 16384 KB
[ 0.963630] usbcore: registered new interface driver usbhid
[ 0.969343] usbhid: USB HID core driver
[ 0.992726] Loading compiled-in X.509 certificates
[ 1.008765] suniv-f1c100s-pinctrl 1c20800.pinctrl: 1c20800.pinctrl supply vcc-pd not found, using dummy regulator
[ 1.020249] sun4i-backend 1e60000.display-backend: Couldn't find matching frontend, frontend features disabled
[ 1.031136] sun4i-drm display-engine: bound 1e60000.display-backend (ops 0xc0637c34)
[ 1.040267] sun4i-drm display-engine: bound 1c0c000.lcd-controller (ops 0xc063688c)
[ 1.048053] [drm] Supports vblank timestamp caching Rev 2 (21.10.2013).
[ 1.054708] [drm] No driver support for vblank timestamp query.
[ 1.061940] [drm] Initialized sun4i-drm 1.0.0 20150629 for display-engine on minor 0
[ 1.314921] Console: switching to colour frame buffer device 100x30
[ 1.354692] sun4i-drm display-engine: fb0: sun4i-drmdrmfb frame buffer device
[ 1.362774] ALSA device list:
[ 1.365902] #0: Loopback 1
[ 1.371804] random: fast init done
[ 1.485396] random: crng init done
[ 4.255663] VFS: Mounted root (jffs2 filesystem) on device 31:3.
[ 4.263993] devtmpfs: mounted
[ 4.274122] Freeing unused kernel memory: 1024K
[ 4.278883] Run /sbin/init as init process
[ 6.975375] Kernel panic - not syncing: Attempted to kill init! exitcode=0x0000000b
[ 6.983049] CPU: 0 PID: 1 Comm: init Not tainted 5.2.0-licheepi-nano+ #1
[ 6.989729] Hardware name: Allwinner suniv Family
[ 6.994520] [<c010e42c>] (unwind_backtrace) from [<c010b9f4>] (show_stack+0x10/0x14)
[ 7.002271] [<c010b9f4>] (show_stack) from [<c0116dc0>] (panic+0xe8/0x2e4)
[ 7.009145] [<c0116dc0>] (panic) from [<c01185f4>] (do_exit+0x9dc/0xa18)
[ 7.015844] [<c01185f4>] (do_exit) from [<c0119190>] (do_group_exit+0x3c/0xb4)
[ 7.023066] [<c0119190>] (do_group_exit) from [<c0122d54>] (get_signal+0x10c/0x7bc)
[ 7.030724] [<c0122d54>] (get_signal) from [<c010af60>] (do_work_pending+0x1a8/0x558)
[ 7.038552] [<c010af60>] (do_work_pending) from [<c0101068>] (slow_work_pending+0xc/0x20)
[ 7.046704] Exception stack(0xc1831fb0 to 0xc1831ff8)
[ 7.051753] 1fa0: bec48f10 00000000 00000000 00000000
[ 7.059919] 1fc0: 00000940 00000000 00000000 00000000 00000000 00000000 000275e4 00000000
[ 7.068082] 1fe0: 00000000 bec48f10 b6edcb53 b6edd000 00000030 ffffffff
[ 7.074691] Rebooting in 5 seconds..
[ 13.053923] Reboot failed -- System halted
想在LicheePi zero上用fbv显示一副图片到LCD上,于是乎在buildroot里选中了fbv模块,做了根文件系统(spiflash,jffs2),
下载好了,一切正常,其他常规操作没有问题,于是就试了一下fbv命令,类似这种
fbv /usr/1.jpg
结果给了这么个提示:
fbv: error while loading shared libraries: /usr/lib/libpng16.so.16: invalid ELF header
我查了一下,这个文件确实是有的,搜索了一下本论坛,有的说可能buildroot生成根文件的时候编译器用错了,但是我检查了一下,没错:
搞不懂了真是,跟选择c库也有关系吗?我选的是标准glibc。
对,ttyS2根本没在log里出现,除了修改那两个文件之外,设备树还要配置哪里?
还是那俩文件我改的地方不对?一楼的那几句话分别应该放在文件的什么地方?
另外,我的代码其实很简单,贴出来看看(以ttyS2为例,ttyS1是一样的):
#include <termios.h> //linux下的串口驱动头文件
#include <stdio.h>
//#include <sys/stat.h>
#include <unistd.h>
//#include <sys/signal.h>
//#include <signal.h>
#include <sys/types.h>
#include <fcntl.h> //define O_WRONLY and O_RDONLY
#include <string.h>
#include <stdlib.h>
int main()
{
int fd, i;
struct termios ttyCfg;
char buf[1024];
char strBuf[] = "Hello! This message from Licheepi ttyS2\n";
//尝试打开tty1
fd = open("/dev/ttyS2", O_RDWR | O_NOCTTY | O_NDELAY);
if (fd = -1)
{
printf("Err INfo: open ttyS2 error!\n");
return EXIT_FAILURE;
}
//初始化串口--------------------------
tcgetattr(fd, &ttyCfg); //获取终端的新参数,获得串口指向termios结构的指针
ttyCfg.c_cflag |= (CLOCAL | CREAD); //忽略调制解调器,使用接收器
cfsetispeed(&ttyCfg, B115200); //设置输入波特率
cfsetospeed(&ttyCfg, B115200); //设置输出波特率
ttyCfg.c_cflag &= ~CSIZE; //屏蔽其他标志位
ttyCfg.c_cflag |= CS8; //8位数据位
ttyCfg.c_cflag &= ~CSTOPB; //1位停止位
ttyCfg.c_cflag &= ~PARENB; //无校验
ttyCfg.c_cflag &= ~CRTSCTS; //不使用流控
ttyCfg.c_cc[VTIME] = 0; //非规范模式读取时的超时时间
ttyCfg.c_cc[VMIN] = 0; //非规范模式读取时的最小字符数
tcflush(fd, TCIFLUSH); //清空串口数据和请求
tcsetattr(fd, TCSANOW, &ttyCfg); //参数保存到tty1串口,TCSANOW:不等数据传输完毕就立即改变属性。
while (1)
{
//发送点数据测试--------------------
printf("Licheepi send somthing use ttyS2\n");
write(fd, strBuf, strlen(strBuf));
usleep(2000000); //us
//接收到的数据打印出来--------------
i = read(fd, buf, 1000);
if (i > 0)
{
printf("Licheepi ttyS2 receive from PC,len=%d, message:%s\n", i, buf);
}
}
close(fd);
return (0);
}
ttyS2 在 log 没有出现吧, 说明设备树配置有问题.
ttyS1 可以, 说明前面你的代码有问题.
我看了一下,与串口有关的log就这点:
[ 0.067694] io scheduler noop registered
[ 0.067701] io scheduler deadline registered
[ 0.067930] io scheduler cfq registered (default)
[ 0.072067] sun8i-v3s-pinctrl 1c20800.pinctrl: initialized sunXi PIO driver
[ 0.141961] Serial: 8250/16550 driver, 8 ports, IRQ sharing disabled
[ 0.145388] console [ttyS0] disabled
[ 0.165615] 1c28000.serial: ttyS0 at MMIO 0x1c28000 (irq = 34, base_baud = 1500000) is a U6_16550A
[ 0.765465] console [ttyS0] enabled
[ 0.790420] 1c28400.serial: ttyS1 at MMIO 0x1c28400 (irq = 35, base_baud = 1500000) is a U6_16550A
这是不对?而且我ttyS1和ttyS2都试过,都打不开。
我这是LicheePi Zero,带底板的那种,修改了linux/arch/arm/boot/dts下边的文件,加上了串口1和串口2的内容
我的设备树是用的sun8i-v3s-licheepi-zero-dock.dtb
根文件系统用的是资料上推荐的rootfs_brmin,
在开发板上的dev/下有如下文件:
而且我在编译内核的时候,发现有这么几条提醒,似乎有问题:
DTC arch/arm/dts/sun8i-v3s-licheepi-zero.dtb
arch/arm/dts/sun8i-v3s-licheepi-zero.dtb: Warning (unit_address_vs_reg): Node /soc/pinctrl@01c20800/uart0@0 has a unit name, but no reg property
arch/arm/dts/sun8i-v3s-licheepi-zero.dtb: Warning (unit_address_vs_reg): Node /soc/pinctrl@01c20800/mmc0@0 has a unit name, but no reg property
arch/arm/dts/sun8i-v3s-licheepi-zero.dtb: Warning (unit_address_vs_reg): Node /soc/pinctrl@01c20800/ahci_pwr_pin@0 has a unit name, but no reg property
arch/arm/dts/sun8i-v3s-licheepi-zero.dtb: Warning (unit_address_vs_reg): Node /soc/pinctrl@01c20800/usb0_vbus_pin@0 has a unit name, but no reg property
arch/arm/dts/sun8i-v3s-licheepi-zero.dtb: Warning (unit_address_vs_reg): Node /soc/pinctrl@01c20800/usb1_vbus_pin@0 has a unit name, but no reg property
arch/arm/dts/sun8i-v3s-licheepi-zero.dtb: Warning (unit_address_vs_reg): Node /soc/pinctrl@01c20800/usb2_vbus_pin@0 has a unit name, but no reg property
arch/arm/dts/sun8i-v3s-licheepi-zero.dtb: Warning (simple_bus_reg): Node /soc/mmc@01c0f000 simple-bus unit address format error, expected "1c0f000"
arch/arm/dts/sun8i-v3s-licheepi-zero.dtb: Warning (simple_bus_reg): Node /soc/mmc@01c10000 simple-bus unit address format error, expected "1c10000"
arch/arm/dts/sun8i-v3s-licheepi-zero.dtb: Warning (simple_bus_reg): Node /soc/mmc@01c11000 simple-bus unit address format error, expected "1c11000"
arch/arm/dts/sun8i-v3s-licheepi-zero.dtb: Warning (simple_bus_reg): Node /soc/usb@01c19000 simple-bus unit address format error, expected "1c19000"
arch/arm/dts/sun8i-v3s-licheepi-zero.dtb: Warning (simple_bus_reg): Node /soc/phy@01c19400 simple-bus unit address format error, expected "1c19400"
arch/arm/dts/sun8i-v3s-licheepi-zero.dtb: Warning (simple_bus_reg): Node /soc/clock@01c20000 simple-bus unit address format error, expected "1c20000"
arch/arm/dts/sun8i-v3s-licheepi-zero.dtb: Warning (simple_bus_reg): Node /soc/rtc@01c20400 simple-bus unit address format error, expected "1c20400"
arch/arm/dts/sun8i-v3s-licheepi-zero.dtb: Warning (simple_bus_reg): Node /soc/pinctrl@01c20800 simple-bus unit address format error, expected "1c20800"
arch/arm/dts/sun8i-v3s-licheepi-zero.dtb: Warning (simple_bus_reg): Node /soc/timer@01c20c00 simple-bus unit address format error, expected "1c20c00"
arch/arm/dts/sun8i-v3s-licheepi-zero.dtb: Warning (simple_bus_reg): Node /soc/watchdog@01c20ca0 simple-bus unit address format error, expected "1c20ca0"
arch/arm/dts/sun8i-v3s-licheepi-zero.dtb: Warning (simple_bus_reg): Node /soc/serial@01c28000 simple-bus unit address format error, expected "1c28000"
arch/arm/dts/sun8i-v3s-licheepi-zero.dtb: Warning (simple_bus_reg): Node /soc/serial@01c28400 simple-bus unit address format error, expected "1c28400"
arch/arm/dts/sun8i-v3s-licheepi-zero.dtb: Warning (simple_bus_reg): Node /soc/serial@01c28800 simple-bus unit address format error, expected "1c28800"
arch/arm/dts/sun8i-v3s-licheepi-zero.dtb: Warning (simple_bus_reg): Node /soc/interrupt-controller@01c81000 simple-bus unit address format error, expected "1c81000"
SHIPPED dts/dt.dtb
1. 不需要改 u-boot 里面的设备树配置和驱动
2. 你看下 kernel 的 log, 有没有提示这三个 串口都启动成功了,有可能别的复用,导致 IO 冲突,有些ttyS没有成功。
按照学习的资料,我首先修改了以下地方,在dts里使能UART
sun8i-v3s.dtsi:
uart0_pins_a: uart0@0 { pins = "PB8", "PB9";function = "uart0";bias-pull-up; };
uart1_pins_a: uart1@0 { pins = "PE21", "PE22";function = "uart1";bias-pull-up; };
uart2_pins_a: uart2@0 { pins = "PB0", "PB1";function = "uart2";bias-pull-up; };
sun8i-v3s-licheepi-zero.dts:
&uart0 { pinctrl-0 = <&uart0_pins_a>;pinctrl-names = "default";status = "okay"; };
&uart1 { pinctrl-0 = <&uart1_pins_a>;pinctrl-names = "default";status = "okay"; };
&uart2 { pinctrl-0 = <&uart2_pins_a>;pinctrl-names = "default";status = "okay"; };
最后在licheepi zero的dev文件夹下确实发现了有ttyS0、ttyS1、ttyS2等文件,但是按照例子打开ttyS1,还是提示打开失败
fd = open("/dev/ttyS1", O_RDWR | O_NOCTTY | O_NONBLOCK);
搞不懂了,另外,sun8i-v3s.dtsi和sun8i-v3s-licheepi-zero.dts这俩文件我改的是linux内核里的,不是u-boot里的,难道u-boot里的这俩文件也要改?
按照LIcheepi Zero的“SPI系统杂谈”的顺序,编译好了所有文件,搞好了所有镜像(过程都是按照32M准备的,flash是MX25L256),
出现问题有两个:
1、用fel工具的时候,如果fel-spiflash.c文件不改动,还是用默认的最大16M,则用sudo sunxi-fel spiflash-info 命令能正常检测到32M的flash
但是按照说明改动fel-spiflash.c使其能使用32M的flash,再编译安装后,则用sudo sunxi-fel spiflash-info 命令失效,不能检测到flash
2、为了保险起见,先改回fel-spiflash.c文件到默认的16M的flash模式,同时重新制作了一个16M的镜像,下载成功,板子串口有输出,但是错误,启动信息如下:
U-Boot SPL 2017.01-rc2-00073-gdd6e8740dc-dirty (Aug 24 2019 - 23:32:05)
DRAM: 64 MiB
Trying to boot from sunxi SPI
U-Boot 2017.01-rc2-00073-gdd6e8740dc-dirty (Aug 24 2019 - 23:32:05 +0800) Allwinner Technology
CPU: Allwinner V3s (SUN8I 1681)
Model: Lichee Pi Zero
DRAM: 64 MiB
MMC: SUNXI SD/MMC: 0
SF: Detected mx25l25635f with page size 256 Bytes, erase size 64 KiB, total 32 MiB
*** Warning - bad CRC, using default environment
Setting up a 800x480 lcd console (overscan 0x0)
dotclock: 33000kHz = 33000kHz: (1 * 3MHz * 66) / 6
In: serial@01c28000
Out: serial@01c28000
Err: serial@01c28000
U-Boot 2017.01-rc2-00073-gdd6e8740dc-dirty (Aug 24 2019 - 23:32:05 +0800) Allwinner Technology
CPU: Allwinner V3s (SUN8I 1681)
Model: Lichee Pi Zero
DRAM: 64 MiB
MMC: SUNXI SD/MMC: 0
SF: Detected mx25l25635f with page size 256 Bytes, erase size 64 KiB, total 32 MiB
*** Warning - bad CRC, using default environment
Setting up a 800x480 lcd console (overscan 0x0)
dotclock: 33000kHz = 33000kHz: (1 * 3MHz * 66) / 6
In: serial@01c28000
Out: serial@01c28000
Err: serial@01c28000
Net: No ethernet found.
starting USB...
No controllers found
Hit any key to stop autoboot: 0
SF: Detected mx25l25635f with page size 256 Bytes, erase size 64 KiB, total 32 MiB
device 0 offset 0x100000, size 0x10000
SF: 65536 bytes @ 0x100000 Read: OK
device 0 offset 0x110000, size 0x400000
SF: 4194304 bytes @ 0x110000 Read: OK
## Flattened Device Tree blob at 41800000
Booting using the fdt blob at 0x41800000
Loading Device Tree to 42dfa000, end 42dff389 ... OK
Starting kernel ...
[ 0.000000] Booting Linux on physical CPU 0x0
[ 0.000000] Linux version 4.10.15-licheepi-zero+ (qiup@qiup-virtual-machine) (gcc version 7.4.0 (Ubuntu/Linaro 7.4.0-1ubuntu1~18.04.1) ) #22 SMP Sun Aug 25 17:34:28 CST 2019
[ 0.000000] CPU: ARMv7 Processor [410fc075] revision 5 (ARMv7), cr=10c5387d
[ 0.000000] CPU: div instructions available: patching division code
[ 0.000000] CPU: PIPT / VIPT nonaliasing data cache, VIPT aliasing instruction cache
[ 0.000000] OF: fdt:Machine model: Lichee Pi Zero
[ 0.000000] Memory policy: Data cache writealloc
[ 0.000000] percpu: Embedded 14 pages/cpu @c3dea000 s24716 r8192 d24436 u57344
[ 0.000000] Built 1 zonelists in Zone order, mobility grouping on. Total pages: 15883
[ 0.000000] Kernel command line: console=ttyS0,115200 earlyprintk panic=5 rootwait mtdparts=spi32766.0:1M(uboot)ro,64k(dtb)ro,4M(kernel)ro,-(rootfs) root=31:03 rw rootfstype=jffs2
[ 0.000000] PID hash table entries: 256 (order: -2, 1024 bytes)
[ 0.000000] Dentry cache hash table entries: 8192 (order: 3, 32768 bytes)
[ 0.000000] Inode-cache hash table entries: 4096 (order: 2, 16384 bytes)
[ 0.000000] Memory: 53640K/64036K available (6144K kernel code, 200K rwdata, 1412K rodata, 1024K init, 262K bss, 10396K reserved, 0K cma-reserved, 0K highmem)
[ 0.000000] Virtual kernel memory layout:
[ 0.000000] vector : 0xffff0000 - 0xffff1000 ( 4 kB)
[ 0.000000] fixmap : 0xffc00000 - 0xfff00000 (3072 kB)
[ 0.000000] vmalloc : 0xc4000000 - 0xff800000 ( 952 MB)
[ 0.000000] lowmem : 0xc0000000 - 0xc3e89000 ( 62 MB)
[ 0.000000] pkmap : 0xbfe00000 - 0xc0000000 ( 2 MB)
[ 0.000000] modules : 0xbf000000 - 0xbfe00000 ( 14 MB)
[ 0.000000] .text : 0xc0008000 - 0xc0700000 (7136 kB)
[ 0.000000] .init : 0xc0900000 - 0xc0a00000 (1024 kB)
[ 0.000000] .data : 0xc0a00000 - 0xc0a321c0 ( 201 kB)
[ 0.000000] .bss : 0xc0a34000 - 0xc0a7584c ( 263 kB)
[ 0.000000] SLUB: HWalign=64, Order=0-3, MinObjects=0, CPUs=1, Nodes=1
[ 0.000000] Hierarchical RCU implementation.
[ 0.000000] Build-time adjustment of leaf fanout to 32.
[ 0.000000] RCU restricting CPUs from NR_CPUS=8 to nr_cpu_ids=1.
[ 0.000000] RCU: Adjusting geometry for rcu_fanout_leaf=32, nr_cpu_ids=1
[ 0.000000] NR_IRQS:16 nr_irqs:16 16
[ 0.000000] arm_arch_timer: Architected cp15 timer(s) running at 24.00MHz (virt).
[ 0.000000] clocksource: arch_sys_counter: mask: 0xffffffffffffff max_cycles: 0x588fe9dc0, max_idle_ns: 440795202592 ns
[ 0.000007] sched_clock: 56 bits at 24MHz, resolution 41ns, wraps every 4398046511097ns
[ 0.000018] Switching to timer-based delay loop, resolution 41ns
[ 0.000137] clocksource: timer: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 79635851949 ns
[ 0.000345] Console: colour dummy device 80x30
[ 0.000382] Calibrating delay loop (skipped), value calculated using timer frequency.. 48.00 BogoMIPS (lpj=240000)
[ 0.000397] pid_max: default: 32768 minimum: 301
[ 0.000534] Mount-cache hash table entries: 1024 (order: 0, 4096 bytes)
[ 0.000545] Mountpoint-cache hash table entries: 1024 (order: 0, 4096 bytes)
[ 0.001240] CPU: Testing write buffer coherency: ok
[ 0.001651] /cpus/cpu@0 missing clock-frequency property
[ 0.001677] CPU0: thread -1, cpu 0, socket 0, mpidr 80000000
[ 0.002042] Setting up static identity map for 0x40100000 - 0x40100058
[ 0.002798] smp: Bringing up secondary CPUs ...
[ 0.002816] smp: Brought up 1 node, 1 CPU
[ 0.002826] SMP: Total of 1 processors activated (48.00 BogoMIPS).
[ 0.002832] CPU: All CPU(s) started in SVC mode.
[ 0.003632] devtmpfs: initialized
[ 0.006571] VFP support v0.3: implementor 41 architecture 2 part 30 variant 7 rev 5
[ 0.006841] clocksource: jiffies: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 19112604462750000 ns
[ 0.006870] futex hash table entries: 256 (order: 2, 16384 bytes)
[ 0.007023] pinctrl core: initialized pinctrl subsystem
[ 0.008039] NET: Registered protocol family 16
[ 0.008527] DMA: preallocated 256 KiB pool for atomic coherent allocations
[ 0.009770] hw-breakpoint: found 5 (+1 reserved) breakpoint and 4 watchpoint registers.
[ 0.009786] hw-breakpoint: maximum watchpoint size is 8 bytes.
[ 0.021388] SCSI subsystem initialized
[ 0.021664] usbcore: registered new interface driver usbfs
[ 0.021726] usbcore: registered new interface driver hub
[ 0.021825] usbcore: registered new device driver usb
[ 0.022064] pps_core: LinuxPPS API ver. 1 registered
[ 0.022073] pps_core: Software ver. 5.3.6 - Copyright 2005-2007 Rodolfo Giometti <giometti@linux.it>
[ 0.022095] PTP clock support registered
[ 0.022298] Advanced Linux Sound Architecture Driver Initialized.
[ 0.024145] clocksource: Switched to clocksource arch_sys_counter
[ 0.024979] simple-framebuffer 43e89000.framebuffer: framebuffer at 0x43e89000, 0x177000 bytes, mapped to 0xc4080000
[ 0.024999] simple-framebuffer 43e89000.framebuffer: format=x8r8g8b8, mode=800x480x32, linelength=3200
[ 0.031858] Console: switching to colour frame buffer device 100x30
[ 0.038026] simple-framebuffer 43e89000.framebuffer: fb0: simplefb registered!
[ 0.048235] NET: Registered protocol family 2
[ 0.048866] TCP established hash table entries: 1024 (order: 0, 4096 bytes)
[ 0.048895] TCP bind hash table entries: 1024 (order: 1, 8192 bytes)
[ 0.048918] TCP: Hash tables configured (established 1024 bind 1024)
[ 0.049007] UDP hash table entries: 256 (order: 1, 8192 bytes)
[ 0.049054] UDP-Lite hash table entries: 256 (order: 1, 8192 bytes)
[ 0.049260] NET: Registered protocol family 1
[ 0.049892] RPC: Registered named UNIX socket transport module.
[ 0.049912] RPC: Registered udp transport module.
[ 0.049918] RPC: Registered tcp transport module.
[ 0.049922] RPC: Registered tcp NFSv4.1 backchannel transport module.
[ 0.052182] workingset: timestamp_bits=30 max_order=14 bucket_order=0
[ 0.061359] NFS: Registering the id_resolver key type
[ 0.061412] Key type id_resolver registered
[ 0.061420] Key type id_legacy registered
[ 0.061472] jffs2: version 2.2. (NAND) © 2001-2006 Red Hat, Inc.
[ 0.066442] Block layer SCSI generic (bsg) driver version 0.4 loaded (major 249)
[ 0.066462] io scheduler noop registered
[ 0.066469] io scheduler deadline registered
[ 0.066687] io scheduler cfq registered (default)
[ 0.070798] sun8i-v3s-pinctrl 1c20800.pinctrl: initialized sunXi PIO driver
[ 0.140944] Serial: 8250/16550 driver, 8 ports, IRQ sharing disabled
[ 0.144351] console [ttyS0] disabled
[ 0.164574] 1c28000.serial: ttyS0 at MMIO 0x1c28000 (irq = 31, base_baud = 1500000) is a U6_16550A
[ 0.763550] console [ttyS0] enabled
[ 0.788519] 1c28400.serial: ttyS1 at MMIO 0x1c28400 (irq = 32, base_baud = 1500000) is a U6_16550A
[ 0.798204] [drm] Initialized
[ 0.803157] SPI driver: fifo=64
[ 0.804366] m25p80 spi32766.0: mx25l25635e (32768 Kbytes)
[ 0.812931] 4 cmdlinepart partitions found on MTD device spi32766.0
[ 0.819268] Creating 4 MTD partitions on "spi32766.0":
[ 0.824436] 0x000000000000-0x000000100000 : "uboot"
[ 0.829975] 0x000000100000-0x000000110000 : "dtb"
[ 0.835221] 0x000000110000-0x000000510000 : "kernel"
[ 0.840583] 0x000000510000-0x000002000000 : "rootfs"
[ 0.846096] sun6i-spi 1c68000.spi: chipselect 0 already in use
[ 0.851930] spi_master spi32766: spi_device register error /soc/spi@01c68000/spiuart@0x00
[ 0.860161] spi_master spi32766: Failed to create SPI device for /soc/spi@01c68000/spiuart@0x00
[ 0.869262] libphy: Fixed MDIO Bus: probed
[ 0.873681] usbcore: registered new interface driver r8152
[ 0.879284] ehci_hcd: USB 2.0 'Enhanced' Host Controller (EHCI) Driver
[ 0.885838] ehci-platform: EHCI generic platform driver
[ 0.891175] ohci_hcd: USB 1.1 'Open' Host Controller (OHCI) Driver
[ 0.897413] ohci-platform: OHCI generic platform driver
[ 0.903114] udc-core: couldn't find an available UDC - added [g_cdc] to list of pending drivers
[ 0.912818] sun6i-rtc 1c20400.rtc: rtc core: registered rtc-sun6i as rtc0
[ 0.919694] sun6i-rtc 1c20400.rtc: RTC enabled
[ 0.924258] i2c /dev entries driver
[ 0.929079] input: ns2009_ts as /devices/platform/soc/1c2ac00.i2c/i2c-0/0-0048/input/input0
[ 0.938687] sunxi-wdt 1c20ca0.watchdog: Watchdog enabled (timeout=16 sec, nowayout=0)
[ 1.004189] sunxi-mmc 1c0f000.mmc: base:0xc406d000 irq:23
[ 1.010509] usbcore: registered new interface driver usbhid
[ 1.016168] usbhid: USB HID core driver
[ 1.021714] NET: Registered protocol family 17
[ 1.026429] Key type dns_resolver registered
[ 1.030858] Registering SWP/SWPB emulation handler
[ 1.042064] usb_phy_generic.0.auto supply vcc not found, using dummy regulator
[ 1.050024] musb-hdrc musb-hdrc.1.auto: MUSB HDRC host driver
[ 1.055875] musb-hdrc musb-hdrc.1.auto: new USB bus registered, assigned bus number 1
[ 1.067157] hub 1-0:1.0: USB hub found
[ 1.071034] hub 1-0:1.0: 1 port detected
[ 1.075800] using random self ethernet address
[ 1.080291] using random host ethernet address
[ 1.085898] usb0: HOST MAC e6:5d:b1:9b:59:b1
[ 1.090214] usb0: MAC f2:ea:ac:bd:ea:31
[ 1.094092] g_cdc gadget: CDC Composite Gadget, version: King Kamehameha Day 2008
[ 1.101678] g_cdc gadget: g_cdc ready
[ 1.105700] sun6i-rtc 1c20400.rtc: setting system clock to 1970-01-01 00:05:07 UTC (307)
[ 1.114023] vcc3v0: disabling
[ 1.117071] vcc5v0: disabling
[ 1.120039] ALSA device list:
[ 1.123001] No soundcards found.
[ 1.128588] random: fast init done
[ 1.170230] random: crng init done
[ 3.503370] VFS: Mounted root (jffs2 filesystem) on device 31:3.
[ 3.510528] devtmpfs: mounted
[ 3.514741] Freeing unused kernel memory: 1024K
mount: you must be root
[ 5.710109] ------------[ cut here ]------------
[ 5.714850] WARNING: CPU: 0 PID: 1 at drivers/mtd/spi-nor/spi-nor.c:1182 spi_nor_write+0x138/0x198
[ 5.723797] Writing at offset 36 into a NOR page. Writing partial pages may decrease reliability and increase wear of NOR flash.
[ 5.723802] Modules linked in:
[ 5.738437] CPU: 0 PID: 1 Comm: init Not tainted 4.10.15-licheepi-zero+ #22
[ 5.745386] Hardware name: Allwinner sun8i Family
[ 5.750117] [<c010e2a4>] (unwind_backtrace) from [<c010afa0>] (show_stack+0x10/0x14)
[ 5.757858] [<c010afa0>] (show_stack) from [<c0345978>] (dump_stack+0x88/0x9c)
[ 5.765080] [<c0345978>] (dump_stack) from [<c011b3f4>] (__warn+0xe8/0x100)
[ 5.772038] [<c011b3f4>] (__warn) from [<c011b444>] (warn_slowpath_fmt+0x38/0x48)
[ 5.779517] [<c011b444>] (warn_slowpath_fmt) from [<c0450ef4>] (spi_nor_write+0x138/0x198)
[ 5.787778] [<c0450ef4>] (spi_nor_write) from [<c04494f8>] (mtd_writev+0x94/0xe4)
[ 5.795259] [<c04494f8>] (mtd_writev) from [<c02fb0f4>] (jffs2_flash_writev+0x2cc/0x48c)
[ 5.803344] [<c02fb0f4>] (jffs2_flash_writev) from [<c02f41c0>] (jffs2_write_dnode+0xfc/0x328)
[ 5.811947] [<c02f41c0>] (jffs2_write_dnode) from [<c02f4a9c>] (jffs2_do_create+0x90/0x230)
[ 5.820291] [<c02f4a9c>] (jffs2_do_create) from [<c02ef138>] (jffs2_create+0xa0/0x120)
[ 5.828203] [<c02ef138>] (jffs2_create) from [<c01fed80>] (path_openat+0xc78/0x1128)
[ 5.835941] [<c01fed80>] (path_openat) from [<c0200510>] (do_filp_open+0x60/0xc4)
[ 5.843418] [<c0200510>] (do_filp_open) from [<c01ef524>] (do_sys_open+0x15c/0x1dc)
[ 5.851069] [<c01ef524>] (do_sys_open) from [<c0107480>] (ret_fast_syscall+0x0/0x3c)
[ 5.858875] ---[ end trace 00f85cd09215ed06 ]---
mount: you must be root
mkdir: can't create directory '/dev/pts': Permission denied
mkdir: can't create directory '/dev/shm': Permission denied
mount: you must be root
hostname: sethostname: Operation not permitted
Starting logging: OK
Starting mdev...
/etc/init.d/S10mdev: line 21: can't create /proc/sys/kernel/hotplug: nonexistent directory
mdev: /sys/dev: No such file or directory
modprobe: can't change directory to '/lib/modules': No such file or directory
Initializing random number generator... done.
Starting network: ip: RTNETLINK answers: Operation not permitted
ip: SIOCSIFFLAGS: Operation not permitted
FAIL
can't open /dev/ttyS0: Permission denied
can't open /dev/ttyS0: Permission denied
can't open /dev/ttyS0: Permission denied
can't open /dev/ttyS0: Permission denied
can't open /dev/ttyS0: Permission denied
后边就一直重复这这句话,而且LCD屏幕上在uboot阶段还能打印信息,过去之后也没信息显示了。
完全按照licheepi zero的“SPI系统杂谈”章节下载、操作,但是发现
当make ARCH=arm menuconfig 之后出现的图形界面和文档上的不一样,更加复杂,而且默认选中了很多东西,编译也无法通过
不得已,就用了百度网盘上下载的开发板资料里linux.tar解压后使用,但是发现
当make ARCH=arm menuconfig 之后出现的图形界面里没有支持“ Journalling Flash File System v2 (JFFS2) support”的选项,
只能选JFS file system support,(如下图片)蒙圈了,如果选择这个,那边后边的打包都要用jffs,不能用jffs2?
不对,不是这个问题,取消选中的那俩功能后又冒出来别的问题,还是过不了
而且编译器来时间特别长
按照licheepi zero的“spi系统杂谈”下载和操作,最后编译的时候,有那么几处错误,过不了
第一处:
arm-linux-gnueabihf-gcc: internal compiler error: 已杀死 (program cc1)
Please submit a full bug report,
with preprocessed source if appropriate.
See <file:///usr/share/doc/gcc-7/README.Bugs> for instructions.
scripts/Makefile.build:294: recipe for target 'drivers/infiniband/hw/cxgb3/iwch_provider.o' failed
make[4]: *** [drivers/infiniband/hw/cxgb3/iwch_provider.o] Error 4
make[4]: *** 正在等待未完成的任务....
第二处:
scripts/Makefile.build:553: recipe for target 'drivers/infiniband/hw/cxgb3' failed
make[3]: *** [drivers/infiniband/hw/cxgb3] Error 2
scripts/Makefile.build:553: recipe for target 'drivers/infiniband/hw' failed
make[2]: *** [drivers/infiniband/hw] Error 2
make[2]: *** 正在等待未完成的任务....
第三处:
scripts/Makefile.build:553: recipe for target 'drivers/infiniband' failed
make[1]: *** [drivers/infiniband] Error 2
Makefile:988: recipe for target 'drivers' failed
make: *** [drivers] Error 2
make: *** 正在等待未完成的任务....
第四处:
In file included from ./include/uapi/linux/stddef.h:1:0,
from ./include/linux/stddef.h:4,
from ./include/uapi/linux/posix_types.h:4,
from ./include/uapi/linux/types.h:13,
from ./include/linux/types.h:5,
from fs/xfs/xfs_linux.h:21,
from fs/xfs/xfs.h:32,
from fs/xfs/xfs_super.c:19:
In function ‘xfs_check_ondisk_structs’,
inlined from ‘init_xfs_fs’ at fs/xfs/xfs_super.c:1973:2:
./include/linux/compiler.h:518:38: error: call to ‘__compiletime_assert_119’ declared with attribute error: XFS: sizeof(xfs_dir2_sf_entry_t) is wrong, expected 3
_compiletime_assert(condition, msg, __compiletime_assert_, __LINE__)
第五处:
scripts/Makefile.build:294: recipe for target 'fs/xfs/xfs_super.o' failed
make[2]: *** [fs/xfs/xfs_super.o] Error 1
make[2]: *** 正在等待未完成的任务....
第六处:
In file included from ./include/uapi/linux/stddef.h:1:0,
from ./include/linux/stddef.h:4,
from ./include/uapi/linux/posix_types.h:4,
from ./include/uapi/linux/types.h:13,
from ./include/linux/types.h:5,
from fs/xfs/xfs_linux.h:21,
from fs/xfs/xfs.h:32,
from fs/xfs/xfs_super.c:19:
In function ‘xfs_check_ondisk_structs’,
inlined from ‘init_xfs_fs’ at fs/xfs/xfs_super.c:1973:2:
./include/linux/compiler.h:518:38: error: call to ‘__compiletime_assert_119’ declared with attribute error: XFS: sizeof(xfs_dir2_sf_entry_t) is wrong, expected 3
_compiletime_assert(condition, msg, __compiletime_assert_, __LINE__)
第七处:
In function ‘xfs_check_ondisk_structs’,
inlined from ‘init_xfs_fs’ at fs/xfs/xfs_super.c:1973:2:
./include/linux/compiler.h:518:38: error: call to ‘__compiletime_assert_119’ declared with attribute error: XFS: sizeof(xfs_dir2_sf_entry_t) is wrong, expected 3
_compiletime_assert(condition, msg, __compiletime_assert_, __LINE__)
第八处:
scripts/Makefile.build:294: recipe for target 'fs/xfs/xfs_super.o' failed
make[2]: *** [fs/xfs/xfs_super.o] Error 1
scripts/Makefile.build:553: recipe for target 'fs/xfs' failed
make[1]: *** [fs/xfs] Error 2
Makefile:988: recipe for target 'fs' failed
make: *** [fs] Error 2
不过编译的时候又错误了,晕啊
In file included from include/common.h:165:0,
from arch/arm/cpu/armv8/generic_timer.c:8:
arch/arm/cpu/armv8/generic_timer.c: At top level:
./arch/arm/include/asm/global_data.h:100:58: error: invalid register name for ‘gd’
#define DECLARE_GLOBAL_DATA_PTR register volatile gd_t *gd asm ("x18")
^
arch/arm/cpu/armv8/generic_timer.c:12:1: note: in expansion of macro ‘DECLARE_GLOBAL_DATA_PTR’
DECLARE_GLOBAL_DATA_PTR;
^~~~~~~~~~~~~~~~~~~~~~~
scripts/Makefile.build:280: recipe for target 'arch/arm/cpu/armv8/generic_timer.o' failed
make[1]: *** [arch/arm/cpu/armv8/generic_timer.o] Error 1
Makefile:1206: recipe for target 'arch/arm/cpu/armv8' failed
make: *** [arch/arm/cpu/armv8] Error 2
real 0m5.739s
user 0m4.531s
sys 0m0.932s
还有这种操作 ;(
按照licheepi zero的“spi系统杂谈”里的内容,下载了支持spi的uboot,结果打开图形化的配置(make ARCH=arm menuconfig)都不能成功,信息如下:
./scripts/kconfig/lxdialog/check-lxdialog.sh: 行 3: $'\r': 未找到命令
./scripts/kconfig/lxdialog/check-lxdialog.sh: 行 5: 未预期的符号 `$'\r'' 附近有语法错误
'/scripts/kconfig/lxdialog/check-lxdialog.sh: 行 5: `ldflags()
./scripts/kconfig/check.sh: 行 14: 语法错误: 未预期的文件结尾
./scripts/kconfig/lxdialog/check-lxdialog.sh: 行 3: $'\r': 未找到命令
./scripts/kconfig/lxdialog/check-lxdialog.sh: 行 5: 未预期的符号 `$'\r'' 附近有语法错误
'/scripts/kconfig/lxdialog/check-lxdialog.sh: 行 5: `ldflags()
./scripts/kconfig/check.sh: 行 14: 语法错误: 未预期的文件结尾
./scripts/kconfig/lxdialog/check-lxdialog.sh: 行 3: $'\r': 未找到命令
./scripts/kconfig/lxdialog/check-lxdialog.sh: 行 5: 未预期的符号 `$'\r'' 附近有语法错误
'/scripts/kconfig/lxdialog/check-lxdialog.sh: 行 5: `ldflags()
./scripts/kconfig/check.sh: 行 14: 语法错误: 未预期的文件结尾
./scripts/kconfig/lxdialog/check-lxdialog.sh: 行 3: $'\r': 未找到命令
./scripts/kconfig/lxdialog/check-lxdialog.sh: 行 5: 未预期的符号 `$'\r'' 附近有语法错误
'/scripts/kconfig/lxdialog/check-lxdialog.sh: 行 5: `ldflags()
./scripts/kconfig/check.sh: 行 14: 语法错误: 未预期的文件结尾
HOSTCC scripts/kconfig/mconf.o
In file included from scripts/kconfig/mconf.c:23:0:
scripts/kconfig/lxdialog/dialog.h:26:10: error: #include expects "FILENAME" or <FILENAME>
#include CURSES_LOC
^~~~~~~~~~
scripts/kconfig/lxdialog/dialog.h:91:2: error: unknown type name ‘chtype’
chtype atr; /* Color attribute */
^~~~~~
scripts/kconfig/lxdialog/dialog.h:188:16: error: unknown type name ‘WINDOW’
int on_key_esc(WINDOW *win);
^~~~~~
scripts/kconfig/lxdialog/dialog.h:209:17: error: unknown type name ‘WINDOW’
void attr_clear(WINDOW * win, int height, int width, chtype attr);
^~~~~~
scripts/kconfig/lxdialog/dialog.h:209:54: error: unknown type name ‘chtype’; did you mean ‘idtype_t’?
void attr_clear(WINDOW * win, int height, int width, chtype attr);
^~~~~~
idtype_t
scripts/kconfig/lxdialog/dialog.h:211:21: error: unknown type name ‘WINDOW’
void print_autowrap(WINDOW * win, const char *prompt, int width, int y, int x);
^~~~~~
scripts/kconfig/lxdialog/dialog.h:212:19: error: unknown type name ‘WINDOW’
void print_button(WINDOW * win, const char *label, int y, int x, int selected);
^~~~~~
scripts/kconfig/lxdialog/dialog.h:213:18: error: unknown type name ‘WINDOW’
void print_title(WINDOW *dialog, const char *title, int width);
^~~~~~
scripts/kconfig/lxdialog/dialog.h:214:15: error: unknown type name ‘WINDOW’
void draw_box(WINDOW * win, int y, int x, int height, int width, chtype box,
^~~~~~
scripts/kconfig/lxdialog/dialog.h:214:66: error: unknown type name ‘chtype’; did you mean ‘idtype_t’?
void draw_box(WINDOW * win, int y, int x, int height, int width, chtype box,
^~~~~~
idtype_t
scripts/kconfig/lxdialog/dialog.h:215:8: error: unknown type name ‘chtype’; did you mean ‘idtype_t’?
chtype border);
^~~~~~
idtype_t
scripts/kconfig/lxdialog/dialog.h:216:18: error: unknown type name ‘WINDOW’
void draw_shadow(WINDOW * win, int y, int x, int height, int width);
^~~~~~
scripts/kconfig/mconf.c: In function ‘conf’:
scripts/kconfig/lxdialog/dialog.h:85:29: error: ‘KEY_MAX’ undeclared (first use in this function); did you mean ‘TMP_MAX’?
#define ERRDISPLAYTOOSMALL (KEY_MAX + 1)
^
scripts/kconfig/mconf.c:671:45: note: in expansion of macro ‘ERRDISPLAYTOOSMALL’
if (res == 1 || res == KEY_ESC || res == -ERRDISPLAYTOOSMALL)
^~~~~~~~~~~~~~~~~~
scripts/kconfig/lxdialog/dialog.h:85:29: note: each undeclared identifier is reported only once for each function it appears in
#define ERRDISPLAYTOOSMALL (KEY_MAX + 1)
^
scripts/kconfig/mconf.c:671:45: note: in expansion of macro ‘ERRDISPLAYTOOSMALL’
if (res == 1 || res == KEY_ESC || res == -ERRDISPLAYTOOSMALL)
^~~~~~~~~~~~~~~~~~
scripts/kconfig/mconf.c: In function ‘show_help’:
scripts/kconfig/mconf.c:793:19: warning: implicit declaration of function ‘getmaxx’; did you mean ‘gettext’? [-Wimplicit-function-declaration]
help.max_width = getmaxx(stdscr) - 10;
^~~~~~~
gettext
scripts/kconfig/mconf.c:793:27: error: ‘stdscr’ undeclared (first use in this function); did you mean ‘stderr’?
help.max_width = getmaxx(stdscr) - 10;
^~~~~~
stderr
In file included from scripts/kconfig/mconf.c:23:0:
scripts/kconfig/mconf.c: In function ‘conf_choice’:
scripts/kconfig/lxdialog/dialog.h:85:29: error: ‘KEY_MAX’ undeclared (first use in this function); did you mean ‘TMP_MAX’?
#define ERRDISPLAYTOOSMALL (KEY_MAX + 1)
^
scripts/kconfig/mconf.c:855:9: note: in expansion of macro ‘ERRDISPLAYTOOSMALL’
case -ERRDISPLAYTOOSMALL:
^~~~~~~~~~~~~~~~~~
scripts/Makefile.host:116: recipe for target 'scripts/kconfig/mconf.o' failed
make[1]: *** [scripts/kconfig/mconf.o] Error 1
Makefile:478: recipe for target 'menuconfig' failed
make: *** [menuconfig] Error 2
页次: 1