cURL / Mailing Lists / curl-library / Single Mail


Problem with include files - 32-bit and 64-bit modes are not supported in a "single-set of include files"

From: aixtools <>
Date: Mon, 23 Nov 2015 17:52:35 +0100

Dear all,

Not sure which mailing list is better - would have gone for
curl-library, but the info page said curl-users was for (potential) bugs.

During a build of curl-7.45 (and I expect earlier versions) - when the
target is a 32-bit build (on AIX) - sizeof(long) == 4, but on a 64-bit
build sizeof(long) == 8.

So, on a 32-bit build:
root_at_x072:[/data/prj/cran/64/R-devel]grep CURL_SIZEOF_LONG
/opt/include/curl/curlbuild.h:#ifdef CURL_SIZEOF_LONG
/opt/include/curl/curlbuild.h:#error "CURL_SIZEOF_LONG shall not be
defined except in curlbuild.h"
/opt/include/curl/curlbuild.h: Error
/opt/include/curl/curlbuild.h:#define CURL_SIZEOF_LONG 4
/opt/include/curl/curlrules.h:#ifndef CURL_SIZEOF_LONG
/opt/include/curl/curlrules.h:# error "CURL_SIZEOF_LONG definition is
/opt/include/curl/curlrules.h: Error
/opt/include/curl/curlrules.h: [CurlchkszEQ(long, CURL_SIZEOF_LONG)];

While a 64-bit build has:
root_at_x064:[/data/prj/aixtools/curl/curl-7.45.0]grep CURL_SIZEOF_LONG
include/curl/curlbuild.h:#ifdef CURL_SIZEOF_LONG
include/curl/curlbuild.h:#error "CURL_SIZEOF_LONG shall not be defined
except in curlbuild.h"
include/curl/curlbuild.h: Error
include/curl/curlbuild.h:#define CURL_SIZEOF_LONG 8
include/curl/curlrules.h:#ifndef CURL_SIZEOF_LONG
include/curl/curlrules.h:# error "CURL_SIZEOF_LONG definition is missing!"
include/curl/curlrules.h: Error
include/curl/curlrules.h: [CurlchkszEQ(long, CURL_SIZEOF_LONG)];

As you may be able to see, I ran into this while running ./configure for R.

While this may not be a bug - perse - it is "a bother", and the first
(set of) include files that do not support both 32-bit and 64-bit
linking. For now, I shall just copy the include files for the 64-bit -
but I feel it would be much more useable if the include files would
work in both 32-bit and 64-bit compile modes.

p.s. The library was compiled in both 32-bit and 64-bit mode using xlC
(IBM C compiler), while R is being compiled by gcc (-maix64).

Thank you for your attention,

List admin:
Received on 2015-11-23