All of lore.kernel.org
 help / color / mirror / Atom feed
* how to add a new bb(xerces-c)?
@ 2013-09-27  5:35 曹志研
  2013-09-27  6:36 ` Gaurang Shastri
  2013-09-27  7:31 ` Martin Jansa
  0 siblings, 2 replies; 6+ messages in thread
From: 曹志研 @ 2013-09-27  5:35 UTC (permalink / raw)
  To: yocto

[-- Attachment #1: Type: text/plain, Size: 1807 bytes --]

Hello, everyone!
I try to add a new bb(xerces-c) to my image, bb is as followings:


DESCRIPTION = "Xerces-C++ is a validating XML parser written in a portable subset of C++."
HOMEPAGE = "http://xerces.apache.org/xerces-c/"
LICENSE = "Apache"
LIC_FILES_CHKSUM = "file://src/xercesc/dom/DOM.hpp;endline=22;md5=9986d741cab88a8b7bc4a19d3c1b8106 \
file://src/xercesc/parsers/XercesDOMParser.hpp;endline=21;md5=85be7b6e587aa51e4f30c262f1cd695e \
file://src/xercesc/xinclude/XIncludeDOMDocumentProcessor.hpp;endline=23;md5=4236d3c0f2537b3df547a97d60f93dc0"


PR = "r1"


DEPENDS = "curl icu"


SRC_URI = "http://mirror.bit.edu.cn/apache//xerces/c/3/sources/xerces-c-${PV}.tar.gz"


SRC_URI[md5sum] = "6a8ec45d83c8cfb1584c5a5345cb51ae"
SRC_URI[sha256sum] = "a42785f71e0b91d5fd273831c87410ce60a73ccfdd207de1b805d26d44968736"


inherit autotools


S = "${WORKDIR}/xerces-c-${PV}/"


EXTRA_OECONF = "\
--enable-netaccessor-curl \
--enable-transcoder-icu \
--enable-msgloader-icu \
"


but when configure come into the error:
ERROR: This autoconf log indicates errors, it looked at host include and/or library paths while determining system capabilities.
Rerun configure task after fixing this. The path was '/home/caozhiyan/fsl-community-bsp/build-hc1200/tmp/work/armv7a-vfp-neon-poky-linux-gnueabi/xerces-c/3.1.1-r1/xerces-c-3.1.1'
ERROR: Function failed: do_qa_configure
ERROR: Logfile of failure stored in: /home/caozhiyan/fsl-community-bsp/build-hc1200/tmp/work/armv7a-vfp-neon-poky-linux-gnueabi/xerces-c/3.1.1-r1/temp/log.do_configure.19932
ERROR: Task 5 (/home/caozhiyan/fsl-community-bsp/sources/meta-fsl-hc1200/recipes-hc1200/xerces-c/xerces-c_3.1.1.bb, do_configure) failed with exit code '1'


who can show me how to port the autotools-based project? Thanks.

[-- Attachment #2: Type: text/html, Size: 2708 bytes --]

^ permalink raw reply	[flat|nested] 6+ messages in thread
* Re: how to add a new bb(xerces-c)?
@ 2013-10-22 18:23 Bill Martin
  0 siblings, 0 replies; 6+ messages in thread
From: Bill Martin @ 2013-10-22 18:23 UTC (permalink / raw)
  To: yocto

[-- Attachment #1: Type: text/plain, Size: 3202 bytes --]

I have been tasked to add xerces-c too. There is an OE recipe already for
this (you can google it).

However your recipe seems to run into the same problem that I get. The
solution is not just to look at config.log and log.do_config. They display
the symptoms. The one who responded to your post implies the fix is in the
recipe by just adding extra config flags to point to the correct libraries.

I can run ./configure outside of yocto and send in the libraries I want.
But the OEEXTRACONFS I added in my recipe had no effect on the libraries.
Note that the auto tools is forcing the enable-poison-system directories,
as it should. But the cause is further up the "food chain" so to speak.

The problem seems to be with a bug in lib tools that Hans Beckerus found.

http://www.mail-archive.com/yocto@yoctoproject.org/msg15325.html

Essentially it's to do with the with-libtool-sysroot usage in the libtool.
I have not tried Hans' solution yet but will today.  Hopefully this info is
enough to get you started so you can make your own fix and use xerces-c.

thanks

Bill




Message: 2
Date: Fri, 27 Sep 2013 13:35:55 +0800 (CST)
From: ??? <czyhit@126.com>
To: yocto@yoctoproject.org
Subject: [yocto] how to add a new bb(xerces-c)?
Message-ID: <bfe9b2.4f09.1415dea90ad.Coremail.czyhit@126.com>
Content-Type: text/plain; charset="gbk"

Hello, everyone!
I try to add a new bb(xerces-c) to my image, bb is as followings:


DESCRIPTION = "Xerces-C++ is a validating XML parser written in a portable
subset of C++."
HOMEPAGE = "http://xerces.apache.org/xerces-c/"
LICENSE = "Apache"
LIC_FILES_CHKSUM = "file://src/xercesc/dom/DOM.hpp;endline=22;md5=
9986d741cab88a8b7bc4a19d3c1b8106 \
file://src/xercesc/parsers/XercesDOMParser.hpp;endline=21;md5=
85be7b6e587aa51e4f30c262f1cd695e \
file://src/xercesc/xinclude/XIncludeDOMDocumentProcessor.hpp;endline=23;md5=
4236d3c0f2537b3df547a97d60f93dc0"


PR = "r1"


DEPENDS = "curl icu"


SRC_URI = "http://mirror.bit.edu.cn/apache//xerces/c/3/sources/xerces
-c-${PV}.tar.gz"


SRC_URI[md5sum] = "6a8ec45d83c8cfb1584c5a5345cb51ae"
SRC_URI[sha256sum] = "a42785f71e0b91d5fd273831c87410
ce60a73ccfdd207de1b805d26d44968736"


inherit autotools


S = "${WORKDIR}/xerces-c-${PV}/"


EXTRA_OECONF = "\
--enable-netaccessor-curl \
--enable-transcoder-icu \
--enable-msgloader-icu \
"


but when configure come into the error:
ERROR: This autoconf log indicates errors, it looked at host include and/or
library paths while determining system capabilities.
Rerun configure task after fixing this. The path was '/home/caozhiyan/fsl-
community-bsp/build-hc1200/tmp/work/armv7a-vfp-neon-poky-linux-gnueabi/
xerces-c/3.1.1-r1/xerces-c-3.1.1'
ERROR: Function failed: do_qa_configure
ERROR: Logfile of failure stored in: /home/caozhiyan/fsl-community-
bsp/build-hc1200/tmp/work/armv7a-vfp-neon-poky-linux-gnueabi/xerces
-c/3.1.1-r1/temp/log.do_configure.19932
ERROR: Task 5 (/home/caozhiyan/fsl-community-bsp/sources/meta-
fsl-hc1200/recipes-hc1200/xerces-c/xerces-c_3.1.1.bb, do_configure) failed
with exit code '1'


who can show me how to port the autotools-based project? Thanks.

[-- Attachment #2: Type: text/html, Size: 13494 bytes --]

^ permalink raw reply	[flat|nested] 6+ messages in thread
* Re: how to add a new bb(xerces-c)?
@ 2013-10-23  2:00 Bill Martin
  0 siblings, 0 replies; 6+ messages in thread
From: Bill Martin @ 2013-10-23  2:00 UTC (permalink / raw)
  To: yocto

[-- Attachment #1: Type: text/plain, Size: 2208 bytes --]

Regarding  my earlier post (see below)

I found a patch by Hans Beckerus dated September 10. I do think adding this
patch to libtools is important and I did. But it did not solve the problem
of unsafe or poisoned host include or library files. I tried using the flag
--with-libtools-sysroot to point to two different directories (they have to
be absolute paths I think) but still got the same issue.  I made sure the
libtools patch of Hans' was installed correctly. You can see the patch
inside the configure in your xerxes-c WORKDIR. I haven't cross compiled
outside of autotools as I thought I did. It was all on the build machine.
So next step is to cross compile on my own outside the Yocto environment.


Running out of ideas.

Bill


earlier post:
-----------------
Message: 3
Date: Tue, 22 Oct 2013 11:23:33 -0700
From: Bill Martin <billmartin544@gmail.com>
To: yocto@yoctoproject.org
Subject: Re: [yocto] how to add a new bb(xerces-c)?
Message-ID:
        <CAJGS5=HTuyPuqropAOjys6oiz-
Adx=K9b1dci+zC0d4FPbMQ9w@mail.gmail.com>
Content-Type: text/plain; charset="iso-8859-1"

I have been tasked to add xerces-c too. There is an OE recipe already for
this (you can google it).

However your recipe seems to run into the same problem that I get. The
solution is not just to look at config.log and log.do_config. They display
the symptoms. The one who responded to your post implies the fix is in the
recipe by just adding extra config flags to point to the correct libraries.

I can run ./configure outside of yocto and send in the libraries I want.
But the OEEXTRACONFS I added in my recipe had no effect on the libraries.
Note that the auto tools is forcing the enable-poison-system directories,
as it should. But the cause is further up the "food chain" so to speak.

The problem seems to be with a bug in lib tools that Hans Beckerus found.

http://www.mail-archive.com/yocto@yoctoproject.org/msg15325.html

Essentially it's to do with the with-libtool-sysroot usage in the libtool.
I have not tried Hans' solution yet but will today.  Hopefully this info is
enough to get you started so you can make your own fix and use xerces-c.

thanks

Bill

[-- Attachment #2: Type: text/html, Size: 2812 bytes --]

^ permalink raw reply	[flat|nested] 6+ messages in thread
* Re: how to add a new bb(xerces-c)
@ 2013-10-23 20:44 Bill Martin
  0 siblings, 0 replies; 6+ messages in thread
From: Bill Martin @ 2013-10-23 20:44 UTC (permalink / raw)
  To: yocto

[-- Attachment #1: Type: text/plain, Size: 3240 bytes --]

Okay I dug further and got much further to pass do_install

I noticed in my Yocto 9.0.2 Dylan release I have an ICU package. Just in
case, I added the extra installs of icu and xerces-c to my local.conf

then in your xerces-c bitbake recipe you need to add
--with-icu=${STAGING_DIR_HOST} to your EXTRA_OECONF

My EXTRA_OECONF is

EXTRA_OECONF= "--with-icu=${STAGING_DIR_HOST} ICU_FLAGS=-I${STAGING_INCDIR}
LDFLAGS=-L${STAGING_BASELIBDIR} --build=x86_64-linux --host=i586-poky-linux"

To be safe I also added ICU_FLAGS=${STAGING_DIR_HOST} but I probably do not
need it. In fact that's what I tried first and it had no effect. grepping
through my config.log I traced to where ICU_FLAGS kept being set stubbornly
to -I/usr/include. I will clean this up and get rid of my LDFLAGS which I
don't need. Also the ICU_FLAGS.

The problem (and Hans Beckerus pointed out to me) was the poisonous header
files from the build machine in /usr/include. Note that icu is staged - you
can find its libraries in the usr/lib subfolder in your host staging
directory. All the pieces to the puzzle are there.

Thanks

Bill


Original post was

Date: Fri, 27 Sep 2013 13:35:55 +0800 (CST)
From: ??? <czyhit@126.com>
To: yocto@yoctoproject.org
Subject: [yocto] how to add a new bb(xerces-c)?
Message-ID: <bfe9b2.4f09.1415dea90ad.Coremail.czyhit@126.com>
Content-Type: text/plain; charset="gbk"

Hello, everyone!
I try to add a new bb(xerces-c) to my image, bb is as followings:


DESCRIPTION = "Xerces-C++ is a validating XML parser written in a portable
subset of C++."
HOMEPAGE = "http://xerces.apache.org/xerces-c/"
LICENSE = "Apache"
LIC_FILES_CHKSUM = "file://src/xercesc/dom/DOM.hpp;endline=22;md5=
9986d741cab88a8b7bc4a19d3c1b8106 \
file://src/xercesc/parsers/XercesDOMParser.hpp;endline=21;md5=
85be7b6e587aa51e4f30c262f1cd695e \
file://src/xercesc/xinclude/XIncludeDOMDocumentProcessor.hpp;endline=23;md5=
4236d3c0f2537b3df547a97d60f93dc0"


PR = "r1"


DEPENDS = "curl icu"


SRC_URI = "http://mirror.bit.edu.cn/apache//xerces/c/3/sources/xerces
-c-${PV}.tar.gz"


SRC_URI[md5sum] = "6a8ec45d83c8cfb1584c5a5345cb51ae"
SRC_URI[sha256sum] = "a42785f71e0b91d5fd273831c87410
ce60a73ccfdd207de1b805d26d44968736"


inherit autotools


S = "${WORKDIR}/xerces-c-${PV}/"


EXTRA_OECONF = "\
--enable-netaccessor-curl \
--enable-transcoder-icu \
--enable-msgloader-icu \
"


but when configure come into the error:
ERROR: This autoconf log indicates errors, it looked at host include and/or
library paths while determining system capabilities.
Rerun configure task after fixing this. The path was '/home/caozhiyan/fsl-
community-bsp/build-hc1200/tmp/work/armv7a-vfp-neon-poky-linux-gnueabi/
xerces-c/3.1.1-r1/xerces-c-3.1.1'
ERROR: Function failed: do_qa_configure
ERROR: Logfile of failure stored in: /home/caozhiyan/fsl-community-
bsp/build-hc1200/tmp/work/armv7a-vfp-neon-poky-linux-gnueabi/xerces
-c/3.1.1-r1/temp/log.do_configure.19932
ERROR: Task 5 (/home/caozhiyan/fsl-community-bsp/sources/meta-
fsl-hc1200/recipes-hc1200/xerces-c/xerces-c_3.1.1.bb, do_configure) failed
with exit code '1'


who can show me how to port the autotools-based project? Thanks.

[-- Attachment #2: Type: text/html, Size: 13267 bytes --]

^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2013-10-23 20:44 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2013-09-27  5:35 how to add a new bb(xerces-c)? 曹志研
2013-09-27  6:36 ` Gaurang Shastri
2013-09-27  7:31 ` Martin Jansa
  -- strict thread matches above, loose matches on Subject: below --
2013-10-22 18:23 Bill Martin
2013-10-23  2:00 Bill Martin
2013-10-23 20:44 how to add a new bb(xerces-c) Bill Martin

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.