According to the ncurses 6.0 release notes (the site is at "https://www.gnu.org/software/ncurses/"), the intent of the release is to provide a new stable ABI,
which is binary-incompatible with ncurses 5, but it can still be configured to support the ncurses5.  Because this release introduces symbol-versioning.
The symbol-versioning allows the developers of a library tomark each public sysmbol(both data and functions) with an identifier denoting the library name and
the version for which it was built. By doing this , users ofthe library have a way to help ensure that applications do not accidentally load an imcompatible library.
In addition, private sysmbols can be hidden entirely.
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
When I first release the patch 5.9 -> 6.0  with the option --with-abi-version=5, I want to be compatible with the existing system, so I do the following test:

    $bitbake world core-image-sato-sdk

tested it on the qemuarm, qemux86, qemux86-64 with multilib (oe-core), and no error happened .

-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
When I second release the patch "drop the compatible option --with-abi-version=5", because I want to introduces the feature symbol-versioning, so I droped the
option --with-abi-version=5 , and I do the following test:

    $bitbake world core-image-sato-sdk

tested it on the qemuarm, qemux86, qemux86-64 with multilib (oe-core), and no error happened.

Today, Robert let me test it on the following layers:

    /meta-openembedded/meta-oe
    /meta-openembedded/meta-networking
    /meta-openembedded/meta-meta-webserver

so I add the layers to my build and run the following commands:

    $bitbake world

It reported the following error:

    Summary: 15 tasks failed:
  /buildarea/raid0/ddu/poky/meta-openembedded/meta-oe/recipes-graphics/takao-fonts/takao-fonts_003.03.01.bb, do_fetch
  /buildarea/raid0/ddu/poky/meta-openembedded/meta-oe/recipes-support/portaudio/portaudio-v19_svn.bb, do_fetch
  /buildarea/raid0/ddu/poky/meta-openembedded/meta-oe/recipes-gnome/gtkhtml2/gtkhtml2_svn.bb, do_fetch
  /buildarea/raid0/ddu/poky/meta-openembedded/meta-python/recipes-devtools/python/python-cryptography-vectors_1.1.bb, do_fetch
  /buildarea/raid0/ddu/poky/meta-openembedded/meta-networking/recipes-support/geoip/geoip_1.6.6.bb, do_fetch
  /buildarea/raid0/ddu/poky/meta-openembedded/meta-networking/recipes-connectivity/ufw/ufw_0.33.bb, do_fetch
  /buildarea/raid0/ddu/poky/meta-openembedded/meta-oe/recipes-support/ctapi-common/ctapi-common_1.1-11.bb, do_fetch
  /buildarea/raid0/ddu/poky/meta-openembedded/meta-python/recipes-devtools/python/python-decorator_4.0.2.bb, do_fetch
  /buildarea/raid0/ddu/poky/meta-openembedded/meta-python/recipes-connectivity/python-thrift/python-thrift_0.9.2.bb, do_fetch
  /buildarea/raid0/ddu/poky/meta-openembedded/meta-python/recipes-devtools/python/python-sqlalchemy_0.7.9.bb, do_fetch
  /buildarea/raid0/ddu/poky/meta-openembedded/meta-webserver/recipes-httpd/cherokee/cherokee_1.2.98.bb, do_fetch
  /buildarea/raid0/ddu/poky/meta-openembedded/meta-oe/recipes-graphics/ttf-fonts/ttf-mplus_027.bb, do_fetch
  virtual:native:/buildarea/raid0/ddu/poky/meta-openembedded/meta-oe/recipes-support/uim/uim_1.8.6.bb, do_install
  /buildarea/raid0/ddu/poky/meta-openembedded/meta-oe/recipes-connectivity/umip/umip_1.0.bb, do_compile
  /buildarea/raid0/ddu/poky/meta-openembedded/meta-oe/recipes-graphics/x11vnc/x11vnc_0.9.13.bb, do_package_qa


It seems the umip was affect by the ncurses version change. So I went to the log.do_compile, the log file say:

fatal error: gram.h : No such file or directory
compilation terminated


So I think the ncurses version change didn't affect the whole system. Then I release the patch "ncurses: drop the compatible option"

-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
On 2016年01月21日 10:17, Khem Raj wrote:
On Wed, Jan 20, 2016 at 5:30 PM, Robert Yang <liezhi.yang@windriver.com> wrote:
I had talked with Dengke, we have upgraded ncurses to 6, so remove
--with-abi-version=5 seems better. He had tested world and sdk
build based on oe-core. He will test it based on meta-openembedded.
we need to ensure that all apps using ncurses are able to work with
new APIs if we drop compatibility.
may be have ncurses5 package still around to provide backward compatibility.