You are viewing a plain text version of this content. The canonical link for it is here.
Posted to c-users@xerces.apache.org by joselalupa <mi...@gmail.com> on 2014/08/23 03:27:41 UTC

cross compiling xerces project


i am trying to do a cross compile of xerces in ubuntu for arm processor, i
have followed this tutorial
(http://hertaville.com/2013/07/19/cross-compiling-gtk-applications-for-the-raspberry-pi/)
it works fine with gtk but when trying to call xerces i got error: "c:5:42:
fatal error: xercesc/util/PlatformUtils.hpp: no such files or directory."
xerces library is in /rpi/usr/lib/arm-linux-gnueabihf/ libxerces-c-3.1.so,
the other files are in /rpi/usr/include/xercesc. i can see the file is the
route the makefile is pointing, here is my makefiles code:

ARM_PREFIX= arm-linux-gnueabihf-
CC = $(ARM_PREFIX)g++
SRC += gtktest.c
TARGET = gtktest

LIBRARY += gtk-3
LIBRARY += gdk-3
LIBRARY += atk-1.0
LIBRARY += gio-2.0
LIBRARY += pangocairo-1.0
LIBRARY += gdk_pixbuf-2.0
LIBRARY += cairo-gobject
LIBRARY += pango-1.0
LIBRARY += cairo
LIBRARY += gobject-2.0
LIBRARY += glib-2.0
LIBRARY += xerces-c-3.1

LIBRARYDIR += $(HOME)/rpi/lib/arm-linux-gnueabihf
LIBRARYDIR += $(HOME)/rpi/usr/lib/arm-linux-gnueabihf
LIBRARYDIR += $(HOME)/rpi/lib
LIBRARYDIR += $(HOME)/rpi/usr/lib
LIBRARYDIR += $(HOME)/rpi/usr/local/lib
LIBRARYDIR += $(HOME)/rpi/usr/include

XLINK_LIBDIR += $(HOME)/rpi/lib/arm-linux-gnueabihf
XLINK_LIBDIR += $(HOME)/rpi/usr/lib/arm-linux-gnueabihf

INCLUDEDIR += $(HOME)/rpi/usr/include/gtk-3.0
INCLUDEDIR += $(HOME)/rpi/usr/include/pango-1.0
INCLUDEDIR += $(HOME)/rpi/usr/include/gio-unix-2.0/
INCLUDEDIR += $(HOME)/rpi/usr/include/atk-1.0
INCLUDEDIR += $(HOME)/rpi/usr/include/cairo
INCLUDEDIR += $(HOME)/rpi/usr/include/gdk-pixbuf-2.0
INCLUDEDIR += $(HOME)/rpi/usr/include/freetype2
INCLUDEDIR += $(HOME)/rpi/usr/include/glib-2.0
INCLUDEDIR += $(HOME)/rpi/usr/lib/arm-linux-gnueabihf/glib-2.0/include
INCLUDEDIR += $(HOME)/rpi/usr/include/pixman-1
INCLUDEDIR += $(HOME)/rpi/usr/include/libpng12
INCLUDEDIR += $(HOME)/rpi/usr/local/lib
INCLUDEDIR += $(HOME)/rpi/usr/include/xercesc

OPT = -O0
DEBUG = -g
WARN= -Wall
PTHREAD= -pthread

INCDIR = $(patsubst %,-I%,$(INCLUDEDIR))
LIBDIR = $(patsubst %,-L%,$(LIBRARYDIR))
LIB = $(patsubst %,-l%,$(LIBRARY))
XLINKDIR = $(patsubst %,-Xlinker -rpath-link=%,$(XLINK_LIBDIR))

all:
$(CC) $(OPT) $(DEBUG) $(WARN) $(LIBDIR) $(PTHREAD) $(INCDIR) $(XLINKDIR)
$(LIB) $(SRC) -o $(TARGET)

clean:
rm -rf $(TARGET)

any help is welcome




--
View this message in context: http://apache-xml-project.6118.n7.nabble.com/cross-compiling-xerces-project-tp41413.html
Sent from the Xerces - C - Users mailing list archive at Nabble.com.

Re: cross compiling xerces project

Posted by milton ortiz <mi...@gmail.com>.
given your advice xerces message is all gone, now i am facing another
message, sorry if bothering, i am to try to compile this tutorial:
http://vichargrave.com/xml-parsing-with-dom-using-c/ wich has main.cpp,
XmlDomDocument.cpp and XmlDomDocument.h.

*main.cpp*
#include <stdio.h>  #include <stdlib.h>  #include <string>  #include
<iostream>  #include "XmlDomDocument.h"
 int main(int argc, char** argv)  {  string value;  XmlDomDocument* doc =
new XmlDomDocument("./bookstore.xml");  if (doc) {  for (int i = 0; i < doc
->getChildCount("bookstore", 0, "book"); i++) {  printf("Book %d\n", i+1);
value = doc->getAttributeValue("book", i, "category");  printf("book
category - %s\n", value.c_str());  value = doc->getChildValue("book", i,
"title");  printf("book title - %s\n", value.c_str());  value = doc->
getChildValue("book", i, "author");  printf("book author - %s\n", value.
c_str());  value = doc->getChildValue("book", i, "year");  printf("book
year - %s\n", value.c_str());  value = doc->getChildValue("book", i, "price"
);  printf("book price - %s\n", value.c_str());  }  delete doc;  }

*XmlDomDocument.h*
#ifndef __XmlDomDocument_h__  #define __XmlDomDocument_h__
 #include <xercesc/parsers/XercesDOMParser.hpp>  #include
<xercesc/dom/DOM.hpp>  #include <xercesc/sax/HandlerBase.hpp>  #include
<xercesc/util/XMLString.hpp>  #include <xercesc/util/PlatformUtils.hpp>
 #include <string>
 using namespace std;  using namespace xercesc;
 class XmlDomDocument  {  DOMDocument* m_doc;
  public:  XmlDomDocument(const char* xmlfile);  ~XmlDomDocument();
  string getChildValue(const char* parentTag, int parentIndex, const char*
childTag, int childIndex=0);  string getAttributeValue(const char*
elementTag, int elementIndex, const char* attrTag);  int getRootElementCount
(const char* rootElementTag);  int getChildCount(const char* parentTag, int
parentIndex, const char* childTag);
  private:  XmlDomDocument();  XmlDomDocument(const XmlDomDocument&);  };

*XmlDomDocument.cpp*
class XmlDomErrorHandler : public HandlerBase  {  public:  void fatalError(
const SAXParseException &exc) {  printf("Fatal parsing error at line %d\n",
(int)exc.getLineNumber());  exit(-1);  }  };
 XercesDOMParser* parser = NULL;  ErrorHandler* errorHandler = NULL;
 void createParser()  {  if (!parser)  {  XMLPlatformUtils::Initialize();
parser = new XercesDOMParser();  errorHandler = (ErrorHandler*) new
XmlDomErrorHandler();  parser->setErrorHandler(errorHandler);  }  }
 XmlDomDocument::XmlDomDocument(const char* xmlfile) : m_doc(NULL)  {
createParser();  parser->parse(xmlfile);  m_doc = parser->adoptDocument();
}
 XmlDomDocument::~XmlDomDocument()  {  if (m_doc) m_doc->release();  }
 string XmlDomDocument::getChildValue(const char* parentTag, int parentIndex
, const char* childTag, int childIndex)  {  XMLCh* temp = XMLString::
transcode(parentTag);  DOMNodeList* list = m_doc->getElementsByTagName(temp
);  XMLString::release(&temp);
  DOMElement* parent = dynamic_cast<DOMElement*>(list->item(parentIndex));
DOMElement* child =   dynamic_cast<DOMElement*>(parent->getElementsByTagName
(XMLString::transcode(childTag))->item(childIndex));  string value;  if (
child) {  char* temp2 = XMLString::transcode(child->getTextContent());
value = temp2;  XMLString::release(&temp2);  }  else {  value = "";  }
return value;  }
 string XmlDomDocument::getAttributeValue(const char* elementTag, int
elementIndex, const char* attributeTag)  {  XMLCh* temp = XMLString::
transcode(elementTag);  DOMNodeList* list = m_doc->getElementsByTagName(temp
);  XMLString::release(&temp);
  DOMElement* element = dynamic_cast<DOMElement*>(list->item(elementIndex));
temp = XMLString::transcode(attributeTag);  char* temp2 = XMLString::
transcode(element->getAttribute(temp));
  string value = temp2;  XMLString::release(&temp);  XMLString::release(&
temp2);  return value;  }
 int XmlDomDocument::getRootElementCount(const char* rootElementTag)  {
DOMNodeList* list = m_doc->getElementsByTagName(XMLString::transcode(
rootElementTag));  return (int)list->getLength();  }
 int XmlDomDocument::getChildCount(const char* parentTag, int parentIndex,
const char* childTag)  {  XMLCh* temp = XMLString::transcode(parentTag);
DOMNodeList* list = m_doc->getElementsByTagName(temp);  XMLString::release(&
temp);
  DOMElement* parent = dynamic_cast<DOMElement*>(list->item(parentIndex));
DOMNodeList* childList = parent->getElementsByTagName(XMLString::transcode(
childTag));  return (int)childList->getLength();  }


*and my makefile is*
ARM_PREFIX= arm-linux-gnueabihf-
CC = $(ARM_PREFIX)g++
SRC += gtktest.c
TARGET = gtktest

LIBRARY += gtk-3
LIBRARY += gdk-3
LIBRARY += atk-1.0
LIBRARY += gio-2.0
LIBRARY += pangocairo-1.0
LIBRARY += gdk_pixbuf-2.0
LIBRARY += cairo-gobject
LIBRARY += pango-1.0
LIBRARY += cairo
LIBRARY += gobject-2.0
LIBRARY += glib-2.0
LIBRARY += xerces-c-3.1

LIBRARYDIR += $(HOME)/rpi/lib/arm-linux-
gnueabihf
LIBRARYDIR += $(HOME)/rpi/usr/lib/arm-linux-gnueabihf
LIBRARYDIR += $(HOME)/rpi/lib
LIBRARYDIR += $(HOME)/rpi/usr/lib
LIBRARYDIR += $(HOME)/rpi/usr/local/lib
LIBRARYDIR += $(HOME)/rpi/usr/include

XLINK_LIBDIR += $(HOME)/rpi/lib/arm-linux-gnueabihf
XLINK_LIBDIR += $(HOME)/rpi/usr/lib/arm-linux-gnueabihf

INCLUDEDIR += $(HOME)/rpi/usr/include/gtk-3.0
INCLUDEDIR += $(HOME)/rpi/usr/include/pango-1.0
INCLUDEDIR += $(HOME)/rpi/usr/include/gio-unix-2.0/
INCLUDEDIR += $(HOME)/rpi/usr/include/atk-1.0
INCLUDEDIR += $(HOME)/rpi/usr/include/cairo
INCLUDEDIR += $(HOME)/rpi/usr/include/gdk-pixbuf-2.0
INCLUDEDIR += $(HOME)/rpi/usr/include/freetype2
INCLUDEDIR += $(HOME)/rpi/usr/include/glib-2.0
INCLUDEDIR += $(HOME)/rpi/usr/lib/arm-linux-gnueabihf/glib-2.0/include
INCLUDEDIR += $(HOME)/rpi/usr/include/pixman-1
INCLUDEDIR += $(HOME)/rpi/usr/include/libpng12
INCLUDEDIR += $(HOME)/rpi/usr/local/lib
INCLUDEDIR += $(HOME)/rpi/usr/include/xercesc

OPT = -O0
DEBUG = -g
WARN= -Wall
PTHREAD= -pthread

INCDIR = $(patsubst %,-I%,$(INCLUDEDIR))
LIBDIR = $(patsubst %,-L%,$(LIBRARYDIR))
LIB = $(patsubst %,-l%,$(LIBRARY))
XLINKDIR = $(patsubst %,-Xlinker -rpath-link=%,$(XLINK_LIBDIR))

all:
$(CC) $(OPT) $(DEBUG) $(WARN) $(LIBDIR) $(PTHREAD) $(INCDIR) $(XLINKDIR)
$(LIB) $(SRC) -o $(TARGET)

clean:
rm -rf $(TARGET)



when i run make it say :
undefined reference to 'XmlDomDocument:: XmlDomDocument(char const*)'
undefined reference to 'XmlDomDocument:: getAttributeValue(char const*,
int, char const)'
undefined reference to 'XmlDomDocument:: getChildValue(char const*, int,
char const)'
etc

