[cairo] Fwd: disable compiling of cairo test suite

RAVI NANJUNDAPPA nravi.n at samsung.com
Mon Jul 21 04:43:31 PDT 2014


hi , 

Am not sure what is the issue here. Looks like its not able to find some symbols from boilerplate/cairo-boilerplate-getopt.c and test/pdiff/lpyramid.c
files, which should not be the case.  Though the test-suite build fails, you can find the libcairo files under src/.libs/ as shown below:

$ ls src/.libs/libcairo.so* 
src/.libs/libcairo.so  src/.libs/libcairo.so.2  src/.libs/libcairo.so.2.11301.0
$

If you just need the libcairo.so file, then you can refer to these libcairo file.
Otherwise, as I had mentioned in my earlier mail, your need to cross check if the above two files are built properly or not.
Just try to check for these or otherwise if you can share the complete build log file, which might provide more information 
to analyse the root cause of the issue.

Thanks and Best Regards, 
N Ravi

------- Original Message -------
Sender : Pranav Ganorkar<pranavg189 at gmail.com>
Date : Jul 21, 2014 13:07 (GMT+05:30)
Title : [cairo] Fwd: disable compiling of cairo test suite




---------- Forwarded message ----------
From: Pranav Ganorkar <pranavg189 at gmail.com>
Date: Mon, Jul 21, 2014 at 7:28 AM
Subject: Re: [cairo] disable compiling of cairo test suite
To: nravi.n at samsung.com



Hi Ravi , I think I read --disable-test-suite flag somewhere in gentoo forums.....
i think it may be specific to gentoo configuration only...
but I just want to build the cairo lib as I want to install the latest gtk3 from git.
is it necessary to build the cairo test suite to build cairo lib as it gives me the given error.....
If I simply run configure as:


./configure --prefix=$HOME/jhbuild/install --disable-static --disable-lto



the error is like:


**************************************************************************
cd ../boilerplate && make  libcairoboilerplate.la
make[5]: Entering directory '/home/pranav/jhbuild/checkout/cairo/boilerplate'
  CC       cairo-boilerplate-system.lo
  CC       cairo-boilerplate.lo
  CC       cairo-boilerplate-xlib.lo
  CC       cairo-boilerplate-xcb.lo
  CC       cairo-boilerplate-script.lo
  CC       cairo-boilerplate-ps.lo
  CC       cairo-boilerplate-pdf.lo
  CC       cairo-boilerplate-svg.lo
  CC       cairo-boilerplate-constructors.lo
  CCLD     libcairoboilerplate.la
make[5]: Leaving directory '/home/pranav/jhbuild/checkout/cairo/boilerplate'
  CC       any2ppm-any2ppm.o
  CCLD     any2ppm
  CCLD     cairo-test-suite
cairo_test_suite-cairo-test-runner.o: In function `_parse_cmdline':
/home/pranav/jhbuild/checkout/cairo/test/cairo-test-runner.c:355: undefined reference to `_cairo_getopt'
../test/pdiff/.libs/libpdiff.a(pdiff.o): In function `pdiff_compare':
/home/pranav/jhbuild/checkout/cairo/test/pdiff/pdiff.c:321: undefined reference to `lpyramid_create'
/home/pranav/jhbuild/checkout/cairo/test/pdiff/pdiff.c:322: undefined reference to `lpyramid_create'
/home/pranav/jhbuild/checkout/cairo/test/pdiff/pdiff.c:353: undefined reference to `lpyramid_get_value'
/home/pranav/jhbuild/checkout/cairo/test/pdiff/pdiff.c:353: undefined reference to `lpyramid_get_value'
/home/pranav/jhbuild/checkout/cairo/test/pdiff/pdiff.c:354: undefined reference to `lpyramid_get_value'
/home/pranav/jhbuild/checkout/cairo/test/pdiff/pdiff.c:354: undefined reference to `lpyramid_get_value'
/home/pranav/jhbuild/checkout/cairo/test/pdiff/pdiff.c:356: undefined reference to `lpyramid_get_value'
../test/pdiff/.libs/libpdiff.a(pdiff.o):/home/pranav/jhbuild/checkout/cairo/test/pdiff/pdiff.c:357: more undefined references to `lpyramid_get_value' follow
../test/pdiff/.libs/libpdiff.a(pdiff.o): In function `pdiff_compare':
/home/pranav/jhbuild/checkout/cairo/test/pdiff/pdiff.c:412: undefined reference to `lpyramid_destroy'
/home/pranav/jhbuild/checkout/cairo/test/pdiff/pdiff.c:413: undefined reference to `lpyramid_destroy'
collect2: error: ld returned 1 exit status
Makefile:1750: recipe for target 'cairo-test-suite' failed
make[4]: *** [cairo-test-suite] Error 1
make[4]: Leaving directory '/home/pranav/jhbuild/checkout/cairo/test'
Makefile:8121: recipe for target 'all-recursive' failed
make[3]: *** [all-recursive] Error 1
make[3]: Leaving directory '/home/pranav/jhbuild/checkout/cairo/test'
Makefile:1691: recipe for target 'all' failed
make[2]: *** [all] Error 2
make[2]: Leaving directory '/home/pranav/jhbuild/checkout/cairo/test'
Makefile:897: recipe for target 'all-recursive' failed
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory '/home/pranav/jhbuild/checkout/cairo'
Makefile:747: recipe for target 'all' failed
make: *** [all] Error 2
**************************************************************************


