Building SciDb from source


I am struggling to build SciDb from sources. This is what I have done:


  • download SciDb sources ( v. 14.12 ) from official source ( viewtopic.php?f=16&t=364 )

  • execute ./ setup in scidbtrunk directory:

  • unable to find boost, even though it is installed: CMakeLists.txt sets BOOST_ROOT and Boost_NO_SYSTEM_PATHS to hardcoded values (lines 253-255), regardless of values comming from outside. Is this intentional? Is there some reason I have to provide boost installation at hardcoded path, while the standard installation from boost package is being ignored? I solved this issue by commenting out aforementioned three lines, should I expect some trouble later down the way because of this?

  • missing libraries: These are just normal dependencies, which need to be satisfied. At least these packages are required to be installed on debian system: libprotobuf-dev protobuf-compiler liblog4cxx-dev libpqxx-dev libreadline-dev

  • unable to find java: Similar to boost, there is hardcoded set of paths, where cmake should look for java binaries ( /usr/lib/jvm/java-1.6.0-openjdk-amd64/bin, /usr/lib/jvm/java-1.6.0-openjdk.x86_64/bin ), none of which is compatible with my standard debian system ( /usr/bin ). Solution is to modify cmake/Modules/FindJava6.cmake and add the correct path into _JAVA_PATHS variable set on line 3. I suppose this should be harmless modification.

  • execute ./ make

  • src/util/arena/DebugArena.cpp:68:21: warning: large integer implicitly truncated to unsigned type [-Woverflow]

  • src/util/arena/DebugArena.cpp:76:1: error: invalid application of ‘sizeof’ to incomplete type ‘boost::STATIC_ASSERTION_FAILURE’

  • include/query/Operator.h:1524:59: error: no matching function for call to ‘max(std::vector::size_type, long unsigned int)’

Make-problems have to do with the fact, I am running 32-bit system (the 64-bit system is being set up, but I am still waiting for some spare parts, so I wanted to give it at least a try on my existing 32-bit one), therefore they should probably be disregarded at least for now. Nevertheless, I do not think that any of setup-problems I have encountered has to do with 32vs64-bit, do they?

System: debian jessie, gcc (Debian 4.9.1-19) 4.9.1, cmake version 3.0.2


Our build is hardcoded to get the boost libraries from /opt/scidb//3rdparty/boost because we require a particular version of boost with particular patches. It is only available in a 64 bit version.

and the rest also assumes 64 bit architecture.

In short you can not build SciDB on a 32 bit machine.