buildroot制作编译环境全过程解决
2010-12-08 22:52
330 查看
buildroot制作编译环境全过程解决
2009-08-06 22:30
2009-08-06 22:30
在下载了最新的buildroot之后,解压后,开始了全新的编译过程: crifan@ubuntu904:~/develop/buildroot/buildroot-2009.05$ make xconfig make: *** 没有规则可以创建目标“xconfig”。 停止。 只是想试试图形界面的配置而已,既然不能用,就懒得去折腾了,本来也就是习惯用menuconfig了。 crifan@ubuntu904:~/develop/buildroot/buildroot-2009.05$ make menuconfig make CC="/usr/bin/gcc" -C package/config conf mconf make[1]: 正在进入目录 `/home/crifan/develop/buildroot/buildroot-2009.05/package/config' /usr/bin/gcc -DCURSES_LOC="<curses.h>" -DLOCALE -g -O2 -MM *.c > .depend 2>/dev/null || : make[1]:正在离开目录 `/home/crifan/develop/buildroot/buildroot-2009.05/package/config' make[1]: 正在进入目录 `/home/crifan/develop/buildroot/buildroot-2009.05/package/config' /usr/bin/gcc -DCURSES_LOC="<curses.h>" -DLOCALE -g -O2 -c conf.c -o conf.o conf.c: 在函数‘conf_askvalue’中: conf.c:112: 警告: 忽略声明有 warn_unused_result 属性的‘fgets’的返回值 conf.c: 在函数‘conf_choice’中: conf.c:363: 警告: 忽略声明有 warn_unused_result 属性的‘fgets’的返回值 /usr/bin/gcc -DCURSES_LOC="<curses.h>" -DLOCALE -g -O2 -c kxgettext.c -o kxgettext.o /usr/bin/gcc -DCURSES_LOC="<curses.h>" -DLOCALE -g -O2 -c lxdialog/checklist.c -o lxdialog/checklist.o 在包含自 lxdialog/checklist.c:24 的文件中: lxdialog/dialog.h:32:20: 错误: curses.h:没有该文件或目录 In file included from lxdialog/checklist.c:24: lxdialog/dialog.h:97: 错误: expected specifier-qualifier-list before ‘chtype’ lxdialog/dialog.h:187: 错误: expected ‘)’ before ‘*’ token lxdialog/dialog.h:194: 错误: expected ‘)’ before ‘*’ token lxdialog/dialog.h:196: 错误: expected ‘)’ before ‘*’ token lxdialog/dialog.h:197: 错误: expected ‘)’ before ‘*’ token lxdialog/dialog.h:198: 错误: expected ‘)’ before ‘*’ token lxdialog/dialog.h:199: 错误: expected ‘)’ before ‘*’ token lxdialog/dialog.h:201: 错误: expected ‘)’ before ‘*’ token lxdialog/checklist.c:31: 错误: expected ‘)’ before ‘*’ token lxdialog/checklist.c:59: 错误: expected ‘)’ before ‘*’ token lxdialog/checklist.c:95: 错误: expected ‘)’ before ‘*’ token lxdialog/checklist.c: 在函数‘dialog_checklist’中: lxdialog/checklist.c:116: 错误: ‘WINDOW’未声明(在此函数内第一次使用) lxdialog/checklist.c:116: 错误: (即使在一个函数内多次出现,每个未声明的标识符在其 lxdialog/checklist.c:116: 错误: 所在的函数内也只报告一次。) lxdialog/checklist.c:116: 错误: ‘dialog’未声明(在此函数内第一次使用) lxdialog/checklist.c:116: 错误: ‘list’未声明(在此函数内第一次使用) lxdialog/checklist.c:129: 错误: ‘stdscr’未声明(在此函数内第一次使用) lxdialog/checklist.c:130: 错误: ‘KEY_MAX’未声明(在此函数内第一次使用) lxdialog/checklist.c:137: 错误: ‘COLS’未声明(在此函数内第一次使用) lxdialog/checklist.c:138: 错误: ‘LINES’未声明(在此函数内第一次使用) lxdialog/checklist.c:143: 错误: ‘TRUE’未声明(在此函数内第一次使用) lxdialog/checklist.c:146: 错误: ‘struct dialog_color’没有名为‘atr’的成员 lxdialog/checklist.c:146: 错误: ‘struct dialog_color’没有名为‘atr’的成员 lxdialog/checklist.c:147: 错误: ‘struct dialog_color’没有名为‘atr’的成员 lxdialog/checklist.c:151: 错误: ‘struct dialog_color’没有名为‘atr’的成员 lxdialog/checklist.c:156: 错误: ‘struct dialog_color’没有名为‘atr’的成员 lxdialog/checklist.c:171: 错误: ‘struct dialog_color’没有名为‘atr’的成员 lxdialog/checklist.c:171: 错误: ‘struct dialog_color’没有名为‘atr’的成员 lxdialog/checklist.c:210: 错误: ‘KEY_UP’未声明(在此函数内第一次使用) lxdialog/checklist.c:210: 错误: ‘KEY_DOWN’未声明(在此函数内第一次使用) lxdialog/checklist.c:220: 错误: ‘FALSE’未声明(在此函数内第一次使用) lxdialog/checklist.c:297: 错误: ‘KEY_LEFT’未声明(在此函数内第一次使用) lxdialog/checklist.c:298: 错误: ‘KEY_RIGHT’未声明(在此函数内第一次使用) lxdialog/checklist.c:312: 错误: ‘KEY_RESIZE’未声明(在此函数内第一次使用) make[1]: *** [lxdialog/checklist.o] 错误 1 make[1]:正在离开目录 `/home/crifan/develop/buildroot/buildroot-2009.05/package/config' make: *** [package/config/mconf] 错误 2 第一次menuconfig就出错,不容易的说。。。 去找找原因。 看起来,貌似是ncurses方面的问题,之前某此在ubuntu下编译的时候,也是遇到这个问题, 所以,就去找找这个开发要用到的库: crifan@ubuntu904:~/develop/buildroot/buildroot-2009.05$ sudo apt-cache search ncurses | grep ncurses lib64ncurses5-dev - developer's libraries for ncurses (64-bit) libncurses5-dbg - debugging/profiling libraries for ncurses libncurses5-dev - developer's libraries and docs for ncurses libncursesw5-dbg - debugging/profiling libraries for ncurses libncursesw5-dev - developer's libraries for ncursesw ncurses-term - additional terminal type definitions lib64ncurses5 - shared libraries for terminal handling (64-bit) libncurses5 - 终端控制的共享库 libncursesw5 - shared libraries for terminal handling (wide character support) mtr-tiny - ncurses下的全屏幕路由跟踪工具 ncurses-base - 基本终端类型解析 ncurses-bin - 终端相关程序和man手册页 audtty - ncurses based frontend to audacious aylet - ncurses-based player for Spectrum '.ay' music files bochs-term - Terminal (ncurses-based) plugin for Bochs btscanner - ncurses-based scanner for Bluetooth devices canto - flexible ncurses Atom/RSS newsreader for the console clex - command line file manager which uses the ncurses library dares - rescue files from damaged CDs and DVDs (ncurses-interface) gom - Command line and interactive ncurses-based OSS audio mixer gtypist - A simple ncurses touch typing tutor hexcurse - A ncurses-based hex editor with many features libcunit1-ncurses - Unit Testing Library for C (ncurses) libcunit1-ncurses-dev - Unit Testing Library for C (ncurses) -- development files libcurses-ocaml - OCaml bindings for the ncurses library libcurses-ocaml-dev - OCaml bindings for the ncurses library libkaya-ncurses-dev - Ncurses binding for kaya libkaya-ncursesw-dev - Ncurses binding for kaya libncurses-gst - Ncurses bindings for GNU Smalltalk libncurses-ruby1.8 - ruby Extension for the ncurses C library libncurses-ruby1.9 - ruby Extension for the ncurses C library moc - ncurses based console audio player moc-ffmpeg-plugin - ncurses based console audio player - ffmpeg plugin mtr - Full screen ncurses and X11 traceroute tool ncdu - ncurses disk usage viewer ncurses-hexedit - Edit files/disks in hex, ASCII and EBCDIC ninvaders - A space invaders-like game using ncurses nrss - A ncurses-based RSS reader psk31lx - Soundcard-based ncurses program for operating PSK31 radio - ncurses-based radio application rexima - a simple ncurses/command-line mixer rtorrent - ncurses BitTorrent client based on LibTorrent tcd - Portable CD player with an ncurses interface tig - ncurses-based Git repository browser trafshow - ncurses based utility showing detailed network traffic vifm - a ncurses based file manager with vi like keybindings vuurmuur-conf - netfilter frontend (ncurses GUI) vuurmuur-conf-dbg - netfilter frontend (ncurses GUI debug) yacpi - ncurses based acpi monitor for text mode abook - 基于文本的 ncurses 地址簿应用程序 avida-viewer - ncurses viewer for avida dav-text - A minimalist ncurses-based text editor irmp3-ncurses - irmp3 control frontend libncurses-ruby - ruby Extension for the ncurses C library cmus - lightweight ncurses audio player 说明:apt-cache search + 名字,是去缓存中找和这个名字相关的所有的软件/库。 一般用作,在你不知道具体你需要的库的全名的时候,去找目前有那些相关的库,然后从上面的输出结果中,找到你认为合适的,此处,看了一下,觉得既然是程序开发嘛,看着libncurses5-dev比较像,就选它吧: crifan@ubuntu904:~/develop/buildroot/buildroot-2009.05$ sudo apt-get install libncurses5-dev 正在读取软件包列表... 完成 正在分析软件包的依赖关系树 正在读取状态信息... 完成 下列【新】软件包将被安装: libncurses5-dev 共升级了 0 个软件包,新安装了 1 个软件包,要卸载 0 个软件包,有 9 个软件未被升级。 需要下载 1550kB 的软件包。 解压缩后会消耗掉 6599kB 的额外空间。 获取:1 http://ubuntu.cn99.com jaunty/main libncurses5-dev 5.7+20090207-1ubuntu1 [1550kB] 下载 1550kB,耗时 11s (131kB/s) 选中了曾被取消选择的软件包 libncurses5-dev。 (正在读取数据库 ... 系统当前总共安装有 123415 个文件和目录。) 正在解压缩 libncurses5-dev (从 .../libncurses5-dev_5.7+20090207-1ubuntu1_i386.deb) ... 正在处理用于 man-db 的触发器... 正在设置 libncurses5-dev (5.7+20090207-1ubuntu1) ... 此处是运气比较好,一次就找到了我们需要的(如果万一再去make menuconfig还是不行,那么就继续装那些看起来你认为比较有可能的相关的库): crifan@ubuntu904:~/develop/buildroot/buildroot-2009.05$ make menuconfig make CC="/usr/bin/gcc" -C package/config conf mconf make[1]: 正在进入目录 `/home/crifan/develop/buildroot/buildroot-2009.05/package/config' /usr/bin/gcc -DCURSES_LOC="<ncurses.h>" -DLOCALE -g -O2 -c lxdialog/checklist.c -o lxdialog/checklist.o /usr/bin/gcc -DCURSES_LOC="<ncurses.h>" -DLOCALE -g -O2 -c lxdialog/inputbox.c -o lxdialog/inputbox.o /usr/bin/gcc -DCURSES_LOC="<ncurses.h>" -DLOCALE -g -O2 -c lxdialog/menubox.c -o lxdialog/menubox.o /usr/bin/gcc -DCURSES_LOC="<ncurses.h>" -DLOCALE -g -O2 -c lxdialog/textbox.c -o lxdialog/textbox.o /usr/bin/gcc -DCURSES_LOC="<ncurses.h>" -DLOCALE -g -O2 -c lxdialog/util.c -o lxdialog/util.o /usr/bin/gcc -DCURSES_LOC="<ncurses.h>" -DLOCALE -g -O2 -c lxdialog/yesno.c -o lxdialog/yesno.o /usr/bin/gcc -DCURSES_LOC="<ncurses.h>" -DLOCALE -g -O2 -c mconf.c -o mconf.o /usr/bin/gcc -DCURSES_LOC="<ncurses.h>" -DLOCALE -g -O2 -I. -c zconf.tab.c -o zconf.tab.o /usr/bin/gcc -DCURSES_LOC="<ncurses.h>" -DLOCALE -g -O2 conf.o zconf.tab.o -lncurses -o conf /usr/bin/gcc -DCURSES_LOC="<ncurses.h>" -DLOCALE -g -O2 mconf.o zconf.tab.o lxdialog/checklist.o lxdialog/util.o lxdialog/inputbox.o lxdialog/textbox.o lxdialog/yesno.o lxdialog/menubox.o -lncurses -o mconf 然后就进入buildroot相关的配置了。 在胡乱配置了一通后,就打算去编译了,结果出错了: crifan@ubuntu904:~/develop/buildroot/buildroot-2009.05$ make if [ ! -e "/home/crifan/develop/buildroot/buildroot-2009.05/toolchain_build_i386/bin/sed" ]; then / mkdir -p "/home/crifan/develop/buildroot/buildroot-2009.05/toolchain_build_i386/bin"; / rm -f "/home/crifan/develop/buildroot/buildroot-2009.05/toolchain_build_i386/bin/sed"; / ln -sf "/bin/sed" / "/home/crifan/develop/buildroot/buildroot-2009.05/toolchain_build_i386/bin/sed"; / fi Checking build system dependencies: BUILDROOT_DL_DIR clean: Ok CC clean: Ok CXX clean: Ok CPP clean: Ok CFLAGS clean: Ok INCLUDES clean: Ok CXXFLAGS clean: Ok which installed: Ok sed works: Ok (/bin/sed) GNU make version '3.81': Ok C compiler '/usr/bin/gcc' C compiler version '4.3.3': Ok C++ Compiler installed: FALSE You may have to install 'g++' on your build machine awk installed: Ok bash installed: Ok bison installed: FALSE You must install 'bison' on your build machine make: *** [dependencies] 错误 1 还是以前遇到的问题,最基本的一些编译要用到的工具没有安装,那么就先去安装: crifan@ubuntu904:~/develop/buildroot/buildroot-2009.05$ sudo apt-get install bison 正在读取软件包列表... 完成 正在分析软件包的依赖关系树 正在读取状态信息... 完成 将会安装下列额外的软件包: m4 建议安装的软件包: bison-doc 下列【新】软件包将被安装: bison m4 共升级了 0 个软件包,新安装了 2 个软件包,要卸载 0 个软件包,有 9 个软件未被升级。 需要下载 565kB 的软件包。 解压缩后会消耗掉 1946kB 的额外空间。 您希望继续执行吗?[Y/n]y 获取:1 http://ubuntu.cn99.com jaunty/main m4 1.4.11-1 [218kB] 获取:2 http://ubuntu.cn99.com jaunty/main bison 1:2.3.dfsg-5 [347kB] 下载 565kB,耗时 2s (189kB/s) 选中了曾被取消选择的软件包 m4。 (正在读取数据库 ... 系统当前总共安装有 124454 个文件和目录。) 正在解压缩 m4 (从 .../archives/m4_1.4.11-1_i386.deb) ... 选中了曾被取消选择的软件包 bison。 正在解压缩 bison (从 .../bison_1%3a2.3.dfsg-5_i386.deb) ... 正在处理用于 man-db 的触发器... 正在设置 m4 (1.4.11-1) ... 正在设置 bison (1:2.3.dfsg-5) ... 同样,还需要其他的工具: crifan@ubuntu904:~/develop/buildroot/buildroot-2009.05$ make Checking build system dependencies: BUILDROOT_DL_DIR clean: Ok CC clean: Ok CXX clean: Ok CPP clean: Ok CFLAGS clean: Ok INCLUDES clean: Ok CXXFLAGS clean: Ok which installed: Ok sed works: Ok (/bin/sed) GNU make version '3.81': Ok C compiler '/usr/bin/gcc' C compiler version '4.3.3': Ok C++ Compiler installed: FALSE You may have to install 'g++' on your build machine awk installed: Ok bash installed: Ok bison installed: Ok flex installed: FALSE You must install 'flex' on your build machine 继续安装: crifan@ubuntu904:~/develop/buildroot/buildroot-2009.05$ sudo apt-get install flex [sudo] password for crifan: 正在读取软件包列表... 完成 正在分析软件包的依赖关系树 正在读取状态信息... 完成 下列【新】软件包将被安装: flex 共升级了 0 个软件包,新安装了 1 个软件包,要卸载 0 个软件包,有 9 个软件未被升级。 需要下载 244kB 的软件包。 解压缩后会消耗掉 999kB 的额外空间。 获取:1 http://ubuntu.cn99.com jaunty/main flex 2.5.35-6ubuntu1 [244kB] 下载 244kB,耗时 1s (218kB/s) 选中了曾被取消选择的软件包 flex。 (正在读取数据库 ... 系统当前总共安装有 124538 个文件和目录。) 正在解压缩 flex (从 .../flex_2.5.35-6ubuntu1_i386.deb) ... 正在处理用于 man-db 的触发器... 正在设置 flex (2.5.35-6ubuntu1) ... 还有gettext: crifan@ubuntu904:~/develop/buildroot/buildroot-2009.05$ sudo apt-get install gettext 正在读取软件包列表... 完成 正在分析软件包的依赖关系树 正在读取状态信息... 完成 建议安装的软件包: cvs gettext-doc 下列【新】软件包将被安装: gettext 共升级了 0 个软件包,新安装了 1 个软件包,要卸载 0 个软件包,有 9 个软件未被升级。 需要下载 1910kB 的软件包。 解压缩后会消耗掉 7676kB 的额外空间。 获取:1 http://ubuntu.cn99.com jaunty/main gettext 0.17-6ubuntu2 [1910kB] 下载 1910kB,耗时 7s (242kB/s) 选中了曾被取消选择的软件包 gettext。 (正在读取数据库 ... 系统当前总共安装有 124561 个文件和目录。) 正在解压缩 gettext (从 .../gettext_0.17-6ubuntu2_i386.deb) ... 正在处理用于 man-db 的触发器... 正在设置 gettext (0.17-6ubuntu2) ... 正在处理用于 libc6 的触发器... ldconfig deferred processing now taking place 然后,就可以一直下载各个安装包的源码并且一步步解压,打patch,安装了。。。 make之后,就慢慢编译了. 又遇到了一个错误: checking how to run the C++ preprocessor... /lib/cpp configure: error: C++ preprocessor "/lib/cpp" fails sanity check 百度了一下,结果发现自己之前就遇到过此问题: [fixed]configure: error: C++ preprocessor "/lib/cpp" fails sanity check http://hi.baidu.com/serial_story/blog/item/e9d6668213bb85aa0cf4d293.html 是因为没有装编译开发所需的基本工具,所以去: crifan@ubuntu904:~/develop/buildroot/buildroot-2009.05$ sudo apt-get install build-essential [sudo] password for crifan: 正在读取软件包列表... 完成 正在分析软件包的依赖关系树 正在读取状态信息... 完成 下列软件包是自动安装的并且现在不再被使用了: libqt4-opengl libqt4-assistant libboost-program-options1.35.0 libqt4-test phonon python-qt4-common libakonadiprivate1 libqt4-xmlpatterns libqt4-help libqt4-webkit python-compizconfig python-sip4 libplasma3 kdepimlibs5 libemeraldengine0 kdepimlibs-data 使用'apt-get autoremove'来删除它们 将会安装下列额外的软件包: dpkg-dev g++ g++-4.3 libstdc++6-4.3-dev 建议安装的软件包: debian-keyring g++-multilib g++-4.3-multilib gcc-4.3-doc libstdc++6-4.3-dbg libstdc++6-4.3-doc 下列【新】软件包将被安装: build-essential dpkg-dev g++ g++-4.3 libstdc++6-4.3-dev 共升级了 0 个软件包,新安装了 5 个软件包,要卸载 0 个软件包,有 28 个软件未被升级。 需要下载 6170kB 的软件包。 解压缩后会消耗掉 21.2MB 的额外空间。 您希望继续执行吗?[Y/n]y 获取:1 http://ubuntu.cn99.com jaunty/main libstdc++6-4.3-dev 4.3.3-5ubuntu4 [1356kB] 获取:2 http://ubuntu.cn99.com jaunty/main g++-4.3 4.3.3-5ubuntu4 [4162kB] 获取:3 http://ubuntu.cn99.com jaunty/main g++ 4:4.3.3-1ubuntu1 [1438B] 获取:4 http://ubuntu.cn99.com jaunty/main dpkg-dev 1.14.24ubuntu1 [643kB] 获取:5 http://ubuntu.cn99.com jaunty/main build-essential 11.4 [7172B] 下载 6170kB,耗时 25s (243kB/s) 选中了曾被取消选择的软件包 libstdc++6-4.3-dev。 (正在读取数据库 ... 系统当前总共安装有 133988 个文件和目录。) 正在解压缩 libstdc++6-4.3-dev (从 .../libstdc++6-4.3-dev_4.3.3-5ubuntu4_i386.deb) ... 选中了曾被取消选择的软件包 g++-4.3。 正在解压缩 g++-4.3 (从 .../g++-4.3_4.3.3-5ubuntu4_i386.deb) ... 选中了曾被取消选择的软件包 g++。 正在解压缩 g++ (从 .../g++_4%3a4.3.3-1ubuntu1_i386.deb) ... 选中了曾被取消选择的软件包 dpkg-dev。 正在解压缩 dpkg-dev (从 .../dpkg-dev_1.14.24ubuntu1_all.deb) ... 选中了曾被取消选择的软件包 build-essential。 正在解压缩 build-essential (从 .../build-essential_11.4_i386.deb) ... 正在处理用于 man-db 的触发器... 正在设置 dpkg-dev (1.14.24ubuntu1) ... 正在设置 libstdc++6-4.3-dev (4.3.3-5ubuntu4) ... 正在设置 g++-4.3 (4.3.3-5ubuntu4) ... 正在设置 g++ (4:4.3.3-1ubuntu1) ... 正在设置 build-essential (11.4) ... crifan@ubuntu904:~/develop/buildroot/buildroot-2009.05$ 然后继续make. 在上一次正在下载binutils-2.19.1.tar.bz的时候,直接关机了,估计是没有下载完成该软件,所以导致后来重启后的再make,出现错误: 。。。 bzcat: Compressed file ends unexpectedly; perhaps it is corrupted? *Possible* reason follows. bzcat: Success Input file = /home/crifan/develop/buildroot/buildroot-2009.05/dl/binutils-2.19.1.tar.bz2, output file = (stdout) It is possible that the compressed file(s) have become corrupted. You can use the -tvv option to test integrity of such files. You can use the `bzip2recover' program to attempt to recover data from undamaged sections of corrupted files. tar: 归档文件中异常的 EOF tar: 归档文件中异常的 EOF tar: 错误不可恢复:现在退出 make: *** [/home/crifan/develop/buildroot/buildroot-2009.05/toolchain_build_arm/binutils-2.19.1/.unpacked] 错误 2 然后,打算按照提示去修复: crifan@ubuntu904:~/develop/buildroot/buildroot-2009.05$ bzip2cover /home/crifan/develop/buildroot/buildroot-2009.05/dl/binutils-2.19.1.tar.bz2 bash: bzip2cover:找不到命令 发现没有安装,所以先去安装: crifan@ubuntu904:~/develop/buildroot/buildroot-2009.05$ sudo apt-get install bzip2recover [sudo] password for crifan: 正在读取软件包列表... 完成 正在分析软件包的依赖关系树 正在读取状态信息... 完成 E: 无法找到软件包 bzip2recover 结果还是由于源里面没有这个软件,所以无法安装。 又去试了试: sudo apt-get update 然后再 sudo apt-cache search bzip2recover 也还是找不到任何相关的软件。 所以,无奈之下,只能去删除这个tar包, 让其重新下载了: rm /home/crifan/develop/buildroot/buildroot-2009.05/dl/binutils-2.19.1.tar.bz2 然后再make。就可以重新下载并继续了。。。 最后编译到Kernel的时候,遇到错误: rm -rf /home/crifan/develop/buildroot/buildroot-2009.05/project_build_arm/tq2440/buildroot-config mkdir -p /home/crifan/develop/buildroot/buildroot-2009.05/project_build_arm/tq2440 cp -dpRf package/config/buildroot-config /home/crifan/develop/buildroot/buildroot-2009.05/project_build_arm/tq2440/buildroot-config cp -dpf /home/crifan/develop/buildroot/buildroot-2009.05/project_build_arm/tq2440/linux-2.6.29.4/.config cp: 在 “/home/crifan/develop/buildroot/buildroot-2009.05/project_build_arm/tq2440/linux-2.6.29.4/.config” 后缺少了要操作的目标文件 请尝试执行“cp --help”来获取更多信息。 make: *** [/home/crifan/develop/buildroot/buildroot-2009.05/project_build_arm/tq2440/linux-2.6.29.4/.configured] 错误 1 最后弄了半天,好像明白了,是buildroot里面的configure没有指定.config 和 生产的文件格式:zImage或bzImage,所以去 make menuconfig -> Kernel ---> Kernel type (linux (Same version as linux headers)) ---> 把 (.config) .config file 设置成.config, 把 (bzImage) kernel binary format设置成bzImage,至少就可以接着编译了。 但是此处我暂时只是为了编译buildroot,而之后再折腾kernel,因为还要添加patch了。 所以暂时把 Kernel type (linux (Same version as linux headers)) ---> 改为: Kernel type (none) ---> 暂时不去编译内核。 然后继续make。。。 之后又遇到问题了: configure: error: Configure could not find required X11 libraries exit: 1: Illegal number: aborting. exit: 1: Illegal number: aborting. make: *** [/home/crifan/develop/buildroot/buildroot-2009.05/build_arm/fltk-1.1.7/.stamp_configured] 错误 2 好像是fltk没有找到所需要的库,此处暂时先不去编译他,去configure中把他去掉。 结果愣是没找到我在哪里设置他的,所以,暂时放弃取消的办法。 尝试在Ubunbu里面安装fltk,看看是否解决问题: crifan@ubuntu904:~/develop/buildroot/buildroot-2009.05$ sudo apt-cache search fltk [sudo] password for crifan: fltk1.1-doc - Fast Light Toolkit - documentation libfltk1.1 - Fast Light Toolkit - shared libraries libfltk1.1-dbg - Fast Light Toolkit - shared libraries with debugging symbols libfltk1.1-dev - Fast Light Toolkit - development files fldiff - A graphical diff program flphoto - Image manager with great printing functionality fltk1.1-games - Fast Light Toolkit - example games: checkers, sudoku fluid - Fast Light Toolkit - user interface designer freepops-updater-fltk - Graphical interface for the freepops updater engine goplay - games (and more) package browser using DebTags alsamixergui - graphical soundcard mixer for ALSA soundcard driver crifan@ubuntu904:~/develop/buildroot/buildroot-2009.05$ sudo apt-get install libfltk1.1-dev 正在读取软件包列表... 完成 正在分析软件包的依赖关系树 正在读取状态信息... 完成 下列软件包是自动安装的并且现在不再被使用了: linux-headers-2.6.28-11 linux-headers-2.6.28-11-generic python-compizconfig libemeraldengine0 使用'apt-get autoremove'来删除它们 将会安装下列额外的软件包: libfltk1.1 libgl1-mesa-dev libpthread-stubs0 libpthread-stubs0-dev libx11-dev libxau-dev libxcb1-dev libxdmcp-dev mesa-common-dev x11proto-core-dev x11proto-input-dev x11proto-kb-dev xtrans-dev 建议安装的软件包: fltk1.1-doc fluid libglu1-mesa-dev libglu-dev libjpeg62-dev libpng12-0-dev libxext-dev libxft-dev libxinerama-dev zlib1g-dev libz-dev 下列【新】软件包将被安装: libfltk1.1 libfltk1.1-dev libgl1-mesa-dev libpthread-stubs0 libpthread-stubs0-dev libx11-dev libxau-dev libxcb1-dev libxdmcp-dev mesa-common-dev x11proto-core-dev x11proto-input-dev x11proto-kb-dev xtrans-dev 共升级了 0 个软件包,新安装了 14 个软件包,要卸载 0 个软件包,有 35 个软件未被升级。 需要下载 3331kB 的软件包。 解压缩后会消耗掉 10.4MB 的额外空间。 您希望继续执行吗?[Y/n]y 获取:1 http://ubuntu.cn99.com jaunty/main x11proto-core-dev 7.0.14-2 [92.4kB] 获取:2 http://ubuntu.cn99.com jaunty/main libxau-dev 1:1.0.4-1 [16.3kB] 获取:..........[460kB] 获取:14 http://ubuntu.cn99.com jaunty/main libfltk1.1-dev 1.1.9-6 [625kB] 下载 3331kB,耗时 13s (242kB/s) 正在预设定软件包 ... 选中了曾被取消选择的软件包 x11proto-core-dev。 (正在读取数据库 ... 系统当前总共安装有 159122 个文件和目录。) 正在解压缩 x11proto-core-dev (从 .../x11proto-core-dev_7.0.14-2_all.deb) ... 选中了曾被。。。。。 正在设置 libfltk1.1-dev (1.1.9-6) ... 正在处理用于 libc6 的触发器... ldconfig deferred processing now taking place /sbin/ldconfig.real: file /usr/lib/libQtWebKit.so.4.5 is truncated /sbin/ldconfig.real: file /usr/lib/libQtWebKit.so.4 is truncated /sbin/ldconfig.real: file /usr/lib/libQtWebKit.so.4.5.0 is truncated 结果问题依旧。。。 按照网上这位说的: fltk on ubuntu http://ubuntuforums.org/showthread.php?t=145610 去安装xorg-dev: crifan@ubuntu904:~/develop/buildroot/buildroot-2009.05$ sudo apt-cache search xorg-dev libglu1-xorg-dev - transitional package for Debian etch xorg-dev - the X.Org X Window System development libraries xserver-xorg-dev - Xorg X server - development files crifan@ubuntu904:~/develop/buildroot/buildroot-2009.05$ sudo apt-get install xorg-dev 正在读取软件包列表... 完成 正在分析软件包的依赖关系树 正在读取状态信息... 完成 下列软件包是自动安装的并且现在不再被使用了: linux-headers-2.6.28-11 linux-headers-2.6.28-11-generic python-compizconfig libemeraldengine0 使用'apt-get autoremove'来删除它们 将会安装下列额外的软件包: libdmx-dev libexpat1-dev。。。。。。xinerama-dev xserver-xorg-dev zlib1g-dev 下列【新】软件包将被安装: libdmx-dev libexpat1-dev libfontconfig1-dev libfontenc-dev libfreetype6-dev libfs-dev ..... xserver-xorg-dev zlib1g-dev 共升级了 0 个软件包,新安装了 69 个软件包,要卸载 0 个软件包,有 0 个软件未被升级。 需要下载 4978kB 的软件包。 解压缩后会消耗掉 19.2MB 的额外空间。 您希望继续执行吗?[Y/n]y 获取:1 http://ubuntu.cn99.com jaunty/main x11proto-dmx-dev 1:2.2.2-5build1 [7092B] 。。。。 然后OK了,可以继续make了。。。 结果后来又出错了: Compiling pngpread.c... Archiving ../lib/libfltk_png.a... make[2]:正在离开目录 `/home/crifan/develop/buildroot/buildroot-2009.05/build_arm/fltk-1.1.7/png' === making src === make[2]: 正在进入目录 `/home/crifan/develop/buildroot/buildroot-2009.05/build_arm/fltk-1.1.7/src' Compiling Fl.cxx... make[2]: *** [Fl.o] 错误 1 make[2]:正在离开目录 `/home/crifan/develop/buildroot/buildroot-2009.05/build_arm/fltk-1.1.7/src' make[1]:正在离开目录 `/home/crifan/develop/buildroot/buildroot-2009.05/build_arm/fltk-1.1.7' >>> fltk 1.1.7 'Installing to host (staging directory)' /usr/bin/make -j1 DESTDIR=/home/crifan/develop/buildroot/buildroot-2009.05/build_arm/staging_dir STRIP=true -Not_stripping install -C /home/crifan/develop/buildroot/buildroot-2009.05/build_arm/fltk-1.1.7/ /usr/bin/make: invalid option -- 'N' 用法:make [选项] [目标] ... 选项: -b, -m Ignored for compatibility. -B, --always-make Unconditionally make all targets. 。。。。。。 这个程序创建为 i486-pc-linux-gnu Report bugs to <bug-make@gnu.org> make: *** [/home/crifan/develop/buildroot/buildroot-2009.05/build_arm/fltk-1.1.7/.stamp_staging_installed] 错误 2 无意间,发现,上面还有个错误: flex installed: Ok gettext installed: Ok makeinfo installed: FALSE 。。。 所以,怀疑是不是makeinfo的问题,所以去安装他,结果没有找到: crifan@ubuntu904:~/develop/buildroot/buildroot-2009.05$ sudo apt-get install makeinfo 正在读取软件包列表... 完成 正在分析软件包的依赖关系树 正在读取状态信息... 完成 E: 无法找到软件包 makeinfo 更可恶的是,搜也没搜到: crifan@ubuntu904:~/develop/buildroot/buildroot-2009.05$ sudo apt-cache search makeinfo texi2html - Convert Texinfo files to HTML 百度了一下,按照: makeinfo installed : FALSE 的问题 http://blog.csdn.net/yixilee/archive/2008/12/12/3504511.aspx 去安装texinfo: crifan@ubuntu904:~/develop/buildroot/buildroot-2009.05$ sudo apt-get install texinfo 正在读取软件包列表... 完成 正在分析软件包的依赖关系树 正在读取状态信息... 完成 下列软件包是自动安装的并且现在不再被使用了: linux-headers-2.6.28-11 linux-headers-2.6.28-11-generic python-compizconfig libemeraldengine0 使用'apt-get autoremove'来删除它们 建议安装的软件包: texinfo-doc-nonfree texlive-base texlive-generic-recommended texlive-latex-base 下列【新】软件包将被安装: texinfo 共升级了 0 个软件包,新安装了 1 个软件包,要卸载 0 个软件包,有 0 个软件未被升级。 需要下载 347kB 的软件包。 解压缩后会消耗掉 2195kB 的额外空间。 获取:1 http://ubuntu.cn99.com jaunty/main texinfo 4.11.dfsg.1-4 [347kB] 下载 347kB,耗时 1s (231kB/s) 选中了曾被取消选择的软件包 texinfo。 (正在读取数据库 ... 系统当前总共安装有 162266 个文件和目录。) 正在解压缩 texinfo (从 .../texinfo_4.11.dfsg.1-4_i386.deb) ... 正在处理用于 man-db 的触发器... 正在设置 texinfo (4.11.dfsg.1-4) ... 然后继续make,结果还是不行。。。 |
相关文章推荐
- buildroot制作编译环境全过程解决
- buildroot制作编译环境全过程解决 - 2
- 在进行嵌入式开发之前,首先要建立一个交叉编译环境,这是一套编译器、连接器和libc库等组成的开发环境。文章通过一个具体的例子说明了这些嵌入式交叉编译开发工具的制作过程。 随着消费类电子产品的大量开发和应用和Linux操作系统的不断健壮和强大,嵌入式系统越来
- Qt 4.8.2 VS2008 集成环境搭建过程中编译错误的解决办法
- 【操作系统学习 01】MIT xv6操作系统环境配置及编译(详细过程+部分问题解决方法)
- linux环境手动编译安装Nginx实践过程 附异常解决
- PHP编译过程中常见错误信息的解决方法
- ORB-SLAM2编译过程中遇到libavcodec.a问题解决
- Android编译系统环境初始化过程分析
- FFMPEG在windows平台编译的详细过程,包括环境安装
- 蘑菇街TeamTalk编译连接过程中遇到的问题及解决方法(iOS)
- FFMPEG在windows平台编译的详细过程,包括环境安装
- FFMPEG在windows平台编译的详细过程,包括环境安装
- ++编译过程中"没有找到MFC80UD.DLL,因此这个程序未能启动.重新安装应用程序可能会修复此问题"? 的彻底解决
- 第一部分:使用iReport制作报表的详细过程(Windows环境下)
- Notepad++ 配置 MinGW(gcc)编译环境配置 以及问题解决
- 在Ubuntu 64位环境下编译Liunx内核出现 Can't use 'defined(@array)' 错误的解决办法
- Win7系统 Ogre环境配置 VS2010下编译过程图文详解
- ios 编译过程中碰到std::ios_base::Init::~Init()错误的问题解决方法
- ubuntu14.04下编译linux uboot和kernel时提示arm-linux-gcc: not found 的解决过程