sorry if bothering or out of scope


On Sat, Aug 23, 2014 at 11:30 AM, Alberto Massari <albertomassari@tiscali.it
> wrote:

> Il 23/08/14 14:10, milton ortiz ha scritto:
>
>  actually alberto i am not a programmer, i am trying to put pieces together
>> but you were absolute right, it was a trouble related to the path you
>> told,
>> so, if i follow what you said i could delete:
>>
>> INCLUDEDIR += $(HOME)/rpi/usr/include/gtk-3.0
>> INCLUDEDIR += $(HOME)/rpi/usr/include/pango-1.0
>> INCLUDEDIR += $(HOME)/rpi/usr/include/gio-unix-2.0/
>> INCLUDEDIR += $(HOME)/rpi/usr/include/atk-1.0
>> INCLUDEDIR += $(HOME)/rpi/usr/include/cairo
>> INCLUDEDIR += $(HOME)/rpi/usr/include/gdk-pixbuf-2.0
>> INCLUDEDIR += $(HOME)/rpi/usr/include/freetype2
>> INCLUDEDIR += $(HOME)/rpi/usr/include/glib-2.0
>>
>> they are all in the include directory, right?
>> thanks a lot for your guide
>>
>
> No, I don't think those libraries hardcode the version number in their
> #include statement. Maybe "cairo" could be removed... but it's better if
> you just replace
>
> INCLUDEDIR += $(HOME)/rpi/usr/include/xercesc
>
> with
>
> INCLUDEDIR += $(HOME)/rpi/usr/include
>
>
> and try to compile
>
> Alberto
>
>
>
>>
>> On Sat, Aug 23, 2014 at 4:16 AM, Alberto Massari <
>> albertomassari@tiscali.it>
>> wrote:
>>
>>  Xerces-C++ assumes that its include files are located in a 'xercesc'
>>> subdirectory of the include path. You are specifying
>>>
>>> INCLUDEDIR += $(HOME)/rpi/usr/include/xercesc
>>>
>>> So, unless in the xercesc there is another xercesc subfolder, you should
>>> really have
>>>
>>> INCLUDEDIR += $(HOME)/rpi/usr/include
>>>
>>>
>>> Also, why do you have the LIBRARYDIR pointing to the include folder?
>>>
>>> LIBRARYDIR += $(HOME)/rpi/usr/include
>>>
>>>
>>> Alberto
>>>
>>> Il 23/08/14 03:27, joselalupa ha scritto:
>>>
>>>
>>>  i am trying to do a cross compile of xerces in ubuntu for arm
>>>> processor, i
>>>> have followed this tutorial
>>>> (http://hertaville.com/2013/07/19/cross-compiling-gtk-
>>>> applications-for-the-raspberry-pi/)
>>>> it works fine with gtk but when trying to call xerces i got error:
>>>> "c:5:42:
>>>> fatal error: xercesc/util/PlatformUtils.hpp: no such files or
>>>> directory."
>>>> xerces library is in /rpi/usr/lib/arm-linux-gnueabihf/
>>>> libxerces-c-3.1.so
>>>> ,
>>>> the other files are in /rpi/usr/include/xercesc. i can see the file is
>>>> the
>>>> route the makefile is pointing, here is my makefiles code:
>>>>
>>>> ARM_PREFIX= arm-linux-gnueabihf-
>>>> CC = $(ARM_PREFIX)g++
>>>> SRC += gtktest.c
>>>> TARGET = gtktest
>>>>
>>>> LIBRARY += gtk-3
>>>> LIBRARY += gdk-3
>>>> LIBRARY += atk-1.0
>>>> LIBRARY += gio-2.0
>>>> LIBRARY += pangocairo-1.0
>>>> LIBRARY += gdk_pixbuf-2.0
>>>> LIBRARY += cairo-gobject
>>>> LIBRARY += pango-1.0
>>>> LIBRARY += cairo
>>>> LIBRARY += gobject-2.0
>>>> LIBRARY += glib-2.0
>>>> LIBRARY += xerces-c-3.1
>>>>
>>>> LIBRARYDIR += $(HOME)/rpi/lib/arm-linux-gnueabihf
>>>> LIBRARYDIR += $(HOME)/rpi/usr/lib/arm-linux-gnueabihf
>>>> LIBRARYDIR += $(HOME)/rpi/lib
>>>> LIBRARYDIR += $(HOME)/rpi/usr/lib
>>>> LIBRARYDIR += $(HOME)/rpi/usr/local/lib
>>>> LIBRARYDIR += $(HOME)/rpi/usr/include
>>>>
>>>> XLINK_LIBDIR += $(HOME)/rpi/lib/arm-linux-gnueabihf
>>>> XLINK_LIBDIR += $(HOME)/rpi/usr/lib/arm-linux-gnueabihf
>>>>
>>>> INCLUDEDIR += $(HOME)/rpi/usr/include/gtk-3.0
>>>> INCLUDEDIR += $(HOME)/rpi/usr/include/pango-1.0
>>>> INCLUDEDIR += $(HOME)/rpi/usr/include/gio-unix-2.0/
>>>> INCLUDEDIR += $(HOME)/rpi/usr/include/atk-1.0
>>>> INCLUDEDIR += $(HOME)/rpi/usr/include/cairo
>>>> INCLUDEDIR += $(HOME)/rpi/usr/include/gdk-pixbuf-2.0
>>>> INCLUDEDIR += $(HOME)/rpi/usr/include/freetype2
>>>> INCLUDEDIR += $(HOME)/rpi/usr/include/glib-2.0
>>>> INCLUDEDIR += $(HOME)/rpi/usr/lib/arm-linux-gnueabihf/glib-2.0/include
>>>> INCLUDEDIR += $(HOME)/rpi/usr/include/pixman-1
>>>> INCLUDEDIR += $(HOME)/rpi/usr/include/libpng12
>>>> INCLUDEDIR += $(HOME)/rpi/usr/local/lib
>>>> INCLUDEDIR += $(HOME)/rpi/usr/include/xercesc
>>>>
>>>> OPT = -O0
>>>> DEBUG = -g
>>>> WARN= -Wall
>>>> PTHREAD= -pthread
>>>>
>>>> INCDIR = $(patsubst %,-I%,$(INCLUDEDIR))
>>>> LIBDIR = $(patsubst %,-L%,$(LIBRARYDIR))
>>>> LIB = $(patsubst %,-l%,$(LIBRARY))
>>>> XLINKDIR = $(patsubst %,-Xlinker -rpath-link=%,$(XLINK_LIBDIR))
>>>>
>>>> all:
>>>> $(CC) $(OPT) $(DEBUG) $(WARN) $(LIBDIR) $(PTHREAD) $(INCDIR) $(XLINKDIR)
>>>> $(LIB) $(SRC) -o $(TARGET)
>>>>
>>>> clean:
>>>> rm -rf $(TARGET)
>>>>
>>>> any help is welcome
>>>>
>>>>
>>>>
>>>>
>>>> --
>>>> View this message in context: http://apache-xml-project.
>>>> 6118.n7.nabble.com/cross-compiling-xerces-project-tp41413.html
>>>> Sent from the Xerces - C - Users mailing list archive at Nabble.com.
>>>>
>>>>
>>>>
>>
>


