[Rd] HAVE_BZLIB_H not set
Martyn Plummer
plummer at iarc.fr
Mon Oct 27 11:19:05 CET 2008
That must be a different problem as this one affects both R 2.7.2 and R
2.8.0 on Fedora 9. When the header is not included, the test program
that checks the version of bzlib segfaults.
We can fix this by using AC_CHECK_HEADERS instead of AC_CHECK_HEADER
when looking for bzlib.h, since the former macro defines the missing
variable. Checking this in now.
Martyn
On Sun, 2008-10-26 at 15:24 -0500, Dirk Eddelbuettel wrote:
> On 26 October 2008 at 12:02, "Tom \"spot\" Callaway" wrote:
> | When building 2.8.0 this morning for Fedora, I noticed that it was
> | building the included bzlib2 source and using it rather than the system
> | bzip2 libraries and headers. I tracked down the reason to this section
> | of configure:
> |
> | cat >>conftest.$ac_ext <<_ACEOF
> | /* end confdefs.h. */
> |
> | #ifdef HAVE_BZLIB_H
> | #include <bzlib.h>
> | #endif
> | int main() {
> | char *ver = BZ2_bzlibVersion();
> | exit(strcmp(ver, "1.0.5") < 0);
> | }
> |
> | _ACEOF
> |
> | That code wasn't working at all because HAVE_BZLIB_H never gets set
> | anywhere, even though the configure script had found the system bzip2
> | bits. This patch adds it to m4/R.m4 and configure, against 2.8.0. With
> | the patch, R now properly detects bzip2 1.0.5 in Fedora and uses that
> | rather than the local copy.
>
> We had that problem in Debian with (most of ) the 2.7.* series when R thought
> it needed to compile bzip2 support itself -- but it didn't before, and it
> does no more since where it works in R 2.8.* and its prereleases as ...
>
> edd at ron:~/src/debian/build-logs$ grep "whether bz" r-base_2.7.*
> r-base_2.7.0-1.log:checking whether bzip2 support needs to be compiled... yes
> r-base_2.7.0.20080304-1.log:checking whether bzip2 support needs to be compiled... no
> r-base_2.7.0~20080408-1.log:checking whether bzip2 support needs to be compiled... yes
> r-base_2.7.0~20080415-1.log:checking whether bzip2 support needs to be compiled... yes
> r-base_2.7.0~20080416-1.log:checking whether bzip2 support needs to be compiled... yes
> r-base_2.7.1-1.log:checking whether bzip2 support needs to be compiled... yes
> r-base_2.7.1~20080614-1.log:checking whether bzip2 support needs to be compiled... yes
> r-base_2.7.1~20080621-1.log:checking whether bzip2 support needs to be compiled... yes
> r-base_2.7.1.20080621-1.log:checking whether bzip2 support needs to be compiled... yes
> r-base_2.7.1-2.log:checking whether bzip2 support needs to be compiled... yes
> r-base_2.7.2-1.log:checking whether bzip2 support needs to be compiled... yes
> r-base_2.7.2~20080816-1.log:checking whether bzip2 support needs to be compiled... yes
> r-base_2.7.2-2.log:checking whether bzip2 support needs to be compiled... yes
> edd at ron:~/src/debian/build-logs$ grep "whether bz" r-base_2.8.*
> r-base_2.8.0-1.log:checking whether bzip2 support needs to be compiled... no
> r-base_2.8.0~20081005-1.log:checking whether bzip2 support needs to be compiled... no
> r-base_2.8.0~20081006-1.log:checking whether bzip2 support needs to be compiled... no
> r-base_2.8.0~20081013-1.log:checking whether bzip2 support needs to be compiled... no
> r-base_2.8.0.20081013-1.log:checking whether bzip2 support needs to be compiled... no
> edd at ron:~/src/debian/build-logs$
>
> ... Kurt fixed that in r-devel in mid-July and told me then that the issue was a
> missing link instruction for -lbz2 in the actual test configure runs, rather
> than the string comparison as I had conjectured.
>
> That makes me think that maybe it is not the matter of the #define you
> set. But I defer to Kurt on this.
>
> Cheers, Dirk
>
-----------------------------------------------------------------------
This message and its attachments are strictly confidenti...{{dropped:8}}
More information about the R-devel
mailing list