[yocto] Unable to find the ncurses libraries when running menuconfig

Nick D'Ademo nickdademo at gmail.com
Tue Nov 11 03:23:55 PST 2014


A bit of progress (found the cause of the error at least):

The script that is failing is: linux/scripts/kconfig/lxdialog/
*check-lxdialog.sh*

I added 'set -x' to the script so I could see the output as BitBake
executes it... The function within that script which is failing is *check()
*- in particular the following is failing:




*$cc -x c - -o $tmp 2>/dev/null <<'EOF'#include CURSES_LOCmain() {}EOF*

*Script output:*
*gcc -isystem/home/nick/poky/build/tmp/sysroots/x86_64-linux/usr/include
-O2 -pipe -L/home/nick/poky/build/tmp/sysroots/x86_64-linux/usr/lib
-L/home/nick/poky/build/tmp/sysroots/x86_64-linux/lib
-Wl,-rpath-link,/home/nick/poky/build/tmp/sysroots/x86_64-linux/usr/lib
-Wl,-rpath-link,/home/nick/poky/build/tmp/sysroots/x86_64-linux/lib
-Wl,-rpath,/home/nick/poky/build/tmp/sysroots/x86_64-linux/usr/lib
-Wl,-rpath,/home/nick/poky/build/tmp/sysroots/x86_64-linux/lib -Wl,-O1
'-DCURSES_LOC=<ncurses.h>' -DLOCALE
-L/home/nick/poky/build/tmp/sysroots/custom_machine_name/usr/lib64
-lncursesw -ltinfo -x c - -o .lxdialog.tmp*

This command is returning 1 when it should be returning 0 (i.e. successful
compile).

The exact error is:


*/usr/bin/ld: cannot find /lib64/libc.so.6/usr/bin/ld: cannot find
/usr/lib64/libc_nonshared.acollect2: error: ld returned 1 exit status*

Where is it trying to find those libraries? In my host system (they don't
exist!) or the system root of my build? The files *only* exist in my system
root @ */home/nick/poky/build/tmp/sysroots/custom_machine_name/usr/lib64 *and
*/home/nick/poky/build/tmp/sysroots/custom_machine_name/lib64.*

I suspect that this may be due to the fact that my custom machine conf is a
multilib configuration...

Any further ideas?


On Tue, Nov 11, 2014 at 2:10 AM, Nick Krause <xerofoify at gmail.com> wrote:

> On Mon, Nov 10, 2014 at 7:56 AM, Nick D'Ademo <nickdademo at gmail.com>
> wrote:
> > If I do the following (from the same Terminal that oe-init-build-env has
> > been run):
> > 1) cd
> >
> /home/nick/poky/build/tmp/work/corei7-64-intel-common-poky-linux/linux-yocto/3.17.1+gitAUTOINC+b86dd5c6f4_0caf16d385-r0/linux-corei7-64-intel-common-standard-build
> > 2) make menuconfig
> >
> > Menu config loads correctly.
> >
> > So for some reason, 'bitbake linux-yocto -c menuconfig' is not invoking
> > menuconfig properly.
> >
> > Any ideas where to look in regard to my custom machine config?
> >
> >
> >
> > On Mon, Nov 10, 2014 at 10:11 PM, nick <xerofoify at gmail.com> wrote:
> >>
> >> Nick,
> >> Yes this is a issue with your custom machine and I believe this is a
> issue
> >> with your your machine
> >> conf is located in the build directories.
> >> Cheers Nick
> >>
> >> On 14-11-10 02:26 AM, Nick D'Ademo wrote:
> >> > menuconfig works with a core-image-minimal vanilla build:
> >> >
> >> >
> >> >
> >> >
> >> >
> >> >
> >> >
> >> >
> >> >
> >> >
> >> >
> >> >
> >> >
> >> >
> >> >
> >> >
> >> > *Build Configuration:BB_VERSION        = "1.24.0"BUILD_SYS         =
> >> > "x86_64-linux"NATIVELSBSTRING   = "Ubuntu-14.04"TARGET_SYS        =
> >> > "arm-poky-linux-gnueabi"MACHINE           = "qemuarm"DISTRO
>   =
> >> > "poky"DISTRO_VERSION    = "1.7"TUNE_FEATURES     = "arm armv5 thumb
> >> > dsp"TARGET_FPU        = "soft"meta              meta-yocto
> >> > meta-yocto-bsp    =
> >> > "master:45bb9e3323073070453647a32289dc1792f3d660"meta-oe
> >> > meta-multimedia   meta-gnome        =
> >> > "master:dac2422f737c351c37a8405a76b5f0b5df9311a0"*
> >> >
> >> >
> >> > So this must be an issue with my custom machine.
> >> >
> >> >
> >> > On Mon, Nov 10, 2014 at 2:43 PM, nick <xerofoify at gmail.com> wrote:
> >> >
> >> >> Nick,
> >> >> Then this is an issue with your machine conf or paths required for
> >> >> kernel
> >> >> building. Are you able
> >> >> to build a poky distro with a working kernel and this is just a issue
> >> >> with
> >> >> you building the yocto
> >> >> kernel alone or can you also not build poky too?
> >> >> Cheers Nick
> >> >>
> >> >> On 14-11-09 10:36 PM, Nick D'Ademo wrote:
> >> >>> Just tried with the latest 3.17.2 kernel. 'make menuconfig' works
> fine
> >> >> and
> >> >>> loads the interactive kernel config.
> >> >>>
> >> >>>
> >> >>> On Mon, Nov 10, 2014 at 2:01 PM, nick <xerofoify at gmail.com> wrote:
> >> >>>
> >> >>>> Try downloading a stock kernel for kernel.org and extract it in
> your
> >> >> home
> >> >>>> directory and run make menuconfig in
> >> >>>> the root of the kernel source tree, if this works then I am
> assuming
> >> >>>> either ncurses or your machine conf is wrong
> >> >>>> somewhere.
> >> >>>> Cheers Nick
> >> >>>>
> >> >>>> On 14-11-09 09:51 PM, Nick D'Ademo wrote:
> >> >>>>> Hi Nick,
> >> >>>>>
> >> >>>>> I removed build/tmp/ and performed a rebuild - I'm still
> >> >>>>> experiencing
> >> >> the
> >> >>>>> same error message unfortunately.
> >> >>>>>
> >> >>>>>
> >> >>>>> On Mon, Nov 10, 2014 at 12:58 PM, nick <xerofoify at gmail.com>
> wrote:
> >> >>>>>
> >> >>>>>> Seems to after reading and doing some research a build issue with
> >> >>>> multiple
> >> >>>>>> jobs or try running rm -r tmp in your
> >> >>>>>> build and then rebuild as it may be an issue with out of date
> temp
> >> >>>> files.
> >> >>>>>> Cheers Nick
> >> >>>>>>
> >> >>>>>> On 14-11-09 08:51 PM, Nick D'Ademo wrote:
> >> >>>>>>> Thanks for trying that out Nick.
> >> >>>>>>>
> >> >>>>>>> Issue is present on both 3.14 and 3.17 for me.
> >> >>>>>>> All paths in the require lines are correct too.
> >> >>>>>>>
> >> >>>>>>> Any other ideas?
> >> >>>>>>>
> >> >>>>>>>
> >> >>>>>>>
> >> >>>>>>> On Mon, Nov 10, 2014 at 12:46 PM, nick <xerofoify at gmail.com>
> >> >>>>>>> wrote:
> >> >>>>>>>
> >> >>>>>>>> I tried bitbake linux-yocto -c menuconfig on my own system
> >> >>>>>>>> running
> >> >> the
> >> >>>>>>>> same distro and it seems to my
> >> >>>>>>>> default use kernel 3.14 not 3.17 otherwise this seems be fine
> >> >>>>>>>> from
> >> >> my
> >> >>>>>>>> understanding. Also check all the
> >> >>>>>>>> paths in your require lines as there may be an issue with your
> >> >> builds
> >> >>>>>> and
> >> >>>>>>>> the path set up by these files
> >> >>>>>>>> that you are linking to for your kernel build.
> >> >>>>>>>> Nick
> >> >>>>>>>> On 14-11-09 08:40 PM, Nick D'Ademo wrote:
> >> >>>>>>>>> Thanks Nick.
> >> >>>>>>>>>
> >> >>>>>>>>> Machine conf is as follows (it's actually nearly identical to
> >> >>>> nuc.conf
> >> >>>>>> -
> >> >>>>>>>>> however, BT support, multilib, and preferred providers have
> been
> >> >>>>>> added):
> >> >>>>>>>>>
> >> >>>>>>>>> #@TYPE: Machine
> >> >>>>>>>>> #@NAME: chiefriver
> >> >>>>>>>>>
> >> >>>>>>>>> #@WEBTITLE: Intel Next Unit of Computing (NUC) Model:
> DC3217IYE
> >> >>>>>>>>>
> >> >>>>>>>>> #@DESCRIPTION: Machine configuration for Intel NUC model
> >> >>>>>>>>> DC3217IYE
> >> >>>>>>>>> # i.e. Ivy Bridge + Panther Point
> >> >>>>>>>>>
> >> >>>>>>>>> PREFERRED_VERSION_linux-yocto ?= "3.17%"
> >> >>>>>>>>> MACHINE_FEATURES += "va-impl-intel wifi efi bluetooth"
> >> >>>>>>>>> MACHINE_FEATURES += "intel-ucode"
> >> >>>>>>>>>
> >> >>>>>>>>> require conf/machine/include/meta-intel.inc
> >> >>>>>>>>> require conf/machine/include/intel-corei7-64-common.inc
> >> >>>>>>>>> require conf/machine/include/intel-common-pkgarch.inc
> >> >>>>>>>>> require multilib.conf
> >> >>>>>>>>>
> >> >>>>>>>>> MACHINE_HWCODECS ?= "va-intel gst-va-intel"
> >> >>>>>>>>>
> >> >>>>>>>>> XSERVER ?= "${XSERVER_X86_BASE} \
> >> >>>>>>>>>            ${XSERVER_X86_EXT} \
> >> >>>>>>>>>            ${XSERVER_X86_I965} \
> >> >>>>>>>>>            "
> >> >>>>>>>>>
> >> >>>>>>>>> MACHINE_EXTRA_RRECOMMENDS += "linux-firmware-iwlwifi-6000g2b-6
> >> >> lms8"
> >> >>>>>>>>>
> >> >>>>>>>>> # disable the serial port configuration
> >> >>>>>>>>> SERIAL_CONSOLE = ""
> >> >>>>>>>>>
> >> >>>>>>>>> PREFERRED_PROVIDER_jpeg = "jpeg"
> >> >>>>>>>>> PREFERRED_PROVIDER_jpeg-native = "jpeg-native"
> >> >>>>>>>>> PREFERRED_PROVIDER_virtual/fftw = "fftw"
> >> >>>>>>>>>
> >> >>>>>>>>>
> >> >>>>>>>>>
> >> >>>>>>>>> On Mon, Nov 10, 2014 at 12:36 PM, nick <xerofoify at gmail.com>
> >> >> wrote:
> >> >>>>>>>>>
> >> >>>>>>>>>> Hey Nick,
> >> >>>>>>>>>> This seems to then be an issue with incorrect paths or build
> >> >>>>>> information
> >> >>>>>>>>>> in your nuc.conf
> >> >>>>>>>>>> as the most likely culprit. If you can post your machine's
> conf
> >> >>>> file I
> >> >>>>>>>>>> will be glad to see
> >> >>>>>>>>>> if there are any issues I can spot.
> >> >>>>>>>>>> Nick
> >> >>>>>>>>>>
> >> >>>>>>>>>> On 14-11-09 08:33 PM, Nick D'Ademo wrote:
> >> >>>>>>>>>>> 1) source oe-init-build-env is run before building.
> >> >>>>>>>>>>> 2) We are actually using a custom machine .conf based on
> >> >> nuc.conf,
> >> >>>> so
> >> >>>>>>>>>>> actually: MACHINE = "custom_machine_name". I replaced it
> with
> >> >> "nuc"
> >> >>>>>> in
> >> >>>>>>>>>> this
> >> >>>>>>>>>>> post to avoid confusion.
> >> >>>>>>>>>>>
> >> >>>>>>>>>>> On Mon, Nov 10, 2014 at 12:25 PM, nick <xerofoify at gmail.com
> >
> >> >>>> wrote:
> >> >>>>>>>>>>>
> >> >>>>>>>>>>>> Do you run source oe-init-build-env before building and why
> >> >>>>>>>>>>>> is
> >> >>>> your
> >> >>>>>>>>>> machine
> >> >>>>>>>>>>>> set to nuc seems this may be an issue?
> >> >>>>>>>>>>>> Nick
> >> >>>>>>>>>>>>
> >> >>>>>>>>>>>> On 14-11-09 08:15 PM, Nick D'Ademo wrote:
> >> >>>>>>>>>>>>> Thanks for the quick reply Nick.
> >> >>>>>>>>>>>>>
> >> >>>>>>>>>>>>> Host system is Ubuntu 14.04. ncurses is already installed:
> >> >>>>>>>>>>>>>
> >> >>>>>>>>>>>>> sudo apt-get install libncurses5-dev
> >> >>>>>>>>>>>>> Reading package lists... Done
> >> >>>>>>>>>>>>> Building dependency tree
> >> >>>>>>>>>>>>> Reading state information... Done
> >> >>>>>>>>>>>>> libncurses5-dev is already the newest version.
> >> >>>>>>>>>>>>>
> >> >>>>>>>>>>>>>
> >> >>>>>>>>>>>>> On Mon, Nov 10, 2014 at 12:09 PM, nick <
> xerofoify at gmail.com>
> >> >>>>>> wrote:
> >> >>>>>>>>>>>>>
> >> >>>>>>>>>>>>>> Check to see if you actuality have it installed on your
> >> >>>>>>>>>>>>>> host
> >> >>>>>> system
> >> >>>>>>>>>> for
> >> >>>>>>>>>>>>>> your package manager.
> >> >>>>>>>>>>>>>> The library for ncurses for compiling the kernel is
> >> >>>>>>>>>>>>>> different
> >> >>>>>> based
> >> >>>>>>>> on
> >> >>>>>>>>>>>>>> your distro, check
> >> >>>>>>>>>>>>>> your distro's installer and install the correct ncurses
> >> >> package
> >> >>>>>>>> first.
> >> >>>>>>>>>>>> If
> >> >>>>>>>>>>>>>> this is still an
> >> >>>>>>>>>>>>>> issue please reply with a newer error message.
> >> >>>>>>>>>>>>>> Cheers Nick
> >> >>>>>>>>>>>>>>
> >> >>>>>>>>>>>>>> On 14-11-09 08:05 PM, Nick D'Ademo wrote:
> >> >>>>>>>>>>>>>>> Getting a strange error when attempting to configure the
> >> >> Yocto
> >> >>>>>>>> Linux
> >> >>>>>>>>>>>>>> kernel
> >> >>>>>>>>>>>>>>> via: bitbake linux-yocto -c menuconfig.
> >> >>>>>>>>>>>>>>>
> >> >>>>>>>>>>>>>>> Does anyone have any ideas? (error message below)
> >> >>>>>>>>>>>>>>> Much appreciated.
> >> >>>>>>>>>>>>>>>
> >> >>>>>>>>>>>>>>> Build Configuration:
> >> >>>>>>>>>>>>>>> BB_VERSION        = "1.24.0"
> >> >>>>>>>>>>>>>>> BUILD_SYS         = "x86_64-linux"
> >> >>>>>>>>>>>>>>> NATIVELSBSTRING   = "Ubuntu-14.04"
> >> >>>>>>>>>>>>>>> TARGET_SYS        = "x86_64-poky-linux"
> >> >>>>>>>>>>>>>>> MACHINE           = "nuc"
> >> >>>>>>>>>>>>>>> DISTRO            = "poky"
> >> >>>>>>>>>>>>>>> DISTRO_VERSION    = "1.7"
> >> >>>>>>>>>>>>>>> TUNE_FEATURES     = "m64 corei7"
> >> >>>>>>>>>>>>>>> TARGET_FPU        = ""
> >> >>>>>>>>>>>>>>>
> >> >>>>>>>>>>>>>>>
> >> >>>>>>>>>>>>>>>
> >> >>>>>>>>>>>>>>>
> >> >>>>>>>>>>>>>>>
> >> >>>>>>>>>>>>>>>
> >> >>>>>>>>>>>>>>>
> >> >>>>>>>>>>>>>>>
> >> >>>>>>>>>>>>>>>
> >> >>>>>>>>>>>>>>>
> >> >>>>>>>>>>>>>>>
> >> >>>>>>>>>>>>>>>
> >> >>>>>>>>>>>>>>>
> >> >>>>>>>>>>>>>>>
> >> >>>>>>>>>>>>>>>
> >> >>>>>>>>>>>>>>> *make[1]: Entering directory
> >> >>>>>>>>>>>>>>>
> >> >>>>>>>>>>>>>>
> >> >>>>>>>>>>>>
> >> >>>>>>>>>>
> >> >>>>>>>>
> >> >>>>>>
> >> >>>>
> >> >>
> >> >>
> `/home/nick/poky/build/tmp/work/corei7-64-intel-common-poky-linux/linux-yocto/3.17.1+gitAUTOINC+b86dd5c6f4_0caf16d385-r0/linux-corei7-64-intel-common-standard-build'
> >> >>>>>>>>>>>>>>> GEN     ./Makefile *** 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[3]: *** [scripts/kconfig/dochecklxdialog] Error
> >> >> 1make[2]:
> >> >>>>>> ***
> >> >>>>>>>>>>>>>>> [menuconfig] Error 2make[1]: *** [sub-make] Error 2make:
> >> >>>>>>>>>>>>>>> ***
> >> >>>>>>>>>>>> [__sub-make]
> >> >>>>>>>>>>>>>>> Error 2Command failed.Press any key to continue... *
> >> >>>>>>>>>>>>>>>
> >> >>>>>>>>>>>>>>>
> >> >>>>>>>>>>>>>>>
> >> >>>>>>>>>>>>>>
> >> >>>>>>>>>>>>>
> >> >>>>>>>>>>>>
> >> >>>>>>>>>>>
> >> >>>>>>>>>>
> >> >>>>>>>>>
> >> >>>>>>>>
> >> >>>>>>>
> >> >>>>>>
> >> >>>>>
> >> >>>>
> >> >>>
> >> >>
> >> >
> >
> >
> Clearly your machine config is not  in the correct directory or the
> layers needed for  you machine config are not being correctly
> configured. Look at the Yocto Manual on writing Board Support Scripts
> for more information.
> Cheers Nick
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.yoctoproject.org/pipermail/yocto/attachments/20141111/c711a95f/attachment.html>


More information about the yocto mailing list