-- 
-----------------------------------------------------
Inventando cositas pa hacer que las masas reaccionen.

Re: cross compiling xerces project

Posted by Alberto Massari <al...@tiscali.it>.
Il 23/08/14 14:10, milton ortiz ha scritto:
> actually alberto i am not a programmer, i am trying to put pieces together
> but you were absolute right, it was a trouble related to the path you told,
> so, if i follow what you said i could delete:
>
> INCLUDEDIR += $(HOME)/rpi/usr/include/gtk-3.0
> INCLUDEDIR += $(HOME)/rpi/usr/include/pango-1.0
> INCLUDEDIR += $(HOME)/rpi/usr/include/gio-unix-2.0/
> INCLUDEDIR += $(HOME)/rpi/usr/include/atk-1.0
> INCLUDEDIR += $(HOME)/rpi/usr/include/cairo
> INCLUDEDIR += $(HOME)/rpi/usr/include/gdk-pixbuf-2.0
> INCLUDEDIR += $(HOME)/rpi/usr/include/freetype2
> INCLUDEDIR += $(HOME)/rpi/usr/include/glib-2.0
>
> they are all in the include directory, right?
> thanks a lot for your guide

No, I don't think those libraries hardcode the version number in their 
#include statement. Maybe "cairo" could be removed... but it's better if 
you just replace

