avro-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From svante karlsson <s...@csi.se>
Subject Re: Error building/running tests on avro c++
Date Fri, 01 Aug 2014 12:37:36 GMT
I had some issues with the cmakefile when I built avro c++ for windows a
month or two ago. If I remebered correctly it did not find or possibly
figure out the configuration of boost. I ended up doing some small hacks in
the CMakeList.txt file to get it to compile. This was on windows so the
changes are not relevant to you but after that the tests compiles fine.

I think the changes are as follows

...
#windows fix
SET(EXECUTABLE_OUTPUT_PATH  ${CMAKE_SOURCE_DIR}/bin/$(Platform))
SET(LIBRARY_OUTPUT_PATH ${CMAKE_SOURCE_DIR}/lib/$(Platform))

set(Boost_INCLUDE_DIRS ${CMAKE_SOURCE_DIR}/../boost_1_55_0)

#set(Boost_USE_STATIC_LIBS   ON)
#set(Boost_USE_MULTITHREADED ON)
#set(Boost_LIBRARIES boost_filesystem-vc120-mt-1_55
boost_system-vc120-mt-1_55 boost_program_options-vc120-mt-1_55
boost_iostreams-vc120-mt-1_55)
#                    boost_filesystem-vc120-mt-1_55.lib
# boost_filesystem-vc120-mt-1_55

set(BOOST_LIBRARYDIR ${Boost_INCLUDE_DIRS}/lib/$(Platform)/lib)

#add_definitions (-DHAVE_BOOST_ASIO)
link_directories(${BOOST_LIBRARYDIR})

#find_package (Boost 1.55 REQUIRED
#    COMPONENTS filesystem system program_options iostreams)


add_definitions (${Boost_LIB_DIAGNOSTIC_DEFINITIONS})

include_directories (api ${CMAKE_CURRENT_BINARY_DIR} ${Boost_INCLUDE_DIRS})
....


as you can see I removed the find_package and basically pointed it out
myself.

Sooner or later I'll have to fix this on linux as well as that is my final
target but I prefer the visual studio development environment for debugging
purposes.... If you can't figure this out I might give you a hand.

If it is to any help - there is a github repo with cross compilation
directives for among others avro

https://github.com/bitbouncer/csi-build-scripts/blob/master/raspberry_rebuild_ia32.sh

the relevant portion is
...
export BOOST_VERSION=1_55_0
export AVRO_VERSION=1.7.6

cd avro-cpp-$AVRO_VERSION
export BOOST_ROOT=$PWD/../boost_$BOOST_VERSION
export Boost_INCLUDE_DIR=$PWD/../boost_$BOOST_VERSION/boost
export PI_TOOLS_HOME=~/xtools/tools
rm -rf avro
rm -rf build
mkdir build
cd build
cmake -DCMAKE_TOOLCHAIN_FILE=../csi-build-scripts/toolchains/raspberry.ia32.cmake
..
make -j4
cd ..
mkdir avro
cp -r api/*.* avro
cd ..

skip the pi tools part and give it a try.


There are a lot of other missing features on avro c++ that's on my
todolist.

/svante



2014-07-31 22:40 GMT+02:00 jeff saremi <jeffsaremi@hotmail.com>:

> Does anyone know what the problem might be? appreciated it:
>
>
> [ 97%] Building CXX object CMakeFiles/buffertest.dir/test/buffertest.cc.o
> In file included from /temp/boost/boost/thread/detail/platform.hpp:17,
>                  from /temp/boost/boost/thread/thread_only.hpp:12,
>                  from /temp/boost/boost/thread/thread.hpp:12,
>                  from /temp/boost/boost/thread.hpp:13,
>                  from /temp/avro/test/buffertest.cc:21:
> /temp/boost/boost/config/requires_threads.hpp:47:5: error: #error
> "Compiler threading support is not turned on. Please set the correct
> command line options for threading: -pthread (Linux), -pthreads (Solaris)
> or -mthreads (Mingw32)"
>
> and 100's of similar messages follow.
> or error like:
>
> /temp/boost/boost/thread/detail/thread.hpp:93: error: expected class-name
> before '{' token
> /temp/boost/boost/thread/detail/thread.hpp:127: error: expected class-name
> before '{' token
> /temp/boost/boost/thread/detail/thread.hpp:144: error: expected class-name
> before '{' token
> /temp/boost/boost/thread/detail/thread.hpp:163: error: 'thread_attributes'
> does not name a type
> /temp/boost/boost/thread/detail/thread.hpp:172: error: 'thread_data_ptr'
> in namespace 'boost::detail' does not name a type
> /temp/boost/boost/thread/detail/thread.hpp:176: error: expected ',' or
> '...' before '&' token
> /temp/boost/boost/thread/detail/thread.hpp:176: error: ISO C++ forbids
> declaration of 'attributes' with no type
> /temp/boost/boost/thread/detail/thread.hpp:185: error: expected ',' or
> '...' before '&' token
> /temp/boost/boost/thread/detail/thread.hpp:185: error: ISO C++ forbids
> declaration of 'attributes' with no
>

Mime
View raw message