Skip navigation.
Home

I can't manage to compile JabXPCOM

I did manage to install all prequisites for JabXPCOM, but I am not able to compile the latter.

g++ -c -pthread -O2   -I'/usr/local/include/mozilla-1.9a1' -I'/usr/local/include/mozilla-1.9a1/nspr' -I'/usr/local/include/mozilla-1.9a1/string' -I'/usr/local/include/mozilla-1.9a1/xpcom' -I'/home/jabber/jabberoo-1.9.3/libsigc++' -I'/home/jabber/jabberoo-1.9.3/libsigc++/sigc++/config' -I'/usr/local/include/mozilla-1.9a1' -I'/home/jabber/jabberoo-1.9.3/libjudo/src' -I'/home/jabber/jabberoo-1.9.3/libjudo/src/expat' -I'/home/jabber/jabberoo-1.9.3/include' -fPIC -o 'judoxpcom-wrapper.lo' 'judoxpcom-wrapper.cc'
In file included from /usr/local/include/mozilla-1.9a1/string/nsAString.h:68,
                 from /usr/local/include/mozilla-1.9a1/string/nsSubstring.h:43,
                 from /usr/local/include/mozilla-1.9a1/string/nsString.h:44,
                 from judoxpcom-wrapper.cc:32:
/usr/local/include/mozilla-1.9a1/string/nsTAString.h:41:2: #error Cannot use internal string classes without MOZILLA_INTERNAL_API defined. Use the frozen header nsStringAPI.h instead.
In file included from /usr/local/include/mozilla-1.9a1/string/nsAString.h:74,
                 from /usr/local/include/mozilla-1.9a1/string/nsSubstring.h:43,
                 from /usr/local/include/mozilla-1.9a1/string/nsString.h:44,
                 from judoxpcom-wrapper.cc:32:
/usr/local/include/mozilla-1.9a1/string/nsTAString.h:41:2: #error Cannot use internal string classes without MOZILLA_INTERNAL_API defined. Use the frozen header nsStringAPI.h instead.
make: *** [judoxpcom-wrapper.lo] Błąd 1

Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.

added

added
#define MOZILLA_INTERNAL_API to the code and have new error

g++ -c -pthread -DJABXPCOM_DEBUG   -I'/usr/local/include/mozilla-1.9a1' -I'/usr/local/include/mozilla-1.9a1/nspr' -I'/usr/local/include/mozilla-1.9a1/string' -I'/usr/local/include/mozilla-1.9a1/xpcom' -I'/usr/lib/sigc++/include' -I'/usr/local/include/mozilla-1.9a1' -I'/home/jabber/jabberoo-1.9.3/libjudo/src' -I'/home/jabber/jabberoo-1.9.3/libjudo/src/expat' -I'/home/jabber/jabberoo-1.9.3/include' -fPIC -o 'jabxpcom-packet.lo' 'jabxpcom-packet.cc'
In file included from /home/jabber/jabberoo-1.9.3/include/jabberoo.hh:45,
                 from jabxpcom-packet.cc:30:
/home/jabber/jabberoo-1.9.3/include/jabberoo-component.hh:38:27: sigc++/object.h: Nie ma takiego pliku ani katalogu
/home/jabber/jabberoo-1.9.3/include/jabberoo-component.hh:39:27: sigc++/signal.h: Nie ma takiego pliku ani katalogu
In file included from /home/jabber/jabberoo-1.9.3/include/jabberoo.hh:45,
                 from jabxpcom-packet.cc:30:
/home/jabber/jabberoo-1.9.3/include/jabberoo-component.hh:51: error: `Object'
   is not a class or namespace
/home/jabber/jabberoo-1.9.3/include/jabberoo-component.hh:51: error: invalid
   base-class specification
/home/jabber/jabberoo-1.9.3/include/jabberoo-component.hh:84: error: syntax
   error before `;' token
/home/jabber/jabberoo-1.9.3/include/jabberoo-component.hh:85: error: field `
   evtConnected' has incomplete type
/home/jabber/jabberoo-1.9.3/include/jabberoo-component.hh:99: error: `
   ElementCallbackFunc' was not declared in this scope
/home/jabber/jabberoo-1.9.3/include/jabberoo-component.hh:99: error: template
   argument 2 is invalid
/home/jabber/jabberoo-1.9.3/include/jabberoo-component.hh:99: error: template
   argument 4 is invalid
/home/jabber/jabberoo-1.9.3/include/jabberoo-component.hh:99: error: ISO C++
   forbids declaration of `_XPCallbacks' with no type
/home/jabber/jabberoo-1.9.3/include/jabberoo-component.hh: In member function `
   jabberoo::ComponentSession& jabberoo::ComponentSession::operator<<(const
   jabberoo::Packet&)':
/home/jabber/jabberoo-1.9.3/include/jabberoo-component.hh:79: error: `
   evtTransmitXML' undeclared (first use this function)
/home/jabber/jabberoo-1.9.3/include/jabberoo-component.hh:79: error: (Each
   undeclared identifier is reported only once for each function it appears
   in.)
/home/jabber/jabberoo-1.9.3/include/jabberoo-component.hh: In member function `
   jabberoo::ComponentSession& jabberoo::ComponentSession::operator<<(const
   char*)':