INCLUDEDIR += $(HOME)/rpi/usr/include/xercesc

with

INCLUDEDIR += $(HOME)/rpi/usr/include


and try to compile

Alberto

>
>
> On Sat, Aug 23, 2014 at 4:16 AM, Alberto Massari <al...@tiscali.it>
> wrote:
>
>> Xerces-C++ assumes that its include files are located in a 'xercesc'
>> subdirectory of the include path. You are specifying
>>
>> INCLUDEDIR += $(HOME)/rpi/usr/include/xercesc
>>
>> So, unless in the xercesc there is another xercesc subfolder, you should
>> really have
>>
>> INCLUDEDIR += $(HOME)/rpi/usr/include
>>
>>
>> Also, why do you have the LIBRARYDIR pointing to the include folder?
>>
>> LIBRARYDIR += $(HOME)/rpi/usr/include
>>
>>
>> Alberto
>>
>> Il 23/08/14 03:27, joselalupa ha scritto:
>>
>>
>>> i am trying to do a cross compile of xerces in ubuntu for arm processor, i
>>> have followed this tutorial
>>> (http://hertaville.com/2013/07/19/cross-compiling-gtk-
>>> applications-for-the-raspberry-pi/)
>>> it works fine with gtk but when trying to call xerces i got error:
>>> "c:5:42:
>>> fatal error: xercesc/util/PlatformUtils.hpp: no such files or directory."
>>> xerces library is in /rpi/usr/lib/arm-linux-gnueabihf/ libxerces-c-3.1.so
>>> ,
>>> the other files are in /rpi/usr/include/xercesc. i can see the file is the
>>> route the makefile is pointing, here is my makefiles code:
>>>
>>> ARM_PREFIX= arm-linux-gnueabihf-
>>> CC = $(ARM_PREFIX)g++
>>> SRC += gtktest.c
>>> TARGET = gtktest
>>>
>>> LIBRARY += gtk-3
>>> LIBRARY += gdk-3
>>> LIBRARY += atk-1.0
>>> LIBRARY += gio-2.0
>>> LIBRARY += pangocairo-1.0
>>> LIBRARY += gdk_pixbuf-2.0
>>> LIBRARY += cairo-gobject
>>> LIBRARY += pango-1.0
>>> LIBRARY += cairo
>>> LIBRARY += gobject-2.0
>>> LIBRARY += glib-2.0
>>> LIBRARY += xerces-c-3.1
>>>
>>> LIBRARYDIR += $(HOME)/rpi/lib/arm-linux-gnueabihf
>>> LIBRARYDIR += $(HOME)/rpi/usr/lib/arm-linux-gnueabihf
>>> LIBRARYDIR += $(HOME)/rpi/lib
>>> LIBRARYDIR += $(HOME)/rpi/usr/lib
>>> LIBRARYDIR += $(HOME)/rpi/usr/local/lib
>>> LIBRARYDIR += $(HOME)/rpi/usr/include
>>>
>>> XLINK_LIBDIR += $(HOME)/rpi/lib/arm-linux-gnueabihf
>>> XLINK_LIBDIR += $(HOME)/rpi/usr/lib/arm-linux-gnueabihf
>>>
>>> INCLUDEDIR += $(HOME)/rpi/usr/include/gtk-3.0
>>> INCLUDEDIR += $(HOME)/rpi/usr/include/pango-1.0
>>> INCLUDEDIR += $(HOME)/rpi/usr/include/gio-unix-2.0/
>>> INCLUDEDIR += $(HOME)/rpi/usr/include/atk-1.0
>>> INCLUDEDIR += $(HOME)/rpi/usr/include/cairo
>>> INCLUDEDIR += $(HOME)/rpi/usr/include/gdk-pixbuf-2.0
>>> INCLUDEDIR += $(HOME)/rpi/usr/include/freetype2
>>> INCLUDEDIR += $(HOME)/rpi/usr/include/glib-2.0
>>> INCLUDEDIR += $(HOME)/rpi/usr/lib/arm-linux-gnueabihf/glib-2.0/include
>>> INCLUDEDIR += $(HOME)/rpi/usr/include/pixman-1
>>> INCLUDEDIR += $(HOME)/rpi/usr/include/libpng12
>>> INCLUDEDIR += $(HOME)/rpi/usr/local/lib
>>> INCLUDEDIR += $(HOME)/rpi/usr/include/xercesc
>>>
>>> OPT = -O0
>>> DEBUG = -g
>>> WARN= -Wall
>>> PTHREAD= -pthread
>>>
>>> INCDIR = $(patsubst %,-I%,$(INCLUDEDIR))
>>> LIBDIR = $(patsubst %,-L%,$(LIBRARYDIR))
>>> LIB = $(patsubst %,-l%,$(LIBRARY))
>>> XLINKDIR = $(patsubst %,-Xlinker -rpath-link=%,$(XLINK_LIBDIR))
>>>
>>> all:
>>> $(CC) $(OPT) $(DEBUG) $(WARN) $(LIBDIR) $(PTHREAD) $(INCDIR) $(XLINKDIR)
>>> $(LIB) $(SRC) -o $(TARGET)
>>>
>>> clean:
>>> rm -rf $(TARGET)
>>>
>>> any help is welcome
>>>
>>>
>>>
>>>
>>> --
>>> View this message in context: http://apache-xml-project.
>>> 6118.n7.nabble.com/cross-compiling-xerces-project-tp41413.html
>>> Sent from the Xerces - C - Users mailing list archive at Nabble.com.
>>>
>>>
>


