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

nick xerofoify at gmail.com
Tue Nov 11 06:18:45 PST 2014


That was my issue with your build, but I wasn't sure if that was going to 
prevent the build from you companies requirements. I would recommend only
making the build 64 bit as it seems that there is no reason for backwards
compatibility with older 32 bit libraries for your build. 
Regards Nick  

On 14-11-11 06:23 AM, Nick D'Ademo wrote:
> 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
>>
> 



More information about the yocto mailing list