so, i think there is some problem building the module cairo-test-suite...
Is there any other way i can skip it as think gtk3 depends only on the core cairo lib........
or is there any other workaround......



On Mon, Jul 21, 2014 at 5:59 AM, RAVI NANJUNDAPPA <nravi.n at samsung.com> wrote:

hi Pranav,

I haven't seen this '--disable-test-suite' configure option.
Can you please share where did you get this option from ?

And also,

`_cairo_getopt' is defined in boilerplate/cairo-boilerplate-getopt.c and lpyramid_XXXX() function definitions are available in test/pdiff/lpyramid.c
Please cross check if these files are built properly or not.

Thanks and Best Regards,
N Ravi
------- Original Message -------
Sender : Pranav Ganorkar<pranavg189 at gmail.com>
Date : Jul 21, 2014 11:01 (GMT+05:30)
Title : [cairo] disable compiling of cairo test suite


Hi , I am trying to build latest cairo from git in archlinux but i get the following error.....


make[5]: Leaving directory '/home/pranav/jhbuild/checkout/cairo/boilerplate'
  CC       any2ppm-any2ppm.o
  CCLD     any2ppm
  CCLD     cairo-test-suite
cairo_test_suite-cairo-test-runner.o: In function `_parse_cmdline':
/home/pranav/jhbuild/checkout/cairo/test/cairo-test-runner.c:355: undefined reference to `_cairo_getopt'
../test/pdiff/.libs/libpdiff.a(pdiff.o): In function `pdiff_compare':
/home/pranav/jhbuild/checkout/cairo/test/pdiff/pdiff.c:321: undefined reference to `lpyramid_create'
/home/pranav/jhbuild/checkout/cairo/test/pdiff/pdiff.c:322: undefined reference to `lpyramid_create'
/home/pranav/jhbuild/checkout/cairo/test/pdiff/pdiff.c:353: undefined reference to `lpyramid_get_value'
/home/pranav/jhbuild/checkout/cairo/test/pdiff/pdiff.c:353: undefined reference to `lpyramid_get_value'
/home/pranav/jhbuild/checkout/cairo/test/pdiff/pdiff.c:354: undefined reference to `lpyramid_get_value'
/home/pranav/jhbuild/checkout/cairo/test/pdiff/pdiff.c:354: undefined reference to `lpyramid_get_value'
/home/pranav/jhbuild/checkout/cairo/test/pdiff/pdiff.c:356: undefined reference to `lpyramid_get_value'
../test/pdiff/.libs/libpdiff.a(pdiff.o):/home/pranav/jhbuild/checkout/cairo/test/pdiff/pdiff.c:357: more undefined references to `lpyramid_get_value' follow
../test/pdiff/.libs/libpdiff.a(pdiff.o): In function `pdiff_compare':
/home/pranav/jhbuild/checkout/cairo/test/pdiff/pdiff.c:412: undefined reference to `lpyramid_destroy'
/home/pranav/jhbuild/checkout/cairo/test/pdiff/pdiff.c:413: undefined reference to `lpyramid_destroy'
collect2: error: ld returned 1 exit status
Makefile:1750: recipe for target 'cairo-test-suite' failed
make[4]: *** [cairo-test-suite] Error 1
make[4]: Leaving directory '/home/pranav/jhbuild/checkout/cairo/test'
Makefile:8121: recipe for target 'all-recursive' failed
make[3]: *** [all-recursive] Error 1
make[3]: Leaving directory '/home/pranav/jhbuild/checkout/cairo/test'
Makefile:1691: recipe for target 'all' failed
make[2]: *** [all] Error 2
make[2]: Leaving directory '/home/pranav/jhbuild/checkout/cairo/test'
Makefile:897: recipe for target 'all-recursive' failed
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory '/home/pranav/jhbuild/checkout/cairo'
Makefile:747: recipe for target 'all' failed
make: *** [all] Error 2


i have added the following the flags to configure ....
--disable-static --disable-lto --disable-cairo-spinx --disable-trace --disable-test-suite

I dont know why but it still builds the cairo test suite and gives me the above compile error.
I am using gcc 4.9.0.
can anyone guide me.


More information about the cairo mailing list