Re: cross compiling xerces project

Posted by milton ortiz <mi...@gmail.com>.
actually alberto i am not a programmer, i am trying to put pieces together
but you were absolute right, it was a trouble related to the path you told,
so, if i follow what you said i could delete:

INCLUDEDIR += $(HOME)/rpi/usr/include/gtk-3.0
INCLUDEDIR += $(HOME)/rpi/usr/include/pango-1.0
INCLUDEDIR += $(HOME)/rpi/usr/include/gio-unix-2.0/
INCLUDEDIR += $(HOME)/rpi/usr/include/atk-1.0
INCLUDEDIR += $(HOME)/rpi/usr/include/cairo
INCLUDEDIR += $(HOME)/rpi/usr/include/gdk-pixbuf-2.0
INCLUDEDIR += $(HOME)/rpi/usr/include/freetype2
INCLUDEDIR += $(HOME)/rpi/usr/include/glib-2.0

they are all in the include directory, right?
thanks a lot for your guide



On Sat, Aug 23, 2014 at 4:16 AM, Alberto Massari <al...@tiscali.it>
wrote:

> Xerces-C++ assumes that its include files are located in a 'xercesc'
> subdirectory of the include path. You are specifying
>
> INCLUDEDIR += $(HOME)/rpi/usr/include/xercesc
>
> So, unless in the xercesc there is another xercesc subfolder, you should
> really have
>
> INCLUDEDIR += $(HOME)/rpi/usr/include
>
>
> Also, why do you have the LIBRARYDIR pointing to the include folder?
>
> LIBRARYDIR += $(HOME)/rpi/usr/include
>
>
> Alberto
>
> Il 23/08/14 03:27, joselalupa ha scritto:
>
>
>> i am trying to do a cross compile of xerces in ubuntu for arm processor, i
>> have followed this tutorial
>> (http://hertaville.com/2013/07/19/cross-compiling-gtk-
>> applications-for-the-raspberry-pi/)
>> it works fine with gtk but when trying to call xerces i got error:
>> "c:5:42:
>> fatal error: xercesc/util/PlatformUtils.hpp: no such files or directory."
>> xerces library is in /rpi/usr/lib/arm-linux-gnueabihf/ libxerces-c-3.1.so
>> ,
>> the other files are in /rpi/usr/include/xercesc. i can see the file is the
>> route the makefile is pointing, here is my makefiles code:
>>
>> ARM_PREFIX= arm-linux-gnueabihf-
>> CC = $(ARM_PREFIX)g++
>> SRC += gtktest.c
>> TARGET = gtktest
>>
>> LIBRARY += gtk-3
>> LIBRARY += gdk-3
>> LIBRARY += atk-1.0
>> LIBRARY += gio-2.0
>> LIBRARY += pangocairo-1.0
>> LIBRARY += gdk_pixbuf-2.0
>> LIBRARY += cairo-gobject
>> LIBRARY += pango-1.0
>> LIBRARY += cairo
>> LIBRARY += gobject-2.0
>> LIBRARY += glib-2.0
>> LIBRARY += xerces-c-3.1
>>
>> LIBRARYDIR += $(HOME)/rpi/lib/arm-linux-gnueabihf
>> LIBRARYDIR += $(HOME)/rpi/usr/lib/arm-linux-gnueabihf
>> LIBRARYDIR += $(HOME)/rpi/lib
>> LIBRARYDIR += $(HOME)/rpi/usr/lib
>> LIBRARYDIR += $(HOME)/rpi/usr/local/lib
>> LIBRARYDIR += $(HOME)/rpi/usr/include
>>
>> XLINK_LIBDIR += $(HOME)/rpi/lib/arm-linux-gnueabihf
>> XLINK_LIBDIR += $(HOME)/rpi/usr/lib/arm-linux-gnueabihf
>>
>> INCLUDEDIR += $(HOME)/rpi/usr/include/gtk-3.0
>> INCLUDEDIR += $(HOME)/rpi/usr/include/pango-1.0
>> INCLUDEDIR += $(HOME)/rpi/usr/include/gio-unix-2.0/
>> INCLUDEDIR += $(HOME)/rpi/usr/include/atk-1.0
>> INCLUDEDIR += $(HOME)/rpi/usr/include/cairo
>> INCLUDEDIR += $(HOME)/rpi/usr/include/gdk-pixbuf-2.0
>> INCLUDEDIR += $(HOME)/rpi/usr/include/freetype2
>> INCLUDEDIR += $(HOME)/rpi/usr/include/glib-2.0
>> INCLUDEDIR += $(HOME)/rpi/usr/lib/arm-linux-gnueabihf/glib-2.0/include
>> INCLUDEDIR += $(HOME)/rpi/usr/include/pixman-1
>> INCLUDEDIR += $(HOME)/rpi/usr/include/libpng12
>> INCLUDEDIR += $(HOME)/rpi/usr/local/lib
>> INCLUDEDIR += $(HOME)/rpi/usr/include/xercesc
>>
>> OPT = -O0
>> DEBUG = -g
>> WARN= -Wall
>> PTHREAD= -pthread
>>
>> INCDIR = $(patsubst %,-I%,$(INCLUDEDIR))
>> LIBDIR = $(patsubst %,-L%,$(LIBRARYDIR))
>> LIB = $(patsubst %,-l%,$(LIBRARY))
>> XLINKDIR = $(patsubst %,-Xlinker -rpath-link=%,$(XLINK_LIBDIR))
>>
>> all:
>> $(CC) $(OPT) $(DEBUG) $(WARN) $(LIBDIR) $(PTHREAD) $(INCDIR) $(XLINKDIR)
>> $(LIB) $(SRC) -o $(TARGET)
>>
>> clean:
>> rm -rf $(TARGET)
>>
>> any help is welcome
>>
>>
>>
>>
>> --
>> View this message in context: http://apache-xml-project.
>> 6118.n7.nabble.com/cross-compiling-xerces-project-tp41413.html
>> Sent from the Xerces - C - Users mailing list archive at Nabble.com.
>>
>>
>


