TRIMUI

build buildroot


參考資訊:
1. trimui-toolchain

如下:

$ cd
$ sudo chmod 0777 /opt
$ wget https://buildroot.org/downloads/buildroot-2016.05.tar.gz
$ tar xvf buildroot-2016.05.tar.gz
$ cd buildroot-2016.05
$ vim .config
  BR2_arm=y
  BR2_HOST_DIR="/opt/trimui/"
  BR2_ENABLE_DEBUG=y
  BR2_SHARED_STATIC_LIBS=y
  BR2_KERNEL_HEADERS_3_10=y
  BR2_TOOLCHAIN_BUILDROOT_GLIBC=y
  BR2_GCC_VERSION_6_X=y
  BR2_TOOLCHAIN_BUILDROOT_CXX=y
  BR2_PACKAGE_HOST_GDB=y
  BR2_INIT_NONE=y
  BR2_SYSTEM_BIN_SH_NONE=y
  # BR2_PACKAGE_BUSYBOX is not set
  BR2_PACKAGE_ALSA_UTILS=y
  BR2_PACKAGE_BZIP2=y
  BR2_PACKAGE_ZIP=y
  BR2_PACKAGE_GDB=y
  BR2_PACKAGE_GDB_SERVER=y
  BR2_PACKAGE_GDB_DEBUGGER=y
  BR2_PACKAGE_GDB_TUI=y
  BR2_PACKAGE_SDL=y
  BR2_PACKAGE_SDL_GFX=y
  BR2_PACKAGE_SDL_IMAGE=y
  BR2_PACKAGE_SDL_IMAGE_JPEG=y
  BR2_PACKAGE_SDL_IMAGE_PNG=y
  BR2_PACKAGE_SDL_MIXER=y
  BR2_PACKAGE_SDL_NET=y
  BR2_PACKAGE_SDL_SOUND=y
  BR2_PACKAGE_SDL_TTF=y
  BR2_PACKAGE_SDL2=y
  BR2_PACKAGE_UBUS=y
  BR2_PACKAGE_LIBAO=y
  BR2_PACKAGE_LIBMAD=y
  BR2_PACKAGE_LIBVORBIS=y
  BR2_PACKAGE_TINYALSA=y
  BR2_PACKAGE_TREMOR=y
  BR2_PACKAGE_OPENSSL=y
  BR2_PACKAGE_TSLIB=y
  BR2_PACKAGE_LIBXML2=y
  BR2_PACKAGE_LIBNL=y
  BR2_PACKAGE_LIBNL_TOOLS=y
  BR2_PACKAGE_LIBUCI=y
  BR2_PACKAGE_NCURSES_WCHAR=y
  BR2_PACKAGE_READLINE=y
  BR2_PACKAGE_OPKG=y
  BR2_PACKAGE_OPKG_GPG_SIGN=y
  BR2_PACKAGE_UTIL_LINUX=y
  BR2_PACKAGE_UTIL_LINUX_LIBBLKID=y
  # BR2_TARGET_ROOTFS_TAR is not set

$ make
  freadahead.c: In function 'freadahead':
  freadahead.c:91:3: error: #error "Please port gnulib freadahead.c to your platform! Look at the definition of fflush, fread, ungetc on your system, then report this to bug-gnulib."
    #error "Please port gnulib freadahead.c to your platform! Look at the definition of fflush, fread, ungetc on your system, then report this to bug-gnulib."
     ^~~~~
  make[4]: *** [Makefile:1842: freadahead.o] Error 1
  make[4]: *** Waiting for unfinished jobs....
  fseeko.c: In function 'rpl_fseeko':
  fseeko.c:109:4: error: #error "Please port gnulib fseeko.c to your platform! Look at the code in fseeko.c, then report this to bug-gnulib."
     #error "Please port gnulib fseeko.c to your platform! Look at the code in fseeko.c, then report this to bug-gnulib."

$ cd output/build/host-m4-1.4.17
$ sed -i 's/IO_ftrylockfile/IO_EOF_SEEN/' lib/*.c
$ echo "#define _IO_IN_BACKUP 0x100" >> lib/stdio-impl.h
$ cd ../../../

$ make
  ../../gcc/ubsan.c: In function ‘bool ubsan_use_new_style_p(location_t)’:
  ../../gcc/ubsan.c:1473:23: error: ISO C++ forbids comparison between pointer and integer [-fpermissive]
         || xloc.file == '\0' || xloc.file[0] == '\xff'
                         ^~~~
  make[2]: *** [Makefile:1085: ubsan.o] Error 1
  make[2]: *** Waiting for unfinished jobs....

$ vim output/build/host-gcc-initial-6.1.0/gcc/ubsan.c +1473
  || xloc.file == NULL || xloc.file[0] == '\xff'

$ make
  ../../gcc/ubsan.c: In function ‘bool ubsan_use_new_style_p(location_t)’:
  ../../gcc/ubsan.c:1473:23: error: ISO C++ forbids comparison between pointer and integer [-fpermissive]
         || xloc.file == '\0' || xloc.file[0] == '\xff'

$ vim output/build/host-gcc-final-6.1.0/gcc/ubsan.c +1473
  || xloc.file == NULL || xloc.file[0] == '\xff'

$ make
  lib/fseterr.c: In function 'fseterr':
  lib/fseterr.c:77:3: error: #error "Please port gnulib fseterr.c to your platform! Look at the definitions of ferror and clearerr on your system, then report this to bug-gnulib."
    #error "Please port gnulib fseterr.c to your platform! Look at the definitions of ferror and clearerr on your system, then report this to bug-gnulib."
     ^~~~~
  make[3]: *** [Makefile:3466: lib/fseterr.o] Error 1
  make[3]: *** Waiting for unfinished jobs....
    CC       lib/isnanl.o
  make[3]: Leaving directory '/home/steward/Downloads/trimui_buildroot/output/build/host-bison-3.0.4'

$ vim output/build/host-bison-3.0.4/lib/stdio-impl.h +20
  #if !defined _IO_IN_BACKUP && defined _IO_EOF_SEEN
  # define _IO_IN_BACKUP 0x100
  #endif

$ vim output/build/host-bison-3.0.4/lib/fseterr.c +32
  #if defined _IO_EOF_SEEN || __GNU_LIBRARY__ == 1 /* GNU libc, BeOS, Haiku, Linux libc5 */

$ make


返回上一頁