Make error

John Ralls jralls at ceridwen.us
Thu Aug 13 06:04:42 EDT 2015


> On Aug 12, 2015, at 10:12 PM, . morphZ <123morph at gmail.com> wrote:
> 
> Hi everybody!
> 
> Got a problem building the master branch from git. (last commit
> <https://github.com/Gnucash/gnucash/commit/6c2c1ce3d325b6a1db763a8763e5e0a724ceb1bd>
> )
> 
> Starting from file src/backend/xml/io-gncxml-v1.cpp I get loads of
> "template with C linkage" errors.
> Could anyone help me with that?
> 
> Heres the pastebin: http://pastebin.com/DKAiqKbK
> 
> Thanks in advance.
> morphz
> 
> PS: The 2.6.7. tag from github builds just fine.
> Some more Info:
> I'm building on Ubuntu 15.04.
> My libxml2 (which seems to me to cause the problem, but not sure there)
> version is: 2.9.2+dfsg1-3

The problem is what Derek (warlord) told you on irc: The libxml headers are pulled in from a C header to be compiled with the C++ compiler, and g++ objects. The problem seems to be that you have an ICU-enabled libxml2 and the ICU headers are detecting C++ and  including the c++ standard library, which is 99% template code.

Try passing -DU_SHOW_CPLUSPLUS_API=0 in CXXFLAGS. I hope that that will force icu to stick to C.

If that doesn’t work I think you’ll have to build a libxml2 with --disable-icu off in a corner somewhere and tell GnuCash’s configure to use it instead of the system one.

Regards,
John Ralls




More information about the gnucash-devel mailing list