-- 
-----------------------------------------------------
Inventando cositas pa hacer que las masas reaccionen.

Re: cross compiling xerces project

Posted by Alberto Massari <al...@tiscali.it>.
Xerces-C++ assumes that its include files are located in a 'xercesc' 
subdirectory of the include path. You are specifying

INCLUDEDIR += $(HOME)/rpi/usr/include/xercesc

So, unless in the xercesc there is another xercesc subfolder, you should 
really have

INCLUDEDIR += $(HOME)/rpi/usr/include


Also, why do you have the LIBRARYDIR pointing to the include folder?

LIBRARYDIR += $(HOME)/rpi/usr/include


Alberto

Il 23/08/14 03:27, joselalupa ha scritto:
>
> i am trying to do a cross compile of xerces in ubuntu for arm processor, i
> have followed this tutorial
> (http://hertaville.com/2013/07/19/cross-compiling-gtk-applications-for-the-raspberry-pi/)
> it works fine with gtk but when trying to call xerces i got error: "c:5:42:
> fatal error: xercesc/util/PlatformUtils.hpp: no such files or directory."
> xerces library is in /rpi/usr/lib/arm-linux-gnueabihf/ libxerces-c-3.1.so,
> the other files are in /rpi/usr/include/xercesc. i can see the file is the
> route the makefile is pointing, here is my makefiles code:
>
> ARM_PREFIX= arm-linux-gnueabihf-
> CC = $(ARM_PREFIX)g++
> SRC += gtktest.c
> TARGET = gtktest
>
> LIBRARY += gtk-3
> LIBRARY += gdk-3
> LIBRARY += atk-1.0
> LIBRARY += gio-2.0
> LIBRARY += pangocairo-1.0
> LIBRARY += gdk_pixbuf-2.0
> LIBRARY += cairo-gobject
> LIBRARY += pango-1.0
> LIBRARY += cairo
> LIBRARY += gobject-2.0
> LIBRARY += glib-2.0
> LIBRARY += xerces-c-3.1
>
> LIBRARYDIR += $(HOME)/rpi/lib/arm-linux-gnueabihf
> LIBRARYDIR += $(HOME)/rpi/usr/lib/arm-linux-gnueabihf
> LIBRARYDIR += $(HOME)/rpi/lib
> LIBRARYDIR += $(HOME)/rpi/usr/lib
> LIBRARYDIR += $(HOME)/rpi/usr/local/lib
> LIBRARYDIR += $(HOME)/rpi/usr/include
>
> XLINK_LIBDIR += $(HOME)/rpi/lib/arm-linux-gnueabihf
> XLINK_LIBDIR += $(HOME)/rpi/usr/lib/arm-linux-gnueabihf
>
> INCLUDEDIR += $(HOME)/rpi/usr/include/gtk-3.0
> INCLUDEDIR += $(HOME)/rpi/usr/include/pango-1.0
> INCLUDEDIR += $(HOME)/rpi/usr/include/gio-unix-2.0/
> INCLUDEDIR += $(HOME)/rpi/usr/include/atk-1.0
> INCLUDEDIR += $(HOME)/rpi/usr/include/cairo
> INCLUDEDIR += $(HOME)/rpi/usr/include/gdk-pixbuf-2.0
> INCLUDEDIR += $(HOME)/rpi/usr/include/freetype2
> INCLUDEDIR += $(HOME)/rpi/usr/include/glib-2.0
> INCLUDEDIR += $(HOME)/rpi/usr/lib/arm-linux-gnueabihf/glib-2.0/include
> INCLUDEDIR += $(HOME)/rpi/usr/include/pixman-1
> INCLUDEDIR += $(HOME)/rpi/usr/include/libpng12
> INCLUDEDIR += $(HOME)/rpi/usr/local/lib
> INCLUDEDIR += $(HOME)/rpi/usr/include/xercesc
>
> OPT = -O0
> DEBUG = -g
> WARN= -Wall
> PTHREAD= -pthread
>
> INCDIR = $(patsubst %,-I%,$(INCLUDEDIR))
> LIBDIR = $(patsubst %,-L%,$(LIBRARYDIR))
> LIB = $(patsubst %,-l%,$(LIBRARY))
> XLINKDIR = $(patsubst %,-Xlinker -rpath-link=%,$(XLINK_LIBDIR))
>
> all:
> $(CC) $(OPT) $(DEBUG) $(WARN) $(LIBDIR) $(PTHREAD) $(INCDIR) $(XLINKDIR)
> $(LIB) $(SRC) -o $(TARGET)
>
> clean:
> rm -rf $(TARGET)
>
> any help is welcome
>
>
>
>
> --
> View this message in context: http://apache-xml-project.6118.n7.nabble.com/cross-compiling-xerces-project-tp41413.html
> Sent from the Xerces - C - Users mailing list archive at Nabble.com.
>