Menu

Building Cayuga on Mac / Linux

2010-03-08
2013-04-26
  • Steve Miller

    Steve Miller - 2010-03-08

    Hi - I've been trying to build Cayuga first of all on Mac OSx (Snow Leopard) and latterly on Ubuntu 9.1. I've read some of the other posts on build problems under VS2008 and suspect I have similar issues with linked libraries.

    Firstly on the mac, using the zipped distribution, I got a pile of errors as follows:

    CY_HeapImpl.cpp:121: warning: comparison between signed and unsigned integer expressions, and
    CY_HeapImpl.cpp:313: error: cast from ‘char*’ to ‘unsigned int’ loses precision

    ….which lead me to think about 32bit/64bit issues and change a couple of the offending assignments from int to long. This seemed to get me past the problem.

    Moving on from the above, I then had problems with the extlib libraries:

    ld: warning: in extlib/lib/Darwin/libcorelibd.a, file is not of required architecture
    ld: warning: in extlib/lib/Darwin/libnetworkd.a, file is not of required architecture
    etc…also for xerces and antlr - followed by a complete dump of all the types that couldn't be found because of the libraries (presumably) having been built on a 32bit environment.

    I resolved these for antlr and xerces by rebuilding from source but can't find the source for libcorelibd & libnetworkd.

    I also had a crack at checking the code out from subversion, but that breaks in a different place:

    g++ -DHAVE_CONFIG_H -I. -I Cayuga -I extlib/inc    -g -ansi -Wall -MT OutputStreamType.o -MD -MP -MF .deps/OutputStreamType.Tpo -c -o OutputStreamType.o `test -f 'Cayuga/src/BasicDataStructure/OutputStreamType.cpp' || echo './'`Cayuga/src/BasicDataStructure/OutputStreamType.cpp
    mv -f .deps/OutputStreamType.Tpo .deps/OutputStreamType.Po
    make: *** No rule to make target `extlib/lib/Darwin/libcorelibd.a', needed by `cayugaServer'.  Stop.
    make: ***  Error 1
    make: ***  Error 2

    Lastly, when trying on Ubuntu, I got the following:

    In file included from ../../../Cayuga/src/AutomatonCompiler/PredExprEval/L.hpp:10,
                     from ComplexAtomPredString.cpp:12:
    ../../../extlib/inc/antlr/CharScanner.hpp: In member function ‘bool antlr::CharScannerLiteralsLess::operator()(const std::string&, const std::string&) const’:
    ../../../extlib/inc/antlr/CharScanner.hpp:565: error: ‘strcasecmp’ was not declared in this scope
    make: ***  Error 1
    make: Leaving directory `/home/steve/cayuga-system/Cayuga/src/AutomatonCompiler'
    make: ***  Error 1
    make: Leaving directory `/home/steve/cayuga-system/Cayuga/src'
    make: ***  Error 1
    make: Leaving directory `/home/steve/cayuga-system/Cayuga'
    make: ***  Error 1
    make: Leaving directory `/home/steve/cayuga-system'
    make: ***  Error 2

    Any and all help/guidance very much gratefully received.

    Best Rgds

    Steve

     
  • luoluoxiao

    luoluoxiao - 2011-12-08

    hey,
    i want to ask whether you have solve the problem under Linux ,thank you!
      xiaoleiluo2006@gmail.com

     

Log in to post a comment.

MongoDB Logo MongoDB