Opened 15 years ago
Closed 15 years ago
#2616 closed defect (fixed)
[PATCH] xerces-c-3.0.0 breaks gdal building in 64bit environment (up through 1.5.3)
Reported by: | nerdboy | Owned by: | pka |
---|---|---|---|
Priority: | normal | Milestone: | 1.6.0 |
Component: | OGR_SF | Version: | 1.5.2 |
Severity: | normal | Keywords: | xerces 3 interlis 64 bit |
Cc: | warmerdam, Even Rouault, kyngchaos |
Description
Building gdal now fails with:
... x86_64-pc-linux-gnu-g++ -O2 -pipe -fPIC -Wall -I/usr/include -I/usr/include/xercesc -DOGR_ENABLED -I/var/tmp/portage/sci-libs/gdal-1.5.2/work/gdal-1.5.2/port -I.. -c -o ../../o/iom_utilities.o iom_utilities.cpp iom_utilities.cpp: In function 'char* iom_toUTF8(const XMLCh*)': iom_utilities.cpp:177: error: no matching function for call to 'xercesc_3_0::XMLTranscoder::transcodeTo(const XMLCh*&, unsigned int&, unsigned char*, int&, unsigned int&, xercesc_3_0::XMLTranscoder::UnRepOpts)' /usr/include/xercesc/util/TransService.hpp:297: note: candidates are: virtual XMLSize_t xercesc_3_0::XMLTranscoder::transcodeTo(const XMLCh*, XMLSize_t, XMLByte*, XMLSize_t, XMLSize_t&, xercesc_3_0::XMLTranscoder::UnRepOpts)
Build system info:
Portage 2.2_rc12 (default/linux/amd64/2008.0, gcc-4.3.2, glibc-2.8_p20080602-r0, 2.6.26.5 x86_64) System uname: Linux-2.6.26.5-x86_64-AMD_Athlon-tm-_64_X2_Dual_Core_Processor_4800+-with-glibc2.2.5
ccache version 2.4 [enabled] app-shells/bash: 3.2_p39 dev-java/java-config: 1.3.7, 2.1.6-r1 dev-lang/python: 2.4.4-r15, 2.5.2-r8 dev-python/pycrypto: 2.0.1-r6 dev-util/ccache: 2.4-r7 dev-util/cmake: 2.4.6-r1 sys-apps/baselayout: 2.0.0 sys-apps/openrc: 0.3.0-r1 sys-apps/sandbox: 1.2.18.1-r3 sys-devel/autoconf: 2.13, 2.63 sys-devel/automake: 1.4_p6, 1.5, 1.7.9-r1, 1.8.5-r3, 1.9.6-r2, 1.10.1-r1 sys-devel/binutils: 2.18-r3 sys-devel/gcc-config: 1.4.0-r4 sys-devel/libtool: 2.2.6a virtual/os-headers: 2.6.25-r4 CBUILD="x86_64-pc-linux-gnu" CFLAGS="-march=athlon64 -O2 -pipe" CHOST="x86_64-pc-linux-gnu" CXXFLAGS="-march=athlon64 -O2 -pipe" LANG="C" LDFLAGS="-Wl,-O1" LINGUAS="en" MAKEOPTS="-j5"
Attachments (1)
Change History (7)
comment:1 by , 15 years ago
Cc: | added |
---|---|
Component: | default → OGR_SF |
Keywords: | xerces 3 interlis 64 bit added |
by , 15 years ago
Attachment: | fix_2616.patch added |
---|
comment:2 by , 15 years ago
Summary: | xerces-c-3.0.0 breaks gdal interface (up through 1.5.3) → [PATCH] xerces-c-3.0.0 breaks gdal building in 64bit environment (up through 1.5.3) |
---|
follow-up: 4 comment:3 by , 15 years ago
Cc: | added; removed |
---|---|
Owner: | changed from | to
The patch looks reasonable to me. I'll leave it to Pirmin to apply.
comment:4 by , 15 years ago
The patch causes errors compiling with Xerces 2.8 on a 32bit environment:
iom_utilities.cpp: In function 'char* iom_toUTF8(const XMLCh*)': iom_utilities.cpp:181: error: no matching function for call to 'xercesc_2_8::XMLTranscoder::transcodeTo(const XMLCh*&, XMLSize_t&, XMLByte*&, XMLSize_t&, XMLSize_t&, xercesc_2_8::XMLTranscoder::UnRepOpts)' /usr/include/xercesc/util/TransService.hpp:305: note: candidates are: virtual unsigned int xercesc_2_8::XMLTranscoder::transcodeTo(const XMLCh*, unsigned int, XMLByte*, unsigned int, unsigned int&, xercesc_2_8::XMLTranscoder::UnRepOpts) iom_utilities.cpp:186: error: no matching function for call to 'xercesc_2_8::XMLTranscoder::transcodeTo(const XMLCh*&, XMLSize_t&, XMLByte*&, XMLSize_t&, XMLSize_t&, xercesc_2_8::XMLTranscoder::UnRepOpts)' /usr/include/xercesc/util/TransService.hpp:305: note: candidates are: virtual unsigned int xercesc_2_8::XMLTranscoder::transcodeTo(const XMLCh*, unsigned int, XMLByte*, unsigned int, unsigned int&, xercesc_2_8::XMLTranscoder::UnRepOpts) iom_utilities.cpp: In function 'XMLCh* iom_fromUTF8(const char*)': iom_utilities.cpp:201: error: no matching function for call to 'xercesc_2_8::XMLTranscoder::transcodeFrom(const XMLByte*, XMLSize_t&, XMLCh*&, XMLSize_t&, XMLSize_t&, unsigned char*&)' /usr/include/xercesc/util/TransService.hpp:282: note: candidates are: virtual unsigned int xercesc_2_8::XMLTranscoder::transcodeFrom(const XMLByte*, unsigned int, XMLCh*, unsigned int, unsigned int&, unsigned char*) make: *** [../../o/iom_utilities.o] Fehler 1
@rouault: Is
#if XERCES_VERSION_MAJOR >= 3
needed?
comment:5 by , 15 years ago
hum, maybe yes, it looks like they changed the signature of the transcodeTo function...
comment:6 by , 15 years ago
Cc: | added |
---|---|
Milestone: | → 1.6.0 |
Resolution: | → fixed |
Status: | new → closed |
I can also reproduce it with trunk, xerces 3.0 and 64bit environment. (it compiles fine on 32bit environment with xerces 3.0).
I'd suggest the attached patch that enables me to make it compile. However it is completely untested. Pirmin ?