/home/jabber/jabberoo-1.9.3/include/jabberoo-component.hh:80: error: `
   evtTransmitXML' undeclared (first use this function)
In file included from /home/jabber/jabberoo-1.9.3/include/jabberoo.hh:46,
                 from jabxpcom-packet.cc:30:
/home/jabber/jabberoo-1.9.3/include/jabberoox.hh:36:27: sigc++/object.h: Nie ma takiego pliku ani katalogu
/home/jabber/jabberoo-1.9.3/include/jabberoox.hh:37:27: sigc++/signal.h: Nie ma takiego pliku ani katalogu
In file included from /home/jabber/jabberoo-1.9.3/include/jabberoo.hh:46,
                 from jabxpcom-packet.cc:30:
/home/jabber/jabberoo-1.9.3/include/jabberoox.hh: At global scope:
/home/jabber/jabberoo-1.9.3/include/jabberoox.hh:128: error: `Filter' was not
   declared in this scope
/home/jabber/jabberoo-1.9.3/include/jabberoox.hh:129: error: template argument
   1 is invalid
/home/jabber/jabberoo-1.9.3/include/jabberoox.hh:129: error: template argument
   2 is invalid
/home/jabber/jabberoo-1.9.3/include/jabberoox.hh:129: error: invalid base-class
   specification
/home/jabber/jabberoo-1.9.3/include/jabberoox.hh:136: error: `Agent' was not
   declared in this scope
/home/jabber/jabberoo-1.9.3/include/jabberoox.hh:136: error: template argument
   1 is invalid
/home/jabber/jabberoo-1.9.3/include/jabberoox.hh:136: error: template argument
   2 is invalid
/home/jabber/jabberoo-1.9.3/include/jabberoox.hh:136: error: invalid base-class
   specification
/home/jabber/jabberoo-1.9.3/include/jabberoox.hh:137: error: `Object' is not a
   class or namespace
/home/jabber/jabberoo-1.9.3/include/jabberoox.hh:137: error: invalid base-class
   specification
/home/jabber/jabberoo-1.9.3/include/jabberoox.hh:140: error: type specifier
   omitted for parameter `Session'
/home/jabber/jabberoo-1.9.3/include/jabberoox.hh:140: error: syntax error
   before `&' token
/home/jabber/jabberoo-1.9.3/include/jabberoox.hh:144: error: syntax error
   before `;' token
/home/jabber/jabberoo-1.9.3/include/jabberoox.hh:157: error: `
   ElementCallbackFunc' was not declared in this scope
/home/jabber/jabberoo-1.9.3/include/jabberoox.hh:157: error: syntax error
   before `)' token
/home/jabber/jabberoo-1.9.3/include/jabberoox.hh:158: error: `
   ElementCallbackFunc' was not declared in this scope
/home/jabber/jabberoo-1.9.3/include/jabberoox.hh:158: error: syntax error
   before `)' token
/home/jabber/jabberoo-1.9.3/include/jabberoox.hh:173: error: syntax error
   before `&' token
/home/jabber/jabberoo-1.9.3/include/jabberoox.hh:177: error: `Agent' was not
   declared in this scope
/home/jabber/jabberoo-1.9.3/include/jabberoox.hh:178: error: template argument
   1 is invalid
/home/jabber/jabberoo-1.9.3/include/jabberoox.hh:178: error: template argument
   2 is invalid
/home/jabber/jabberoo-1.9.3/include/jabberoox.hh:178: error: invalid base-class
   specification
/home/jabber/jabberoo-1.9.3/include/jabberoox.hh:180: error: type specifier
   omitted for parameter `Session'
/home/jabber/jabberoo-1.9.3/include/jabberoox.hh:180: error: syntax error
   before `&' token
/home/jabber/jabberoo-1.9.3/include/jabberoox.hh:181: error: type specifier
   omitted for parameter `Session'
/home/jabber/jabberoo-1.9.3/include/jabberoox.hh:181: error: syntax error
   before `&' token
In file included from /usr/include/c++/3.3.2/iterator:72,
                 from /home/jabber/jabberoo-1.9.3/include/jutil.hh:24,
                 from /home/jabber/jabberoo-1.9.3/include/jabberoo.hh:48,
                 from jabxpcom-packet.cc:30:
/usr/include/c++/3.3.2/bits/stream_iterator.h:43: error: syntax error before `<
   ' token
/usr/include/c++/3.3.2/bits/stream_iterator.h:49: error: syntax error before `;
   ' token
/usr/include/c++/3.3.2/bits/stream_iterator.h:50: error: `_Traits' was not
   declared in this scope
/usr/include/c++/3.3.2/bits/stream_iterator.h:50: error: syntax error before `;
   ' token
/usr/include/c++/3.3.2/bits/stream_iterator.h:54: error: template declaration
   of `_Tp std::_M_value'
/usr/include/c++/3.3.2/bits/stream_iterator.h:54: confused by earlier errors, bailing out
make: *** [jabxpcom-packet.lo] Błąd 1

sigc++

Looks like there is something wrong with your libsigc++ include paths.

BTW, I have never tried using anything newer than Mozilla 1.7, and the main JabRSS server is still using a Debian woody build (based on Mozilla 1.0). But I do plpan to update the packages a bit and provide .deb packages for Ubuntu Breezy Badger.