[ome-devel] Problem using boost for omero server tests

Ingvar Lagerstedt Ingvar at ebi.ac.uk
Thu Oct 15 14:32:55 BST 2009


Hi,

I am trying to run the omero server tests, but OmeroCpp fail to find my
boost libraries, or at least that what I interpret the error message to
say.  Building omero itself works fine.  On "$OMERO_HOME/build.py
test-unit" I get:
...
test-compile:
Building with ICE_HOME=/opt/Ice-3.3.1
*******************************************************
 WARNING: boost_unit_test_framework-mt not installed
*******************************************************
scons: `test' is up to date.

BUILD FAILED
/Users/ingvar/Software/omero/omero-4.0.3/build.xml:214: The following
error occurred while executing this line:
/Users/ingvar/Software/omero/omero-4.0.3/build.xml:200: The following
error occurred while executing this line:
/Users/ingvar/Software/omero/omero-4.0.3/components/antlib/resources/global.xml:79:
The following error occurred while executing this line:
/Users/ingvar/Software/omero/omero-4.0.3/components/tools/OmeroCpp/build.xml:35:
Execute failed: java.io.IOException: test/unit.exe: not found

Looking in $OMERO_HOME/components/tools/OmeroCpp/config.log gives the
partially helpful:
...
scons: Configure: Checking for boost_unit_test...
scons: Configure: ".sconf_temp/conftest_1.cpp" is up to date.
scons: Configure: The original builder output was:
  |.sconf_temp/conftest_1.cpp <-
  |  |
  |  |#define BOOST_TEST_MAIN
  |  |#define BOOST_TEST_DYN_LINK
  |  |#include <boost/test/included/unit_test.hpp>
  |  |
  |
scons: Configure: ".sconf_temp/conftest_1.o" is up to date.
scons: Configure: The original builder output was:
  |Compiling .sconf_temp/conftest_1.o
  |
scons: Configure: Building ".sconf_temp/conftest_1" failed in a previous
run and
 all its sources are up to date.
scons: Configure: The original builder output was:
  |Linking   .sconf_temp/conftest_1
  |
scons: Configure: (cached) no

Including the compile/link instruction might have helped here.

Environment:
Mac OS X 10.5.8 (darwin kernel 9.8.0)
Omero 4.0.3
Ice 3.3.1
PostgresSQL 8.2
BerkeleyDB 4.8.24
boost 1.39.0 or 1.40.0  (installed in /usr/local)

The warning above indicates that the expected boost library name should be:
libboost_unit_test_framework-mt.[a|dylib]
while boost 1.39.0 provides
libboost_unit_test_framework-xgcc40-mt.[a|dylib]
and boost 1.40.0
libboost_unit_test_framework.[a|dylib]

I started with boost 1.40.0 but when I got the above error and read that
boost had dropped the name decorations on the libraries I downgraded to
1.39.0 to see if that worked better.  None of the provided names match
exactly to the library name that the warning suggests, so I also tried to
provide links from the provided library names to
libboost_unit_test_framework-mt.[a|dylib], but again no change.

The OmeroBuild webpage mentions a keyword VERBOSE used in
$OMERO_HOME/components/blitz/blitz_tools.py (info says build_tools.py) but
that does not give the additional info that I need here.

I can compile and link the testfile (conftest_1.cpp) by hand, e.g.,
gcc  -o boost -lboost_unit_test_framework-xgcc40-mt -lstdc++ conftest_1.cpp
for boost 1.39.0

This could be an environment variable issue, or something completely
different, and most likely I have missed to provide some key info.


Kind Regards,
-- 
Ingvar Lagerstedt, PDBe, EMBL-EBI, Hinxton, UK
Ingvar at ebi.ac.uk



More information about the ome-devel mailing list