#225 1.22.10 will not build against xulrunner-1.9.2

closed-later
nobody
None
5
2011-06-21
2011-06-20
No

Configures reasonably easily in OpenSuSE 11.3 (though some apparently undocumented deps needed to be installed). After several warnings, compilation stopped cold:

CC x3d_parser/X3DParser.lo
In file included from x3d_parser/X3DParser.c:57:0:
/usr/include/xulrunner-1.9.2.17/expat.h:140:3: error: expected specifier-qualifier-list before ‘XML_Char’
/usr/include/xulrunner-1.9.2.17/expat.h:151:55: warning: type defaults to ‘int’ in declaration of ‘XML_Char’
/usr/include/xulrunner-1.9.2.17/expat.h:151:64: error: expected ‘;’, ‘,’ or ‘)’ before ‘*’ token
/usr/include/xulrunner-1.9.2.17/expat.h:156:27: error: expected declaration specifiers or ‘...’ before ‘XML_ElementDeclHandler’
/usr/include/xulrunner-1.9.2.17/expat.h:168:43: warning: type defaults to ‘int’ in declaration of ‘XML_Char’
/usr/include/xulrunner-1.9.2.17/expat.h:168:53: error: expected ‘;’, ‘,’ or ‘)’ before ‘*’ token
/usr/include/xulrunner-1.9.2.17/expat.h:176:27: error: expected declaration specifiers or ‘...’ before ‘XML_AttlistDeclHandler’
/usr/include/xulrunner-1.9.2.17/expat.h:187:51: warning: type defaults to ‘int’ in declaration of ‘XML_Char’
/usr/include/xulrunner-1.9.2.17/expat.h:187:60: error: expected ‘;’, ‘,’ or ‘)’ before ‘*’ token
/usr/include/xulrunner-1.9.2.17/expat.h:193:23: error: expected declaration specifiers or ‘...’ before ‘XML_XmlDeclHandler’
[dozens more errors followed]

Discussion

  • Ian Stakenvicius

    This bug has to do with a conflict in xulrunner's embedded expat (which is non-standard) and your system's expat. Unfortunately, due to the fact that gcc -always- searches paths specified with -I before the default /usr/include/ path, the only way to get around this is to use the following workaround:

    1. mkdir /tmp/include
    2. cp /usr/include/expat*.h /tmp/include;
    3. ./configure --with-expat=/tmp [..and your other options..]
    4. continue with your usual compilation and installation method

    This bug has been around throughout the xulrunner-1.9 series.

    Please note that freewrl's CVS, by default, no longer requres expat as a dependency and so going forward, this bug will no longer occur.

     
  • Ian Stakenvicius

    • status: open --> closed-later
     

Get latest updates about Open Source Projects, Conferences and News.

Sign up for the SourceForge newsletter:

JavaScript is required for this form.





No, thanks