buildroot and X.org compile problem: "
Sascha Juch
Sascha.Juch at sepago.de
Wed Nov 2 08:15:01 UTC 2005
Hello Allan,
Thanks a lot for the explanation - it compiles fine now :)
Greetings,
Sascha.
> -----Original Message-----
> From: Allan Clark [mailto:allanc at chickenandporn.com]
> Sent: Monday, October 31, 2005 5:36 PM
> To: Sascha Juch
> Cc: uClibc at uclibc.org
> Subject: Re: buildroot and X.org compile problem: "
>
> Sascha Juch wrote:
> >
> > Hi everybody,
> >
> > I installed buildroot and tried to compile it - first try without
> > modifications to the packages to be compiled and anything went fine.
> > Now, that I have selected to also include X.org into the compile
> > process it throws the following error message:
> >
> > make[5]: Entering directory
> >
> `/home/sascha/buildroot/build_i386/xc/programs/xterm'/home/sas
> cha/buildroot/build_i386/staging_dir/bin/i386-linux-uclibc-gcc
> > -Os -ansi -pedantic -Wall -Wpointer-arith -Wundef -I.
> > -I../../exports/include -I../../exports/include
> > -I../../exports/include/freetype2
> > -I../../exports/include/freetype2/config
> -I../../exports/include/X11
> > -I../.. -I../../exports/include -Dlinux -D__i386__
> > -D_POSIX_SOURCE -D_BSD_SOURCE
> > -D_GNU_SOURCE -DX_LOCALE -DFUNCPROTO=15 -DNARROWPROTO
> > -DSCROLLBAR_RIGHT -DOPT_WIDE_CHARS -DOPT_LUIT_PROG -DOPT_256_COLORS
> > -DXRENDERFONT -DXFREE86_FT2 -DPROJECTROOT=/usr/X11R6 -c -o
> > resize.o resize.c
> >
> >
> /home/sascha/buildroot/build_i386/staging_dir/bin/i386-linux-u
> clibc-gcc
> > -Os -ansi -pedantic -Wall -Wpointer-arith -Wundef -I.
> > -I../../exports/include -I../../exports/include
> > -I../../exports/include/freetype2
> > -I../../exports/include/freetype2/config
> -I../../exports/include/X11
> > -I../.. -I../../exports/include -Dlinux -D__i386__
> > -D_POSIX_SOURCE -D_BSD_SOURCE
> > -D_GNU_SOURCE -DX_LOCALE -DFUNCPROTO=15 -DNARROWPROTO
> > -DSCROLLBAR_RIGHT -DOPT_WIDE_CHARS -DOPT_LUIT_PROG -DOPT_256_COLORS
> > -DXRENDERFONT -DXFREE86_FT2 -DPROJECTROOT=/usr/X11R6 -c -o
> > xstrings.o xstrings.c
> >
> > rm -f resize
> >
> /home/sascha/buildroot/build_i386/staging_dir/bin/i386-linux-u
> clibc-gcc
> > -o resize -Os -ansi -pedantic -Wall -Wpointer-arith -Wundef
> > -L../../exports/lib resize.o xstrings.o
> >
> -L/home/sascha/buildroot/build_i386/staging_dir/i386-linux-ucl
> ibc/lib
> > -lncurses
> >
> >
> /home/sascha/buildroot/build_i386/staging_dir/bin-ccache/../li
> b/gcc/i386-linux-uclibc/3.4.2/../../../../i386-linux-uclibc/bin/ld:
> > cannot find -lncurses
> >
> Sascha, you need to build ncurses with the buildroot/cross
> build first, then build Xorg.
>
> It's not obvious, but the buildroot is building without using
> the additional things you've installed for your host system.
> Those things
> -- such as ncurses -- give your host system the ability to do
> ncurses et al. They are (I assume) i386/glibc. Although
> buildroot is capable of cross-compiling something that is a
> different architecture, you're doing an i386/uClibc build.
> Nevertheless, you still need to build ncurses inside
> buildroot to install the library in the right subdirectory so
> that it will be found during the link phase. This is a
> problem my (recently former) company's customers see, and the
> sole reason I send them to buildroot -- missing libraries,
> and the fact that buildroot will do the right thing.
>
> try adding ncurses in the "packages" section of "make
> menuconfig", then "make ncurses", then your existing build.
> Later, you'll want to add ncurses as a dependency of Xorg.
>
> (I'm guessing on these make menuconfig option and make target
> due to the pattern of buildroot)
>
> Allan
>
More information about the uClibc
mailing list