Ask Your Question

Revision history [back]

click to hide/show revision 1
initial version

I got the same error as the author. Here is the error log.

--------------------------------
Checking for extra build options
--------------------------------


Options:
inline_asm assembler v4l2buffer posix_rt videodisplay tr1_shared_ptr pthread png jpeg tiff glob memalign

Missing options for linux-gnu:
dc1394v1 dc1394v2 ffmpeg lapack toon v4l1buffer

Dodgy things:




SIMD support:
mmx mmxext sse sse2 sse3

Missing SIMD support for x86_64-unknown-linux-gnu:


-g -Wall -Wextra -pipe -ggdb -fPIC -mmmx -msse -msse -msse2 -msse3 -pthread
-ltiff -ljpeg -lpng -lpng -lGLU -lGL -lrt -L -lX11 -lXext -pthread
Generating config... configuration unchanged
configure: creating ./config.status
config.status: creating Makefile
cd build && export CPATH=../../TooN/include && make
make[3]: Entering directory `/home/rpserver/ros/rosbuild/stacks/tum_ardrone/thirdparty/libcvd/build'
g++ -O3 -I. -I.  -INONE/include -g  -Wall -Wextra -pipe -ggdb -fPIC -mmmx -msse -msse -msse2 -msse3 -pthread -c progs/video_play_source.cc -o progs/video_play_source.o
progs/video_play_source.cc: In function ‘void play(std::string)’:
progs/video_play_source.cc:200:17: error: there are no arguments to ‘usleep’ that depend on a template parameter, so a declaration of ‘usleep’ must be available [-fpermissive]
progs/video_play_source.cc:200:17: note: (if you use ‘-fpermissive’, G++ will accept your code, but allowing the use of an undeclared name is deprecated)
progs/video_play_source.cc: In instantiation of ‘void play(std::string) [with C = CVD::Rgb<unsigned char>; std::string = std::basic_string<char>]’:
progs/video_play_source.cc:241:30:   required from here
progs/video_play_source.cc:200:4: error: ‘usleep’ was not declared in this scope
In file included from ./cvd/internal/convert_pixel_types.h:27:0,
                 from ./cvd/image_convert.h:25,
                 from ./cvd/colourspacebuffer.h:27,
                 from ./cvd/videosource.h:13,
                 from progs/video_play_source.cc:38:
./cvd/internal/scalar_convert.h: At global scope:
./cvd/internal/scalar_convert.h:112:21: warning: ‘CVD::Pixel::Internal::init_float_for_byte’ defined but not used [-Wunused-variable]
./cvd/internal/scalar_convert.h:113:21: warning: ‘CVD::Pixel::Internal::init_double_for_byte’ defined but not used [-Wunused-variable]
make[3]: *** [progs/video_play_source.o] Error 1
make[3]: Leaving directory `/home/rpserver/ros/rosbuild/stacks/tum_ardrone/thirdparty/libcvd/build'
make[2]: *** [libcvd_built] Error 2
make[2]: Leaving directory `/home/rpserver/ros/rosbuild/stacks/tum_ardrone/thirdparty/libcvd'
make[1]: *** [all] Error 2
make[1]: Leaving directory `/home/rpserver/ros/rosbuild/stacks/tum_ardrone/thirdparty'
make: *** [all] Error 2

I got the same error as the author. Here The solution to your problem is the error log.to add

--------------------------------
Checking for extra build options
--------------------------------


Options:
inline_asm assembler v4l2buffer posix_rt videodisplay tr1_shared_ptr pthread png jpeg tiff glob memalign

Missing options for linux-gnu:
dc1394v1 dc1394v2 ffmpeg lapack toon v4l1buffer

Dodgy things:




SIMD support:
mmx mmxext sse sse2 sse3

Missing SIMD support for x86_64-unknown-linux-gnu:


-g -Wall -Wextra -pipe -ggdb -fPIC -mmmx -msse -msse -msse2 -msse3 -pthread
-ltiff -ljpeg -lpng -lpng -lGLU -lGL -lrt -L -lX11 -lXext -pthread
Generating config... configuration unchanged
configure: creating ./config.status
config.status: creating Makefile
cd build && export CPATH=../../TooN/include && make
make[3]: Entering directory `/home/rpserver/ros/rosbuild/stacks/tum_ardrone/thirdparty/libcvd/build'
g++ -O3 -I. -I.  -INONE/include -g  -Wall -Wextra -pipe -ggdb -fPIC -mmmx -msse -msse -msse2 -msse3 -pthread -c progs/video_play_source.cc -o progs/video_play_source.o
progs/video_play_source.cc: In function ‘void play(std::string)’:
progs/video_play_source.cc:200:17: error: there are no arguments to ‘usleep’ that depend on a template parameter, so a declaration of ‘usleep’ must be available [-fpermissive]
progs/video_play_source.cc:200:17: note: (if you use ‘-fpermissive’, G++ will accept your code, but allowing the use of an undeclared name is deprecated)
progs/video_play_source.cc: In instantiation of ‘void play(std::string) [with C = CVD::Rgb<unsigned char>; std::string = std::basic_string<char>]’:
progs/video_play_source.cc:241:30:   required from here
progs/video_play_source.cc:200:4: error: ‘usleep’ was not declared in this scope
In file included from ./cvd/internal/convert_pixel_types.h:27:0,
                 from ./cvd/image_convert.h:25,
                 from ./cvd/colourspacebuffer.h:27,
                 from ./cvd/videosource.h:13,
                 from progs/video_play_source.cc:38:
./cvd/internal/scalar_convert.h: At global scope:
./cvd/internal/scalar_convert.h:112:21: warning: ‘CVD::Pixel::Internal::init_float_for_byte’ defined but not used [-Wunused-variable]
./cvd/internal/scalar_convert.h:113:21: warning: ‘CVD::Pixel::Internal::init_double_for_byte’ defined but not used [-Wunused-variable]
make[3]: *** [progs/video_play_source.o] Error 1
make[3]: Leaving directory `/home/rpserver/ros/rosbuild/stacks/tum_ardrone/thirdparty/libcvd/build'
make[2]: *** [libcvd_built] Error 2
make[2]: Leaving directory `/home/rpserver/ros/rosbuild/stacks/tum_ardrone/thirdparty/libcvd'
make[1]: *** [all] Error 2
make[1]: Leaving directory `/home/rpserver/ros/rosbuild/stacks/tum_ardrone/thirdparty'
make: *** [all] Error 2
#include <unistd.h>

to /tum_ardrone/thirdparty/libcvd/build/progs/video_play_source.cc

This compilation issue is use to be a warning, nowadays compiler become more strict, so it is an error now.

The solution to your problem is to add

#include <unistd.h>

to /tum_ardrone/thirdparty/libcvd/build/progs/video_play_source.cc

/tum_ardrone/thirdparty/libcvd/build/progs/video_play_source.cc

This compilation issue is use to be a warning, nowadays compiler become more strict, so it is an error now.

The solution to your problem is to add

#include <unistd.h>

to

/tum_ardrone/thirdparty/libcvd/build/progs/video_play_source.cc

This compilation issue is use used to be a warning, nowadays compiler compilers become more strict, so it is an error now.

The solution to your problem is to add

#include <unistd.h>
<unistd.h> // it defines usleep()

to

/tum_ardrone/thirdparty/libcvd/build/progs/video_play_source.cc

This compilation issue is used to be a warning, nowadays compilers become more strict, so it is an error now.

The error log is this

SIMD support: mmx mmxext sse sse2 sse3

Missing SIMD support for x86_64-unknown-linux-gnu:

-g -Wall -Wextra -pipe -ggdb -fPIC -mmmx -msse -msse -msse2 -msse3 -pthread -ltiff -ljpeg -lpng -lpng -lGLU -lGL -lrt -L -lX11 -lXext -pthread Generating config... configuration unchanged configure: creating ./config.status config.status: creating Makefile cd build && export CPATH=../../TooN/include && make make[3]: Entering directory /home/rpserver/ros/rosbuild/stacks/tum_ardrone/thirdparty/libcvd/build' g++ -O3 -I. -I. -INONE/include -g -Wall -Wextra -pipe -ggdb -fPIC -mmmx -msse -msse -msse2 -msse3 -pthread -c progs/video_play_source.cc -o progs/video_play_source.o progs/video_play_source.cc: In function ‘void play(std::string)’: progs/video_play_source.cc:200:17: error: there are no arguments to ‘usleep’ that depend on a template parameter, so a declaration of ‘usleep’ must be available [-fpermissive] progs/video_play_source.cc:200:17: note: (if you use ‘-fpermissive’, G++ will accept your code, but allowing the use of an undeclared name is deprecated) progs/video_play_source.cc: In instantiation of ‘void play(std::string) [with C = CVD::Rgb<unsigned char>; std::string = std::basic_string<char>]’: progs/video_play_source.cc:241:30: required from here progs/video_play_source.cc:200:4: error: ‘usleep’ was not declared in this scope In file included from ./cvd/internal/convert_pixel_types.h:27:0, from ./cvd/image_convert.h:25, from ./cvd/colourspacebuffer.h:27, from ./cvd/videosource.h:13, from progs/video_play_source.cc:38: ./cvd/internal/scalar_convert.h: At global scope: ./cvd/internal/scalar_convert.h:112:21: warning: ‘CVD::Pixel::Internal::init_float_for_byte’ defined but not used [-Wunused-variable] ./cvd/internal/scalar_convert.h:113:21: warning: ‘CVD::Pixel::Internal::init_double_for_byte’ defined but not used [-Wunused-variable] make[3]: *** [progs/video_play_source.o] Error 1 make[3]: Leaving directory/home/rpserver/ros/rosbuild/stacks/tum_ardrone/thirdparty/libcvd/build' make[2]: * [libcvd_built] Error 2 make[2]: Leaving directory /home/rpserver/ros/rosbuild/stacks/tum_ardrone/thirdparty/libcvd' make[1]: *** [all] Error 2 make[1]: Leaving directory/home/rpserver/ros/rosbuild/stacks/tum_ardrone/thirdparty' make: * [all] Error 2

The solution to your problem is to add

#include <unistd.h> // it defines usleep()

to

/tum_ardrone/thirdparty/libcvd/build/progs/video_play_source.cc

This compilation issue is used to be a warning, nowadays compilers become more strict, so it is an error now.

The error log is this

SIMD support: mmx mmxext sse sse2 sse3

Missing SIMD support for x86_64-unknown-linux-gnu:

-g -Wall -Wextra -pipe -ggdb -fPIC -mmmx -msse -msse -msse2 -msse3 -pthread -ltiff -ljpeg -lpng -lpng -lGLU -lGL -lrt -L -lX11 -lXext -pthread Generating config... configuration unchanged configure: creating ./config.status config.status: creating Makefile cd build && export CPATH=../../TooN/include && make make[3]: Entering directory /home/rpserver/ros/rosbuild/stacks/tum_ardrone/thirdparty/libcvd/build' g++ -O3 -I. -I. -INONE/include -g -Wall -Wextra -pipe -ggdb -fPIC -mmmx -msse -msse -msse2 -msse3 -pthread -c progs/video_play_source.cc -o progs/video_play_source.o progs/video_play_source.cc: In function ‘void play(std::string)’: progs/video_play_source.cc:200:17: error: there are no arguments to ‘usleep’ that depend on a template parameter, so a declaration of ‘usleep’ must be available [-fpermissive] progs/video_play_source.cc:200:17: note: (if you use ‘-fpermissive’, G++ will accept your code, but allowing the use of an undeclared name is deprecated) progs/video_play_source.cc: In instantiation of ‘void play(std::string) [with C = CVD::Rgb<unsigned char>; std::string = std::basic_string<char>]’: progs/video_play_source.cc:241:30: required from here progs/video_play_source.cc:200:4: error: ‘usleep’ was not declared in this scope In file included from ./cvd/internal/convert_pixel_types.h:27:0, from ./cvd/image_convert.h:25, from ./cvd/colourspacebuffer.h:27, from ./cvd/videosource.h:13, from progs/video_play_source.cc:38: ./cvd/internal/scalar_convert.h: At global scope: ./cvd/internal/scalar_convert.h:112:21: warning: ‘CVD::Pixel::Internal::init_float_for_byte’ defined but not used [-Wunused-variable] ./cvd/internal/scalar_convert.h:113:21: warning: ‘CVD::Pixel::Internal::init_double_for_byte’ defined but not used [-Wunused-variable] make[3]: *** [progs/video_play_source.o] Error 1 make[3]: Leaving directory/home/rpserver/ros/rosbuild/stacks/tum_ardrone/thirdparty/libcvd/build' make[2]: * [libcvd_built] Error 2 make[2]: Leaving directory /home/rpserver/ros/rosbuild/stacks/tum_ardrone/thirdparty/libcvd' make[1]: *** [all] Error 2 make[1]: Leaving directory/home/rpserver/ros/rosbuild/stacks/tum_ardrone/thirdparty' make: * [all] Error 2

The solution is to add

#include <unistd.h> // it defines usleep()

to

/tum_ardrone/thirdparty/libcvd/build/progs/video_play_source.cc

This compilation issue is used to be a warning, nowadays compilers become more strict, so it is an error now.

*EDIT Not really a general solution, there are many other errors occurred after.

The error log is this

SIMD support: mmx mmxext sse sse2 sse3

Missing SIMD support for x86_64-unknown-linux-gnu:

-g -Wall -Wextra -pipe -ggdb -fPIC -mmmx -msse -msse -msse2 -msse3 -pthread -ltiff -ljpeg -lpng -lpng -lGLU -lGL -lrt -L -lX11 -lXext -pthread Generating config... configuration unchanged configure: creating ./config.status config.status: creating Makefile cd build && export CPATH=../../TooN/include && make make[3]: Entering directory /home/rpserver/ros/rosbuild/stacks/tum_ardrone/thirdparty/libcvd/build' g++ -O3 -I. -I. -INONE/include -g -Wall -Wextra -pipe -ggdb -fPIC -mmmx -msse -msse -msse2 -msse3 -pthread -c progs/video_play_source.cc -o progs/video_play_source.o progs/video_play_source.cc: In function ‘void play(std::string)’: progs/video_play_source.cc:200:17: error: there are no arguments to ‘usleep’ that depend on a template parameter, so a declaration of ‘usleep’ must be available [-fpermissive] progs/video_play_source.cc:200:17: note: (if you use ‘-fpermissive’, G++ will accept your code, but allowing the use of an undeclared name is deprecated) progs/video_play_source.cc: In instantiation of ‘void play(std::string) [with C = CVD::Rgb<unsigned char>; std::string = std::basic_string<char>]’: progs/video_play_source.cc:241:30: required from here progs/video_play_source.cc:200:4: error: ‘usleep’ was not declared in this scope In file included from ./cvd/internal/convert_pixel_types.h:27:0, from ./cvd/image_convert.h:25, from ./cvd/colourspacebuffer.h:27, from ./cvd/videosource.h:13, from progs/video_play_source.cc:38: ./cvd/internal/scalar_convert.h: At global scope: ./cvd/internal/scalar_convert.h:112:21: warning: ‘CVD::Pixel::Internal::init_float_for_byte’ defined but not used [-Wunused-variable] ./cvd/internal/scalar_convert.h:113:21: warning: ‘CVD::Pixel::Internal::init_double_for_byte’ defined but not used [-Wunused-variable] make[3]: *** [progs/video_play_source.o] Error 1 make[3]: Leaving directory/home/rpserver/ros/rosbuild/stacks/tum_ardrone/thirdparty/libcvd/build' make[2]: * [libcvd_built] Error 2 make[2]: Leaving directory /home/rpserver/ros/rosbuild/stacks/tum_ardrone/thirdparty/libcvd' make[1]: *** [all] Error 2 make[1]: Leaving directory/home/rpserver/ros/rosbuild/stacks/tum_ardrone/thirdparty' make: * [all] Error 2

The solution is to add

#include <unistd.h> // it defines usleep()

to

/tum_ardrone/thirdparty/libcvd/build/progs/video_play_source.cc
/tum_ardrone/thirdparty/libcvd/installfiles/progs/video_play_source.cc

This compilation issue is used to be a warning, nowadays compilers become more strict, so it is an error now.

*EDIT Not really a general solution, there are many other errors occurred after.

                   from /home/rpserver/ros/rosbuild/stacks/tum_ardrone/src/autopilot/KI/../DroneController.h:27,
                   from /home/rpserver/ros/rosbuild/stacks/tum_ardrone/src/autopilot/KI/KIProcedure.h:26,
                   from /home/rpserver/ros/rosbuild/stacks/tum_ardrone/src/autopilot/KI/KIFlyTo.h:25,
                   from /home/rpserver/ros/rosbuild/stacks/tum_ardrone/src/autopilot/KI/KIFlyTo.cpp:21:
  /home/rpserver/ros/rosbuild/stacks/tum_ardrone/thirdparty/TooN/include/TooN/internal/debug.hh:100:33: note: ‘template<class P> void TooN::Internal::debug_initialize(P*, int)’ declared here, later in the translation unit
  Linking CXX executable ../bin/drone_gui
  In file included from /home/rpserver/ros/rosbuild/stacks/tum_ardrone/thirdparty/TooN/include/TooN/TooN.h:250:0,
                   from /home/rpserver/ros/rosbuild/stacks/tum_ardrone/thirdparty/TooN/include/TooN/so3.h:33,
                   from /home/rpserver/ros/rosbuild/stacks/tum_ardrone/thirdparty/TooN/include/TooN/se3.h:33,
                   from /home/rpserver/ros/rosbuild/stacks/tum_ardrone/src/autopilot/KI/../DroneController.h:27,
                   from /home/rpserver/ros/rosbuild/stacks/tum_ardrone/src/autopilot/KI/KIProcedure.h:26,
                   from /home/rpserver/ros/rosbuild/stacks/tum_ardrone/src/autopilot/KI/KIFlyTo.h:25,
                   from /home/rpserver/ros/rosbuild/stacks/tum_ardrone/src/autopilot/KI/KIFlyTo.cpp:21:
  /home/rpserver/ros/rosbuild/stacks/tum_ardrone/thirdparty/TooN/include/TooN/internal/allocator.hh: In instantiation of ‘TooN::Internal::StackOrHeap<Size, Precision, false>::StackOrHeap() [with int Size = 3; Precision = int]’:
  /home/rpserver/ros/rosbuild/stacks/tum_ardrone/thirdparty/TooN/include/TooN/internal/allocator.hh:105:43:   required from ‘TooN::Internal::VectorAlloc<Size, Precision>::VectorAlloc() [with int Size = 3; Precision = int]’
  /home/rpserver/ros/rosbuild/stacks/tum_ardrone/thirdparty/TooN/include/TooN/internal/vbase.hh:96:16:   required from ‘TooN::Internal::GenericVBase<Size, Precision, Stride, Mem>::GenericVBase() [with int Size = 3; Precision = int; int Stride = 1; Mem = TooN::Internal::VectorAlloc<3, int>]’
  /home/rpserver/ros/rosbuild/stacks/tum_ardrone/thirdparty/TooN/include/TooN/internal/vbase.hh:72:12:   required from ‘TooN::Internal::VBase::VLayout<Size, Precision>::VLayout() [with int Size = 3; Precision = int]’
  /home/rpserver/ros/rosbuild/stacks/tum_ardrone/thirdparty/TooN/include/TooN/internal/vector.hh:143:17:   required from ‘TooN::Vector<Size, Precision, Base>::Vector() [with int Size = 3; Precision = int; Base = TooN::Internal::VBase]’
  /home/rpserver/ros/rosbuild/stacks/tum_ardrone/thirdparty/TooN/include/TooN/internal/make_vector.hh:34:24:   required from ‘TooN::Vector<3, Precision> TooN::makeVector(const Precision&, const Precision&, const Precision&) [with Precision = int]’
  /home/rpserver/ros/rosbuild/stacks/tum_ardrone/src/autopilot/KI/../DroneController.h:55:59:   required from here
  /home/rpserver/ros/rosbuild/stacks/tum_ardrone/thirdparty/TooN/include/TooN/internal/allocator.hh:58:3: warning: ‘debug_initialize’ was not declared in this scope, and no declarations were found by argument-dependent lookup at the point of instantiation [-fpermissive]
  In file included from /home/rpserver/ros/rosbuild/stacks/tum_ardrone/thirdparty/TooN/include/TooN/TooN.h:255:0,
                   from /home/rpserver/ros/rosbuild/stacks/tum_ardrone/thirdparty/TooN/include/TooN/so3.h:33,
                   from /home/rpserver/ros/rosbuild/stacks/tum_ardrone/thirdparty/TooN/include/TooN/se3.h:33,
                   from /home/rpserver/ros/rosbuild/stacks/tum_ardrone/src/autopilot/KI/../DroneController.h:27,
                   from /home/rpserver/ros/rosbuild/stacks/tum_ardrone/src/autopilot/KI/KIProcedure.h:26,
                   from /home/rpserver/ros/rosbuild/stacks/tum_ardrone/src/autopilot/KI/KIFlyTo.h:25,
                   from /home/rpserver/ros/rosbuild/stacks/tum_ardrone/src/autopilot/KI/KIFlyTo.cpp:21:
  /home/rpserver/ros/rosbuild/stacks/tum_ardrone/thirdparty/TooN/include/TooN/internal/debug.hh:100:33: note: ‘template<class P> void TooN::Internal::debug_initialize(P*, int)’ declared here, later in the translation unit
  make[4]: Leaving directory `/home/rpserver/ros/rosbuild/stacks/tum_ardrone/build'
  [ 55%] Built target drone_gui
  Linking CXX executable ../bin/drone_autopilot
  make[4]: Leaving directory `/home/rpserver/ros/rosbuild/stacks/tum_ardrone/build'
  [ 55%] Built target drone_autopilot
  make[3]: Leaving directory `/home/rpserver/ros/rosbuild/stacks/tum_ardrone/build'
  make[2]: *** [all] Error 2
  make[2]: Leaving directory `/home/rpserver/ros/rosbuild/stacks/tum_ardrone/build'
  make[1]: *** [all] Error 2
  make[1]: Leaving directory `/home/rpserver/ros/rosbuild/stacks/tum_ardrone'

The error log is this

SIMD support: mmx mmxext sse sse2 sse3

Missing SIMD support for x86_64-unknown-linux-gnu:

-g -Wall -Wextra -pipe -ggdb -fPIC -mmmx -msse -msse -msse2 -msse3 -pthread -ltiff -ljpeg -lpng -lpng -lGLU -lGL -lrt -L -lX11 -lXext -pthread Generating config... configuration unchanged configure: creating ./config.status config.status: creating Makefile cd build && export CPATH=../../TooN/include && make make[3]: Entering directory /home/rpserver/ros/rosbuild/stacks/tum_ardrone/thirdparty/libcvd/build' g++ -O3 -I. -I. -INONE/include -g -Wall -Wextra -pipe -ggdb -fPIC -mmmx -msse -msse -msse2 -msse3 -pthread -c progs/video_play_source.cc -o progs/video_play_source.o progs/video_play_source.cc: In function ‘void play(std::string)’: progs/video_play_source.cc:200:17: error: there are no arguments to ‘usleep’ that depend on a template parameter, so a declaration of ‘usleep’ must be available [-fpermissive] progs/video_play_source.cc:200:17: note: (if you use ‘-fpermissive’, G++ will accept your code, but allowing the use of an undeclared name is deprecated) progs/video_play_source.cc: In instantiation of ‘void play(std::string) [with C = CVD::Rgb<unsigned char>; std::string = std::basic_string<char>]’: progs/video_play_source.cc:241:30: required from here progs/video_play_source.cc:200:4: error: ‘usleep’ was not declared in this scope In file included from ./cvd/internal/convert_pixel_types.h:27:0, from ./cvd/image_convert.h:25, from ./cvd/colourspacebuffer.h:27, from ./cvd/videosource.h:13, from progs/video_play_source.cc:38: ./cvd/internal/scalar_convert.h: At global scope: ./cvd/internal/scalar_convert.h:112:21: warning: ‘CVD::Pixel::Internal::init_float_for_byte’ defined but not used [-Wunused-variable] ./cvd/internal/scalar_convert.h:113:21: warning: ‘CVD::Pixel::Internal::init_double_for_byte’ defined but not used [-Wunused-variable] make[3]: *** [progs/video_play_source.o] Error 1 make[3]: Leaving directory/home/rpserver/ros/rosbuild/stacks/tum_ardrone/thirdparty/libcvd/build' make[2]: * [libcvd_built] Error 2 make[2]: Leaving directory /home/rpserver/ros/rosbuild/stacks/tum_ardrone/thirdparty/libcvd' make[1]: *** [all] Error 2 make[1]: Leaving directory/home/rpserver/ros/rosbuild/stacks/tum_ardrone/thirdparty' make: * [all] Error 2

The solution is to add

#include <unistd.h> // it defines usleep()

to

/tum_ardrone/thirdparty/libcvd/build/progs/video_play_source.cc
/tum_ardrone/thirdparty/libcvd/installfiles/progs/video_play_source.cc

This compilation issue is used to be a warning, nowadays compilers become more strict, so it is an error now.

*EDIT Not really a general solution, there are many other errors occurred after.

                   from /home/rpserver/ros/rosbuild/stacks/tum_ardrone/src/autopilot/KI/../DroneController.h:27,
                   from /home/rpserver/ros/rosbuild/stacks/tum_ardrone/src/autopilot/KI/KIProcedure.h:26,
                   from /home/rpserver/ros/rosbuild/stacks/tum_ardrone/src/autopilot/KI/KIFlyTo.h:25,
                   from /home/rpserver/ros/rosbuild/stacks/tum_ardrone/src/autopilot/KI/KIFlyTo.cpp:21:
  /home/rpserver/ros/rosbuild/stacks/tum_ardrone/thirdparty/TooN/include/TooN/internal/debug.hh:100:33: note: ‘template<class P> void TooN::Internal::debug_initialize(P*, int)’ declared here, later in the translation unit
  Linking CXX executable ../bin/drone_gui
  In file included from /home/rpserver/ros/rosbuild/stacks/tum_ardrone/thirdparty/TooN/include/TooN/TooN.h:250:0,
                   from /home/rpserver/ros/rosbuild/stacks/tum_ardrone/thirdparty/TooN/include/TooN/so3.h:33,
                   from /home/rpserver/ros/rosbuild/stacks/tum_ardrone/thirdparty/TooN/include/TooN/se3.h:33,
                   from /home/rpserver/ros/rosbuild/stacks/tum_ardrone/src/autopilot/KI/../DroneController.h:27,
                   from /home/rpserver/ros/rosbuild/stacks/tum_ardrone/src/autopilot/KI/KIProcedure.h:26,
                   from /home/rpserver/ros/rosbuild/stacks/tum_ardrone/src/autopilot/KI/KIFlyTo.h:25,
                   from /home/rpserver/ros/rosbuild/stacks/tum_ardrone/src/autopilot/KI/KIFlyTo.cpp:21:
  /home/rpserver/ros/rosbuild/stacks/tum_ardrone/thirdparty/TooN/include/TooN/internal/allocator.hh: In instantiation of ‘TooN::Internal::StackOrHeap<Size, Precision, false>::StackOrHeap() [with int Size = 3; Precision = int]’:
  /home/rpserver/ros/rosbuild/stacks/tum_ardrone/thirdparty/TooN/include/TooN/internal/allocator.hh:105:43:   required from ‘TooN::Internal::VectorAlloc<Size, Precision>::VectorAlloc() [with int Size = 3; Precision = int]’
  /home/rpserver/ros/rosbuild/stacks/tum_ardrone/thirdparty/TooN/include/TooN/internal/vbase.hh:96:16:   required from ‘TooN::Internal::GenericVBase<Size, Precision, Stride, Mem>::GenericVBase() [with int Size = 3; Precision = int; int Stride = 1; Mem = TooN::Internal::VectorAlloc<3, int>]’
  /home/rpserver/ros/rosbuild/stacks/tum_ardrone/thirdparty/TooN/include/TooN/internal/vbase.hh:72:12:   required from ‘TooN::Internal::VBase::VLayout<Size, Precision>::VLayout() [with int Size = 3; Precision = int]’
  /home/rpserver/ros/rosbuild/stacks/tum_ardrone/thirdparty/TooN/include/TooN/internal/vector.hh:143:17:   required from ‘TooN::Vector<Size, Precision, Base>::Vector() [with int Size = 3; Precision = int; Base = TooN::Internal::VBase]’
  /home/rpserver/ros/rosbuild/stacks/tum_ardrone/thirdparty/TooN/include/TooN/internal/make_vector.hh:34:24:   required from ‘TooN::Vector<3, Precision> TooN::makeVector(const Precision&, const Precision&, const Precision&) [with Precision = int]’
  /home/rpserver/ros/rosbuild/stacks/tum_ardrone/src/autopilot/KI/../DroneController.h:55:59:   required from here
  /home/rpserver/ros/rosbuild/stacks/tum_ardrone/thirdparty/TooN/include/TooN/internal/allocator.hh:58:3: warning: ‘debug_initialize’ was not declared in this scope, and no declarations were found by argument-dependent lookup at the point of instantiation [-fpermissive]
  In file included from /home/rpserver/ros/rosbuild/stacks/tum_ardrone/thirdparty/TooN/include/TooN/TooN.h:255:0,
                   from /home/rpserver/ros/rosbuild/stacks/tum_ardrone/thirdparty/TooN/include/TooN/so3.h:33,
                   from /home/rpserver/ros/rosbuild/stacks/tum_ardrone/thirdparty/TooN/include/TooN/se3.h:33,
                   from /home/rpserver/ros/rosbuild/stacks/tum_ardrone/src/autopilot/KI/../DroneController.h:27,
                   from /home/rpserver/ros/rosbuild/stacks/tum_ardrone/src/autopilot/KI/KIProcedure.h:26,
                   from /home/rpserver/ros/rosbuild/stacks/tum_ardrone/src/autopilot/KI/KIFlyTo.h:25,
                   from /home/rpserver/ros/rosbuild/stacks/tum_ardrone/src/autopilot/KI/KIFlyTo.cpp:21:
  /home/rpserver/ros/rosbuild/stacks/tum_ardrone/thirdparty/TooN/include/TooN/internal/debug.hh:100:33: note: ‘template<class P> void TooN::Internal::debug_initialize(P*, int)’ declared here, later in the translation unit
  make[4]: Leaving directory `/home/rpserver/ros/rosbuild/stacks/tum_ardrone/build'
  [ 55%] Built target drone_gui
  Linking CXX executable ../bin/drone_autopilot
  make[4]: Leaving directory `/home/rpserver/ros/rosbuild/stacks/tum_ardrone/build'
  [ 55%] Built target drone_autopilot
  make[3]: Leaving directory `/home/rpserver/ros/rosbuild/stacks/tum_ardrone/build'
  make[2]: *** [all] Error 2
  make[2]: Leaving directory `/home/rpserver/ros/rosbuild/stacks/tum_ardrone/build'
  make[1]: *** [all] Error 2
  make[1]: Leaving directory `/home/rpserver/ros/rosbuild/stacks/tum_ardrone'
  • Edit To solve above problem do the following
  • In tum_ardrone/thirdparty/TooN/internal/allocator.hh, add at the begining,

    include “debug.hh”

  1. In tum_ardrone/thirdparty/TooN/internal/debug.hh, add at the beginning,

    ifndef DEBUG_HH

    define DEBUG_HH

add at the end,

#endif

this solution taken form here.

However further compilation generated the following errors from /home/rpserver/ros/rosbuild/stacks/tum_ardrone/src/stateestimation/PTAM/Map.h:18, from /home/rpserver/ros/rosbuild/stacks/tum_ardrone/src/stateestimation/PTAM/MapMaker.h:20, from /home/rpserver/ros/rosbuild/stacks/tum_ardrone/src/stateestimation/PTAM/MapMaker.cc:2: /home/rpserver/ros/rosbuild/stacks/tum_ardrone/thirdparty/TooN/include/TooN/internal/operators.hh:77:84: warning: ‘v3BestMean.TooN::Internal::VectorAlloc<3, double>::<anonymous>.TooN::Internal::StaticSizedAllocator<3, double>::<anonymous>.TooN::Internal::StackOrHeap<3, double, false>::my_data[2ul]’ may be used uninitialized in this function [-Wmaybe-uninitialized] /home/rpserver/ros/rosbuild/stacks/tum_ardrone/src/stateestimation/PTAM/MapMaker.cc:1110:13: note: ‘v3BestMean.TooN::Internal::VectorAlloc<3, double>::<anonymous>.TooN::Internal::StaticSizedAllocator<3, double>::<anonymous>.TooN::Internal::StackOrHeap<3, double, false>::my_data[2ul]’ was declared here In file included from /home/rpserver/ros/rosbuild/stacks/tum_ardrone/thirdparty/TooN/include/TooN/TooN.h:267:0, from /home/rpserver/ros/rosbuild/stacks/tum_ardrone/thirdparty/TooN/include/TooN/so3.h:33, from /home/rpserver/ros/rosbuild/stacks/tum_ardrone/thirdparty/TooN/include/TooN/se3.h:33, from /home/rpserver/ros/rosbuild/stacks/tum_ardrone/src/stateestimation/PTAM/Map.h:18, from /home/rpserver/ros/rosbuild/stacks/tum_ardrone/src/stateestimation/PTAM/MapMaker.h:20, from /home/rpserver/ros/rosbuild/stacks/tum_ardrone/src/stateestimation/PTAM/MapMaker.cc:2: /home/rpserver/ros/rosbuild/stacks/tum_ardrone/thirdparty/TooN/include/TooN/internal/operators.hh:77:84: warning: ‘v3BestMean.TooN::Internal::VectorAlloc<3, double>::<anonymous>.TooN::Internal::StaticSizedAllocator<3, double>::<anonymous>.TooN::Internal::StackOrHeap<3, double, false>::my_data[1ul]’ may be used uninitialized in this function [-Wmaybe-uninitialized] /home/rpserver/ros/rosbuild/stacks/tum_ardrone/src/stateestimation/PTAM/MapMaker.cc:1110:13: note: ‘v3BestMean.TooN::Internal::VectorAlloc<3, double>::<anonymous>.TooN::Internal::StaticSizedAllocator<3, double>::<anonymous>.TooN::Internal::StackOrHeap<3, double, false>::my_data[1ul]’ was declared here In file included from /home/rpserver/ros/rosbuild/stacks/tum_ardrone/thirdparty/TooN/include/TooN/TooN.h:267:0, from /home/rpserver/ros/rosbuild/stacks/tum_ardrone/thirdparty/TooN/include/TooN/so3.h:33, from /home/rpserver/ros/rosbuild/stacks/tum_ardrone/thirdparty/TooN/include/TooN/se3.h:33, from /home/rpserver/ros/rosbuild/stacks/tum_ardrone/src/stateestimation/PTAM/Map.h:18, from /home/rpserver/ros/rosbuild/stacks/tum_ardrone/src/stateestimation/PTAM/MapMaker.h:20, from /home/rpserver/ros/rosbuild/stacks/tum_ardrone/src/stateestimation/PTAM/MapMaker.cc:2: /home/rpserver/ros/rosbuild/stacks/tum_ardrone/thirdparty/TooN/include/TooN/internal/operators.hh:77:84: warning: ‘v3BestMean.TooN::Internal::VectorAlloc<3, double>::<anonymous>.TooN::Internal::StaticSizedAllocator<3, double>::<anonymous>.TooN::Internal::StackOrHeap<3, double, false>::my_data[0ul]’ may be used uninitialized in this function [-Wmaybe-uninitialized] /home/rpserver/ros/rosbuild/stacks/tum_ardrone/src/stateestimation/PTAM/MapMaker.cc:1110:13: note: ‘v3BestMean.TooN::Internal::VectorAlloc<3, double>::<anonymous>.TooN::Internal::StaticSizedAllocator<3, double>::<anonymous>.TooN::Internal::StackOrHeap<3, double, false>::my_data[0ul]’ was declared here In file included from /home/rpserver/ros/rosbuild/stacks/tum_ardrone/src/stateestimation/PTAM/MapMaker.h:21:0, from /home/rpserver/ros/rosbuild/stacks/tum_ardrone/src/stateestimation/PTAM/Tracker.h:24, from /home/rpserver/ros/rosbuild/stacks/tum_ardrone/src/stateestimation/PTAM/Tracker.cc:3: /home/rpserver/ros/rosbuild/stacks/tum_ardrone/src/stateestimation/PTAM/KeyFrame.h: In member function ‘void Tracker::TrackMap()’: /home/rpserver/ros/rosbuild/stacks/tum_ardrone/src/stateestimation/PTAM/KeyFrame.h:43:8: warning: ‘m.Measurement::Source’ may be used uninitialized in this function [-Wuninitialized] /home/rpserver/ros/rosbuild/stacks/tum_ardrone/src/stateestimation/PTAM/Tracker.cc:842:19: note: ‘m.Measurement::Source’ was declared here Linking CXX executable ../bin/drone_stateestimation /usr/bin/ld: cannot find -lblas /usr/bin/ld: cannot find -llapack collect2: error: ld returned 1 exit status make[4]: * [../bin/drone_stateestimation] Error 1 make[4]: Leaving directory /home/rpserver/ros/rosbuild/stacks/tum_ardrone/build' make[3]: *** [CMakeFiles/drone_stateestimation.dir/all] Error 2 make[3]: Leaving directory/home/rpserver/ros/rosbuild/stacks/tum_ardrone/build' make[2]: * [all] Error 2 make[2]: Leaving directory /home/rpserver/ros/rosbuild/stacks/tum_ardrone/build' make[1]: *** [all] Error 2 make[1]: Leaving directory/home/rpserver/ros/rosbuild/stacks

The error log is this

SIMD support: mmx mmxext sse sse2 sse3

Missing SIMD support for x86_64-unknown-linux-gnu:

-g -Wall -Wextra -pipe -ggdb -fPIC -mmmx -msse -msse -msse2 -msse3 -pthread -ltiff -ljpeg -lpng -lpng -lGLU -lGL -lrt -L -lX11 -lXext -pthread Generating config... configuration unchanged configure: creating ./config.status config.status: creating Makefile cd build && export CPATH=../../TooN/include && make make[3]: Entering directory /home/rpserver/ros/rosbuild/stacks/tum_ardrone/thirdparty/libcvd/build' g++ -O3 -I. -I. -INONE/include -g -Wall -Wextra -pipe -ggdb -fPIC -mmmx -msse -msse -msse2 -msse3 -pthread -c progs/video_play_source.cc -o progs/video_play_source.o progs/video_play_source.cc: In function ‘void play(std::string)’: progs/video_play_source.cc:200:17: error: there are no arguments to ‘usleep’ that depend on a template parameter, so a declaration of ‘usleep’ must be available [-fpermissive] progs/video_play_source.cc:200:17: note: (if you use ‘-fpermissive’, G++ will accept your code, but allowing the use of an undeclared name is deprecated) progs/video_play_source.cc: In instantiation of ‘void play(std::string) [with C = CVD::Rgb<unsigned char>; std::string = std::basic_string<char>]’: progs/video_play_source.cc:241:30: required from here progs/video_play_source.cc:200:4: error: ‘usleep’ was not declared in this scope In file included from ./cvd/internal/convert_pixel_types.h:27:0, from ./cvd/image_convert.h:25, from ./cvd/colourspacebuffer.h:27, from ./cvd/videosource.h:13, from progs/video_play_source.cc:38: ./cvd/internal/scalar_convert.h: At global scope: ./cvd/internal/scalar_convert.h:112:21: warning: ‘CVD::Pixel::Internal::init_float_for_byte’ defined but not used [-Wunused-variable] ./cvd/internal/scalar_convert.h:113:21: warning: ‘CVD::Pixel::Internal::init_double_for_byte’ defined but not used [-Wunused-variable] make[3]: *** [progs/video_play_source.o] Error 1 make[3]: Leaving directory/home/rpserver/ros/rosbuild/stacks/tum_ardrone/thirdparty/libcvd/build' make[2]: * [libcvd_built] Error 2 make[2]: Leaving directory /home/rpserver/ros/rosbuild/stacks/tum_ardrone/thirdparty/libcvd' make[1]: *** [all] Error 2 make[1]: Leaving directory/home/rpserver/ros/rosbuild/stacks/tum_ardrone/thirdparty' make: * [all] Error 2

The solution is to add

#include <unistd.h> // it defines usleep()

to

/tum_ardrone/thirdparty/libcvd/build/progs/video_play_source.cc
/tum_ardrone/thirdparty/libcvd/installfiles/progs/video_play_source.cc

This compilation issue is used to be a warning, nowadays compilers become more strict, so it is an error now.

*EDIT Not really a general solution, there are many other errors occurred after.

                   from /home/rpserver/ros/rosbuild/stacks/tum_ardrone/src/autopilot/KI/../DroneController.h:27,
                   from /home/rpserver/ros/rosbuild/stacks/tum_ardrone/src/autopilot/KI/KIProcedure.h:26,
                   from /home/rpserver/ros/rosbuild/stacks/tum_ardrone/src/autopilot/KI/KIFlyTo.h:25,
                   from /home/rpserver/ros/rosbuild/stacks/tum_ardrone/src/autopilot/KI/KIFlyTo.cpp:21:
  /home/rpserver/ros/rosbuild/stacks/tum_ardrone/thirdparty/TooN/include/TooN/internal/debug.hh:100:33: note: ‘template<class P> void TooN::Internal::debug_initialize(P*, int)’ declared here, later in the translation unit
  Linking CXX executable ../bin/drone_gui
  In file included from /home/rpserver/ros/rosbuild/stacks/tum_ardrone/thirdparty/TooN/include/TooN/TooN.h:250:0,
                   from /home/rpserver/ros/rosbuild/stacks/tum_ardrone/thirdparty/TooN/include/TooN/so3.h:33,
                   from /home/rpserver/ros/rosbuild/stacks/tum_ardrone/thirdparty/TooN/include/TooN/se3.h:33,
                   from /home/rpserver/ros/rosbuild/stacks/tum_ardrone/src/autopilot/KI/../DroneController.h:27,
                   from /home/rpserver/ros/rosbuild/stacks/tum_ardrone/src/autopilot/KI/KIProcedure.h:26,
                   from /home/rpserver/ros/rosbuild/stacks/tum_ardrone/src/autopilot/KI/KIFlyTo.h:25,
                   from /home/rpserver/ros/rosbuild/stacks/tum_ardrone/src/autopilot/KI/KIFlyTo.cpp:21:
  /home/rpserver/ros/rosbuild/stacks/tum_ardrone/thirdparty/TooN/include/TooN/internal/allocator.hh: In instantiation of ‘TooN::Internal::StackOrHeap<Size, Precision, false>::StackOrHeap() [with int Size = 3; Precision = int]’:
  /home/rpserver/ros/rosbuild/stacks/tum_ardrone/thirdparty/TooN/include/TooN/internal/allocator.hh:105:43:   required from ‘TooN::Internal::VectorAlloc<Size, Precision>::VectorAlloc() [with int Size = 3; Precision = int]’
  /home/rpserver/ros/rosbuild/stacks/tum_ardrone/thirdparty/TooN/include/TooN/internal/vbase.hh:96:16:   required from ‘TooN::Internal::GenericVBase<Size, Precision, Stride, Mem>::GenericVBase() [with int Size = 3; Precision = int; int Stride = 1; Mem = TooN::Internal::VectorAlloc<3, int>]’
  /home/rpserver/ros/rosbuild/stacks/tum_ardrone/thirdparty/TooN/include/TooN/internal/vbase.hh:72:12:   required from ‘TooN::Internal::VBase::VLayout<Size, Precision>::VLayout() [with int Size = 3; Precision = int]’
  /home/rpserver/ros/rosbuild/stacks/tum_ardrone/thirdparty/TooN/include/TooN/internal/vector.hh:143:17:   required from ‘TooN::Vector<Size, Precision, Base>::Vector() [with int Size = 3; Precision = int; Base = TooN::Internal::VBase]’
  /home/rpserver/ros/rosbuild/stacks/tum_ardrone/thirdparty/TooN/include/TooN/internal/make_vector.hh:34:24:   required from ‘TooN::Vector<3, Precision> TooN::makeVector(const Precision&, const Precision&, const Precision&) [with Precision = int]’
  /home/rpserver/ros/rosbuild/stacks/tum_ardrone/src/autopilot/KI/../DroneController.h:55:59:   required from here
  /home/rpserver/ros/rosbuild/stacks/tum_ardrone/thirdparty/TooN/include/TooN/internal/allocator.hh:58:3: warning: ‘debug_initialize’ was not declared in this scope, and no declarations were found by argument-dependent lookup at the point of instantiation [-fpermissive]
  In file included from /home/rpserver/ros/rosbuild/stacks/tum_ardrone/thirdparty/TooN/include/TooN/TooN.h:255:0,
                   from /home/rpserver/ros/rosbuild/stacks/tum_ardrone/thirdparty/TooN/include/TooN/so3.h:33,
                   from /home/rpserver/ros/rosbuild/stacks/tum_ardrone/thirdparty/TooN/include/TooN/se3.h:33,
                   from /home/rpserver/ros/rosbuild/stacks/tum_ardrone/src/autopilot/KI/../DroneController.h:27,
                   from /home/rpserver/ros/rosbuild/stacks/tum_ardrone/src/autopilot/KI/KIProcedure.h:26,
                   from /home/rpserver/ros/rosbuild/stacks/tum_ardrone/src/autopilot/KI/KIFlyTo.h:25,
                   from /home/rpserver/ros/rosbuild/stacks/tum_ardrone/src/autopilot/KI/KIFlyTo.cpp:21:
  /home/rpserver/ros/rosbuild/stacks/tum_ardrone/thirdparty/TooN/include/TooN/internal/debug.hh:100:33: note: ‘template<class P> void TooN::Internal::debug_initialize(P*, int)’ declared here, later in the translation unit
  make[4]: Leaving directory `/home/rpserver/ros/rosbuild/stacks/tum_ardrone/build'
  [ 55%] Built target drone_gui
  Linking CXX executable ../bin/drone_autopilot
  make[4]: Leaving directory `/home/rpserver/ros/rosbuild/stacks/tum_ardrone/build'
  [ 55%] Built target drone_autopilot
  make[3]: Leaving directory `/home/rpserver/ros/rosbuild/stacks/tum_ardrone/build'
  make[2]: *** [all] Error 2
  make[2]: Leaving directory `/home/rpserver/ros/rosbuild/stacks/tum_ardrone/build'
  make[1]: *** [all] Error 2
  make[1]: Leaving directory `/home/rpserver/ros/rosbuild/stacks/tum_ardrone'
  • Edit

    *Edit

    To solve above problem do the following

  • following In tum_ardrone/thirdparty/TooN/internal/allocator.hh, add at the begining,

    include “debug.hh”

  1. #include “debug.hh”
    

    In tum_ardrone/thirdparty/TooN/internal/debug.hh, add at the beginning,

    ifndef DEBUG_HH

    define DEBUG_HH

#ifndef DEBUG_HH
#define DEBUG_HH

add at the end,

#endif

this solution taken form here.

However further compilation generated the following errors from /home/rpserver/ros/rosbuild/stacks/tum_ardrone/src/stateestimation/PTAM/Map.h:18, from /home/rpserver/ros/rosbuild/stacks/tum_ardrone/src/stateestimation/PTAM/MapMaker.h:20, from /home/rpserver/ros/rosbuild/stacks/tum_ardrone/src/stateestimation/PTAM/MapMaker.cc:2: /home/rpserver/ros/rosbuild/stacks/tum_ardrone/thirdparty/TooN/include/TooN/internal/operators.hh:77:84: warning: ‘v3BestMean.TooN::Internal::VectorAlloc<3, double>::<anonymous>.TooN::Internal::StaticSizedAllocator<3, double>::<anonymous>.TooN::Internal::StackOrHeap<3, double, false>::my_data[2ul]’ may be used uninitialized in this function [-Wmaybe-uninitialized] /home/rpserver/ros/rosbuild/stacks/tum_ardrone/src/stateestimation/PTAM/MapMaker.cc:1110:13: note: ‘v3BestMean.TooN::Internal::VectorAlloc<3, double>::<anonymous>.TooN::Internal::StaticSizedAllocator<3, double>::<anonymous>.TooN::Internal::StackOrHeap<3, double, false>::my_data[2ul]’ was declared here In file included from /home/rpserver/ros/rosbuild/stacks/tum_ardrone/thirdparty/TooN/include/TooN/TooN.h:267:0, from /home/rpserver/ros/rosbuild/stacks/tum_ardrone/thirdparty/TooN/include/TooN/so3.h:33, from /home/rpserver/ros/rosbuild/stacks/tum_ardrone/thirdparty/TooN/include/TooN/se3.h:33, from /home/rpserver/ros/rosbuild/stacks/tum_ardrone/src/stateestimation/PTAM/Map.h:18, from /home/rpserver/ros/rosbuild/stacks/tum_ardrone/src/stateestimation/PTAM/MapMaker.h:20, from /home/rpserver/ros/rosbuild/stacks/tum_ardrone/src/stateestimation/PTAM/MapMaker.cc:2: /home/rpserver/ros/rosbuild/stacks/tum_ardrone/thirdparty/TooN/include/TooN/internal/operators.hh:77:84: warning: ‘v3BestMean.TooN::Internal::VectorAlloc<3, double>::<anonymous>.TooN::Internal::StaticSizedAllocator<3, double>::<anonymous>.TooN::Internal::StackOrHeap<3, double, false>::my_data[1ul]’ may be used uninitialized in this function [-Wmaybe-uninitialized] /home/rpserver/ros/rosbuild/stacks/tum_ardrone/src/stateestimation/PTAM/MapMaker.cc:1110:13: note: ‘v3BestMean.TooN::Internal::VectorAlloc<3, double>::<anonymous>.TooN::Internal::StaticSizedAllocator<3, double>::<anonymous>.TooN::Internal::StackOrHeap<3, double, false>::my_data[1ul]’ was declared here In file included from /home/rpserver/ros/rosbuild/stacks/tum_ardrone/thirdparty/TooN/include/TooN/TooN.h:267:0, from /home/rpserver/ros/rosbuild/stacks/tum_ardrone/thirdparty/TooN/include/TooN/so3.h:33, from /home/rpserver/ros/rosbuild/stacks/tum_ardrone/thirdparty/TooN/include/TooN/se3.h:33, from /home/rpserver/ros/rosbuild/stacks/tum_ardrone/src/stateestimation/PTAM/Map.h:18, from /home/rpserver/ros/rosbuild/stacks/tum_ardrone/src/stateestimation/PTAM/MapMaker.h:20, from /home/rpserver/ros/rosbuild/stacks/tum_ardrone/src/stateestimation/PTAM/MapMaker.cc:2: /home/rpserver/ros/rosbuild/stacks/tum_ardrone/thirdparty/TooN/include/TooN/internal/operators.hh:77:84: warning: ‘v3BestMean.TooN::Internal::VectorAlloc<3, double>::<anonymous>.TooN::Internal::StaticSizedAllocator<3, double>::<anonymous>.TooN::Internal::StackOrHeap<3, double, false>::my_data[0ul]’ may be used uninitialized in this function [-Wmaybe-uninitialized] /home/rpserver/ros/rosbuild/stacks/tum_ardrone/src/stateestimation/PTAM/MapMaker.cc:1110:13: note: ‘v3BestMean.TooN::Internal::VectorAlloc<3, double>::<anonymous>.TooN::Internal::StaticSizedAllocator<3, double>::<anonymous>.TooN::Internal::StackOrHeap<3, double, false>::my_data[0ul]’ was declared here In file included from /home/rpserver/ros/rosbuild/stacks/tum_ardrone/src/stateestimation/PTAM/MapMaker.h:21:0, from /home/rpserver/ros/rosbuild/stacks/tum_ardrone/src/stateestimation/PTAM/Tracker.h:24, from /home/rpserver/ros/rosbuild/stacks/tum_ardrone/src/stateestimation/PTAM/Tracker.cc:3: /home/rpserver/ros/rosbuild/stacks/tum_ardrone/src/stateestimation/PTAM/KeyFrame.h: In member function ‘void Tracker::TrackMap()’: /home/rpserver/ros/rosbuild/stacks/tum_ardrone/src/stateestimation/PTAM/KeyFrame.h:43:8: warning: ‘m.Measurement::Source’ may be used uninitialized in this function [-Wuninitialized] /home/rpserver/ros/rosbuild/stacks/tum_ardrone/src/stateestimation/PTAM/Tracker.cc:842:19: note: ‘m.Measurement::Source’ was declared here Linking CXX executable ../bin/drone_stateestimation /usr/bin/ld: cannot find -lblas /usr/bin/ld: cannot find -llapack collect2: error: ld returned 1 exit status make[4]: * [../bin/drone_stateestimation] Error 1 make[4]: Leaving directory /home/rpserver/ros/rosbuild/stacks/tum_ardrone/build' make[3]: *** [CMakeFiles/drone_stateestimation.dir/all] Error 2 make[3]: Leaving directory/home/rpserver/ros/rosbuild/stacks/tum_ardrone/build' make[2]: * [all] Error 2 make[2]: Leaving directory /home/rpserver/ros/rosbuild/stacks/tum_ardrone/build' make[1]: *** [all] Error 2 make[1]: Leaving directory/home/rpserver/ros/rosbuild/stacks

The error log is this

SIMD support: mmx mmxext sse sse2 sse3

Missing SIMD support for x86_64-unknown-linux-gnu:

-g -Wall -Wextra -pipe -ggdb -fPIC -mmmx -msse -msse -msse2 -msse3 -pthread -ltiff -ljpeg -lpng -lpng -lGLU -lGL -lrt -L -lX11 -lXext -pthread Generating config... configuration unchanged configure: creating ./config.status config.status: creating Makefile cd build && export CPATH=../../TooN/include && make make[3]: Entering directory /home/rpserver/ros/rosbuild/stacks/tum_ardrone/thirdparty/libcvd/build' g++ -O3 -I. -I. -INONE/include -g -Wall -Wextra -pipe -ggdb -fPIC -mmmx -msse -msse -msse2 -msse3 -pthread -c progs/video_play_source.cc -o progs/video_play_source.o progs/video_play_source.cc: In function ‘void play(std::string)’: progs/video_play_source.cc:200:17: error: there are no arguments to ‘usleep’ that depend on a template parameter, so a declaration of ‘usleep’ must be available [-fpermissive] progs/video_play_source.cc:200:17: note: (if you use ‘-fpermissive’, G++ will accept your code, but allowing the use of an undeclared name is deprecated) progs/video_play_source.cc: In instantiation of ‘void play(std::string) [with C = CVD::Rgb<unsigned char>; std::string = std::basic_string<char>]’: progs/video_play_source.cc:241:30: required from here progs/video_play_source.cc:200:4: error: ‘usleep’ was not declared in this scope In file included from ./cvd/internal/convert_pixel_types.h:27:0, from ./cvd/image_convert.h:25, from ./cvd/colourspacebuffer.h:27, from ./cvd/videosource.h:13, from progs/video_play_source.cc:38: ./cvd/internal/scalar_convert.h: At global scope: ./cvd/internal/scalar_convert.h:112:21: warning: ‘CVD::Pixel::Internal::init_float_for_byte’ defined but not used [-Wunused-variable] ./cvd/internal/scalar_convert.h:113:21: warning: ‘CVD::Pixel::Internal::init_double_for_byte’ defined but not used [-Wunused-variable] make[3]: *** [progs/video_play_source.o] Error 1 make[3]: Leaving directory/home/rpserver/ros/rosbuild/stacks/tum_ardrone/thirdparty/libcvd/build' make[2]: * [libcvd_built] Error 2 make[2]: Leaving directory /home/rpserver/ros/rosbuild/stacks/tum_ardrone/thirdparty/libcvd' make[1]: *** [all] Error 2 make[1]: Leaving directory/home/rpserver/ros/rosbuild/stacks/tum_ardrone/thirdparty' make: * [all] Error 2

The solution is to add

#include <unistd.h> // it defines usleep()

to

/tum_ardrone/thirdparty/libcvd/build/progs/video_play_source.cc
/tum_ardrone/thirdparty/libcvd/installfiles/progs/video_play_source.cc

This compilation issue is used to be a warning, nowadays compilers become more strict, so it is an error now.

*EDIT Not really a general solution, there are many other errors occurred after.

                   from /home/rpserver/ros/rosbuild/stacks/tum_ardrone/src/autopilot/KI/../DroneController.h:27,
                   from /home/rpserver/ros/rosbuild/stacks/tum_ardrone/src/autopilot/KI/KIProcedure.h:26,
                   from /home/rpserver/ros/rosbuild/stacks/tum_ardrone/src/autopilot/KI/KIFlyTo.h:25,
                   from /home/rpserver/ros/rosbuild/stacks/tum_ardrone/src/autopilot/KI/KIFlyTo.cpp:21:
  /home/rpserver/ros/rosbuild/stacks/tum_ardrone/thirdparty/TooN/include/TooN/internal/debug.hh:100:33: note: ‘template<class P> void TooN::Internal::debug_initialize(P*, int)’ declared here, later in the translation unit
  Linking CXX executable ../bin/drone_gui
  In file included from /home/rpserver/ros/rosbuild/stacks/tum_ardrone/thirdparty/TooN/include/TooN/TooN.h:250:0,
                   from /home/rpserver/ros/rosbuild/stacks/tum_ardrone/thirdparty/TooN/include/TooN/so3.h:33,
                   from /home/rpserver/ros/rosbuild/stacks/tum_ardrone/thirdparty/TooN/include/TooN/se3.h:33,
                   from /home/rpserver/ros/rosbuild/stacks/tum_ardrone/src/autopilot/KI/../DroneController.h:27,
                   from /home/rpserver/ros/rosbuild/stacks/tum_ardrone/src/autopilot/KI/KIProcedure.h:26,
                   from /home/rpserver/ros/rosbuild/stacks/tum_ardrone/src/autopilot/KI/KIFlyTo.h:25,
                   from /home/rpserver/ros/rosbuild/stacks/tum_ardrone/src/autopilot/KI/KIFlyTo.cpp:21:
  /home/rpserver/ros/rosbuild/stacks/tum_ardrone/thirdparty/TooN/include/TooN/internal/allocator.hh: In instantiation of ‘TooN::Internal::StackOrHeap<Size, Precision, false>::StackOrHeap() [with int Size = 3; Precision = int]’:
  /home/rpserver/ros/rosbuild/stacks/tum_ardrone/thirdparty/TooN/include/TooN/internal/allocator.hh:105:43:   required from ‘TooN::Internal::VectorAlloc<Size, Precision>::VectorAlloc() [with int Size = 3; Precision = int]’
  /home/rpserver/ros/rosbuild/stacks/tum_ardrone/thirdparty/TooN/include/TooN/internal/vbase.hh:96:16:   required from ‘TooN::Internal::GenericVBase<Size, Precision, Stride, Mem>::GenericVBase() [with int Size = 3; Precision = int; int Stride = 1; Mem = TooN::Internal::VectorAlloc<3, int>]’
  /home/rpserver/ros/rosbuild/stacks/tum_ardrone/thirdparty/TooN/include/TooN/internal/vbase.hh:72:12:   required from ‘TooN::Internal::VBase::VLayout<Size, Precision>::VLayout() [with int Size = 3; Precision = int]’
  /home/rpserver/ros/rosbuild/stacks/tum_ardrone/thirdparty/TooN/include/TooN/internal/vector.hh:143:17:   required from ‘TooN::Vector<Size, Precision, Base>::Vector() [with int Size = 3; Precision = int; Base = TooN::Internal::VBase]’
  /home/rpserver/ros/rosbuild/stacks/tum_ardrone/thirdparty/TooN/include/TooN/internal/make_vector.hh:34:24:   required from ‘TooN::Vector<3, Precision> TooN::makeVector(const Precision&, const Precision&, const Precision&) [with Precision = int]’
  /home/rpserver/ros/rosbuild/stacks/tum_ardrone/src/autopilot/KI/../DroneController.h:55:59:   required from here
  /home/rpserver/ros/rosbuild/stacks/tum_ardrone/thirdparty/TooN/include/TooN/internal/allocator.hh:58:3: warning: ‘debug_initialize’ was not declared in this scope, and no declarations were found by argument-dependent lookup at the point of instantiation [-fpermissive]
  In file included from /home/rpserver/ros/rosbuild/stacks/tum_ardrone/thirdparty/TooN/include/TooN/TooN.h:255:0,
                   from /home/rpserver/ros/rosbuild/stacks/tum_ardrone/thirdparty/TooN/include/TooN/so3.h:33,
                   from /home/rpserver/ros/rosbuild/stacks/tum_ardrone/thirdparty/TooN/include/TooN/se3.h:33,
                   from /home/rpserver/ros/rosbuild/stacks/tum_ardrone/src/autopilot/KI/../DroneController.h:27,
                   from /home/rpserver/ros/rosbuild/stacks/tum_ardrone/src/autopilot/KI/KIProcedure.h:26,
                   from /home/rpserver/ros/rosbuild/stacks/tum_ardrone/src/autopilot/KI/KIFlyTo.h:25,
                   from /home/rpserver/ros/rosbuild/stacks/tum_ardrone/src/autopilot/KI/KIFlyTo.cpp:21:
  /home/rpserver/ros/rosbuild/stacks/tum_ardrone/thirdparty/TooN/include/TooN/internal/debug.hh:100:33: note: ‘template<class P> void TooN::Internal::debug_initialize(P*, int)’ declared here, later in the translation unit
  make[4]: Leaving directory `/home/rpserver/ros/rosbuild/stacks/tum_ardrone/build'
  [ 55%] Built target drone_gui
  Linking CXX executable ../bin/drone_autopilot
  make[4]: Leaving directory `/home/rpserver/ros/rosbuild/stacks/tum_ardrone/build'
  [ 55%] Built target drone_autopilot
  make[3]: Leaving directory `/home/rpserver/ros/rosbuild/stacks/tum_ardrone/build'
  make[2]: *** [all] Error 2
  make[2]: Leaving directory `/home/rpserver/ros/rosbuild/stacks/tum_ardrone/build'
  make[1]: *** [all] Error 2
  make[1]: Leaving directory `/home/rpserver/ros/rosbuild/stacks/tum_ardrone'

*Edit

To solve above problem do the following In tum_ardrone/thirdparty/TooN/internal/allocator.hh, add at the begining,

#include “debug.hh”

In tum_ardrone/thirdparty/TooN/internal/debug.hh, add at the beginning,

#ifndef DEBUG_HH
#define DEBUG_HH

add at the end,

#endif

this solution taken form here.

However further compilation generated the following errors errors

                   from /home/rpserver/ros/rosbuild/stacks/tum_ardrone/src/stateestimation/PTAM/Map.h:18,
                   from /home/rpserver/ros/rosbuild/stacks/tum_ardrone/src/stateestimation/PTAM/MapMaker.h:20,
                   from /home/rpserver/ros/rosbuild/stacks/tum_ardrone/src/stateestimation/PTAM/MapMaker.cc:2:
  /home/rpserver/ros/rosbuild/stacks/tum_ardrone/thirdparty/TooN/include/TooN/internal/operators.hh:77:84: warning: ‘v3BestMean.TooN::Internal::VectorAlloc<3, double>::<anonymous>.TooN::Internal::StaticSizedAllocator<3, double>::<anonymous>.TooN::Internal::StackOrHeap<3, double, false>::my_data[2ul]’ may be used uninitialized in this function [-Wmaybe-uninitialized]
  /home/rpserver/ros/rosbuild/stacks/tum_ardrone/src/stateestimation/PTAM/MapMaker.cc:1110:13: note: ‘v3BestMean.TooN::Internal::VectorAlloc<3, double>::<anonymous>.TooN::Internal::StaticSizedAllocator<3, double>::<anonymous>.TooN::Internal::StackOrHeap<3, double, false>::my_data[2ul]’ was declared here
  In file included from /home/rpserver/ros/rosbuild/stacks/tum_ardrone/thirdparty/TooN/include/TooN/TooN.h:267:0,
                   from /home/rpserver/ros/rosbuild/stacks/tum_ardrone/thirdparty/TooN/include/TooN/so3.h:33,
                   from /home/rpserver/ros/rosbuild/stacks/tum_ardrone/thirdparty/TooN/include/TooN/se3.h:33,
                   from /home/rpserver/ros/rosbuild/stacks/tum_ardrone/src/stateestimation/PTAM/Map.h:18,
                   from /home/rpserver/ros/rosbuild/stacks/tum_ardrone/src/stateestimation/PTAM/MapMaker.h:20,
                   from /home/rpserver/ros/rosbuild/stacks/tum_ardrone/src/stateestimation/PTAM/MapMaker.cc:2:
  /home/rpserver/ros/rosbuild/stacks/tum_ardrone/thirdparty/TooN/include/TooN/internal/operators.hh:77:84: warning: ‘v3BestMean.TooN::Internal::VectorAlloc<3, double>::<anonymous>.TooN::Internal::StaticSizedAllocator<3, double>::<anonymous>.TooN::Internal::StackOrHeap<3, double, false>::my_data[1ul]’ may be used uninitialized in this function [-Wmaybe-uninitialized]
  /home/rpserver/ros/rosbuild/stacks/tum_ardrone/src/stateestimation/PTAM/MapMaker.cc:1110:13: note: ‘v3BestMean.TooN::Internal::VectorAlloc<3, double>::<anonymous>.TooN::Internal::StaticSizedAllocator<3, double>::<anonymous>.TooN::Internal::StackOrHeap<3, double, false>::my_data[1ul]’ was declared here
  In file included from /home/rpserver/ros/rosbuild/stacks/tum_ardrone/thirdparty/TooN/include/TooN/TooN.h:267:0,
                   from /home/rpserver/ros/rosbuild/stacks/tum_ardrone/thirdparty/TooN/include/TooN/so3.h:33,
                   from /home/rpserver/ros/rosbuild/stacks/tum_ardrone/thirdparty/TooN/include/TooN/se3.h:33,
                   from /home/rpserver/ros/rosbuild/stacks/tum_ardrone/src/stateestimation/PTAM/Map.h:18,
                   from /home/rpserver/ros/rosbuild/stacks/tum_ardrone/src/stateestimation/PTAM/MapMaker.h:20,
                   from /home/rpserver/ros/rosbuild/stacks/tum_ardrone/src/stateestimation/PTAM/MapMaker.cc:2:
  /home/rpserver/ros/rosbuild/stacks/tum_ardrone/thirdparty/TooN/include/TooN/internal/operators.hh:77:84: warning: ‘v3BestMean.TooN::Internal::VectorAlloc<3, double>::<anonymous>.TooN::Internal::StaticSizedAllocator<3, double>::<anonymous>.TooN::Internal::StackOrHeap<3, double, false>::my_data[0ul]’ may be used uninitialized in this function [-Wmaybe-uninitialized]
  /home/rpserver/ros/rosbuild/stacks/tum_ardrone/src/stateestimation/PTAM/MapMaker.cc:1110:13: note: ‘v3BestMean.TooN::Internal::VectorAlloc<3, double>::<anonymous>.TooN::Internal::StaticSizedAllocator<3, double>::<anonymous>.TooN::Internal::StackOrHeap<3, double, false>::my_data[0ul]’ was declared here
  In file included from /home/rpserver/ros/rosbuild/stacks/tum_ardrone/src/stateestimation/PTAM/MapMaker.h:21:0,
                   from /home/rpserver/ros/rosbuild/stacks/tum_ardrone/src/stateestimation/PTAM/Tracker.h:24,
                   from /home/rpserver/ros/rosbuild/stacks/tum_ardrone/src/stateestimation/PTAM/Tracker.cc:3:
  /home/rpserver/ros/rosbuild/stacks/tum_ardrone/src/stateestimation/PTAM/KeyFrame.h: In member function ‘void Tracker::TrackMap()’:
  /home/rpserver/ros/rosbuild/stacks/tum_ardrone/src/stateestimation/PTAM/KeyFrame.h:43:8: warning: ‘m.Measurement::Source’ may be used uninitialized in this function [-Wuninitialized]
  /home/rpserver/ros/rosbuild/stacks/tum_ardrone/src/stateestimation/PTAM/Tracker.cc:842:19: note: ‘m.Measurement::Source’ was declared here
  Linking CXX executable ../bin/drone_stateestimation
  /usr/bin/ld: cannot find -lblas
  /usr/bin/ld: cannot find -llapack
  collect2: error: ld returned 1 exit status
  make[4]: * *** [../bin/drone_stateestimation] Error 1
  make[4]: Leaving directory /home/rpserver/ros/rosbuild/stacks/tum_ardrone/build'
`/home/rpserver/ros/rosbuild/stacks/tum_ardrone/build'
  make[3]: *** [CMakeFiles/drone_stateestimation.dir/all] Error 2
  make[3]: Leaving directory/home/rpserver/ros/rosbuild/stacks/tum_ardrone/build'
directory `/home/rpserver/ros/rosbuild/stacks/tum_ardrone/build'
  make[2]: * *** [all] Error 2
  make[2]: Leaving directory /home/rpserver/ros/rosbuild/stacks/tum_ardrone/build'
`/home/rpserver/ros/rosbuild/stacks/tum_ardrone/build'
  make[1]: *** [all] Error 2
  make[1]: Leaving directorydirectory `/home/rpserver/ros/rosbuild/stacks
/home/rpserver/ros/rosbuild/stacks

The error log is this

SIMD support: mmx mmxext sse sse2 sse3

Missing SIMD support for x86_64-unknown-linux-gnu:

-g -Wall -Wextra -pipe -ggdb -fPIC -mmmx -msse -msse -msse2 -msse3 -pthread -ltiff -ljpeg -lpng -lpng -lGLU -lGL -lrt -L -lX11 -lXext -pthread Generating config... configuration unchanged configure: creating ./config.status config.status: creating Makefile cd build && export CPATH=../../TooN/include && make make[3]: Entering directory /home/rpserver/ros/rosbuild/stacks/tum_ardrone/thirdparty/libcvd/build' g++ -O3 -I. -I. -INONE/include -g -Wall -Wextra -pipe -ggdb -fPIC -mmmx -msse -msse -msse2 -msse3 -pthread -c progs/video_play_source.cc -o progs/video_play_source.o progs/video_play_source.cc: In function ‘void play(std::string)’: progs/video_play_source.cc:200:17: error: there are no arguments to ‘usleep’ that depend on a template parameter, so a declaration of ‘usleep’ must be available [-fpermissive] progs/video_play_source.cc:200:17: note: (if you use ‘-fpermissive’, G++ will accept your code, but allowing the use of an undeclared name is deprecated) progs/video_play_source.cc: In instantiation of ‘void play(std::string) [with C = CVD::Rgb<unsigned char>; std::string = std::basic_string<char>]’: progs/video_play_source.cc:241:30: required from here progs/video_play_source.cc:200:4: error: ‘usleep’ was not declared in this scope In file included from ./cvd/internal/convert_pixel_types.h:27:0, from ./cvd/image_convert.h:25, from ./cvd/colourspacebuffer.h:27, from ./cvd/videosource.h:13, from progs/video_play_source.cc:38: ./cvd/internal/scalar_convert.h: At global scope: ./cvd/internal/scalar_convert.h:112:21: warning: ‘CVD::Pixel::Internal::init_float_for_byte’ defined but not used [-Wunused-variable] ./cvd/internal/scalar_convert.h:113:21: warning: ‘CVD::Pixel::Internal::init_double_for_byte’ defined but not used [-Wunused-variable] make[3]: *** [progs/video_play_source.o] Error 1 make[3]: Leaving directory/home/rpserver/ros/rosbuild/stacks/tum_ardrone/thirdparty/libcvd/build' make[2]: * [libcvd_built] Error 2 make[2]: Leaving directory /home/rpserver/ros/rosbuild/stacks/tum_ardrone/thirdparty/libcvd' make[1]: *** [all] Error 2 make[1]: Leaving directory/home/rpserver/ros/rosbuild/stacks/tum_ardrone/thirdparty' make: * [all] Error 2

The solution is to add

#include <unistd.h> // it defines usleep()

to

/tum_ardrone/thirdparty/libcvd/build/progs/video_play_source.cc
/tum_ardrone/thirdparty/libcvd/installfiles/progs/video_play_source.cc

This compilation issue is used to be a warning, nowadays compilers become more strict, so it is an error now.

*EDIT Not really a general solution, there are many other errors occurred after.

                   from /home/rpserver/ros/rosbuild/stacks/tum_ardrone/src/autopilot/KI/../DroneController.h:27,
                   from /home/rpserver/ros/rosbuild/stacks/tum_ardrone/src/autopilot/KI/KIProcedure.h:26,
                   from /home/rpserver/ros/rosbuild/stacks/tum_ardrone/src/autopilot/KI/KIFlyTo.h:25,
                   from /home/rpserver/ros/rosbuild/stacks/tum_ardrone/src/autopilot/KI/KIFlyTo.cpp:21:
  /home/rpserver/ros/rosbuild/stacks/tum_ardrone/thirdparty/TooN/include/TooN/internal/debug.hh:100:33: note: ‘template<class P> void TooN::Internal::debug_initialize(P*, int)’ declared here, later in the translation unit
  Linking CXX executable ../bin/drone_gui
  In file included from /home/rpserver/ros/rosbuild/stacks/tum_ardrone/thirdparty/TooN/include/TooN/TooN.h:250:0,
                   from /home/rpserver/ros/rosbuild/stacks/tum_ardrone/thirdparty/TooN/include/TooN/so3.h:33,
                   from /home/rpserver/ros/rosbuild/stacks/tum_ardrone/thirdparty/TooN/include/TooN/se3.h:33,
                   from /home/rpserver/ros/rosbuild/stacks/tum_ardrone/src/autopilot/KI/../DroneController.h:27,
                   from /home/rpserver/ros/rosbuild/stacks/tum_ardrone/src/autopilot/KI/KIProcedure.h:26,
                   from /home/rpserver/ros/rosbuild/stacks/tum_ardrone/src/autopilot/KI/KIFlyTo.h:25,
                   from /home/rpserver/ros/rosbuild/stacks/tum_ardrone/src/autopilot/KI/KIFlyTo.cpp:21:
  /home/rpserver/ros/rosbuild/stacks/tum_ardrone/thirdparty/TooN/include/TooN/internal/allocator.hh: In instantiation of ‘TooN::Internal::StackOrHeap<Size, Precision, false>::StackOrHeap() [with int Size = 3; Precision = int]’:
  /home/rpserver/ros/rosbuild/stacks/tum_ardrone/thirdparty/TooN/include/TooN/internal/allocator.hh:105:43:   required from ‘TooN::Internal::VectorAlloc<Size, Precision>::VectorAlloc() [with int Size = 3; Precision = int]’
  /home/rpserver/ros/rosbuild/stacks/tum_ardrone/thirdparty/TooN/include/TooN/internal/vbase.hh:96:16:   required from ‘TooN::Internal::GenericVBase<Size, Precision, Stride, Mem>::GenericVBase() [with int Size = 3; Precision = int; int Stride = 1; Mem = TooN::Internal::VectorAlloc<3, int>]’
  /home/rpserver/ros/rosbuild/stacks/tum_ardrone/thirdparty/TooN/include/TooN/internal/vbase.hh:72:12:   required from ‘TooN::Internal::VBase::VLayout<Size, Precision>::VLayout() [with int Size = 3; Precision = int]’
  /home/rpserver/ros/rosbuild/stacks/tum_ardrone/thirdparty/TooN/include/TooN/internal/vector.hh:143:17:   required from ‘TooN::Vector<Size, Precision, Base>::Vector() [with int Size = 3; Precision = int; Base = TooN::Internal::VBase]’
  /home/rpserver/ros/rosbuild/stacks/tum_ardrone/thirdparty/TooN/include/TooN/internal/make_vector.hh:34:24:   required from ‘TooN::Vector<3, Precision> TooN::makeVector(const Precision&, const Precision&, const Precision&) [with Precision = int]’
  /home/rpserver/ros/rosbuild/stacks/tum_ardrone/src/autopilot/KI/../DroneController.h:55:59:   required from here
  /home/rpserver/ros/rosbuild/stacks/tum_ardrone/thirdparty/TooN/include/TooN/internal/allocator.hh:58:3: warning: ‘debug_initialize’ was not declared in this scope, and no declarations were found by argument-dependent lookup at the point of instantiation [-fpermissive]
  In file included from /home/rpserver/ros/rosbuild/stacks/tum_ardrone/thirdparty/TooN/include/TooN/TooN.h:255:0,
                   from /home/rpserver/ros/rosbuild/stacks/tum_ardrone/thirdparty/TooN/include/TooN/so3.h:33,
                   from /home/rpserver/ros/rosbuild/stacks/tum_ardrone/thirdparty/TooN/include/TooN/se3.h:33,
                   from /home/rpserver/ros/rosbuild/stacks/tum_ardrone/src/autopilot/KI/../DroneController.h:27,
                   from /home/rpserver/ros/rosbuild/stacks/tum_ardrone/src/autopilot/KI/KIProcedure.h:26,
                   from /home/rpserver/ros/rosbuild/stacks/tum_ardrone/src/autopilot/KI/KIFlyTo.h:25,
                   from /home/rpserver/ros/rosbuild/stacks/tum_ardrone/src/autopilot/KI/KIFlyTo.cpp:21:
  /home/rpserver/ros/rosbuild/stacks/tum_ardrone/thirdparty/TooN/include/TooN/internal/debug.hh:100:33: note: ‘template<class P> void TooN::Internal::debug_initialize(P*, int)’ declared here, later in the translation unit
  make[4]: Leaving directory `/home/rpserver/ros/rosbuild/stacks/tum_ardrone/build'
  [ 55%] Built target drone_gui
  Linking CXX executable ../bin/drone_autopilot
  make[4]: Leaving directory `/home/rpserver/ros/rosbuild/stacks/tum_ardrone/build'
  [ 55%] Built target drone_autopilot
  make[3]: Leaving directory `/home/rpserver/ros/rosbuild/stacks/tum_ardrone/build'
  make[2]: *** [all] Error 2
  make[2]: Leaving directory `/home/rpserver/ros/rosbuild/stacks/tum_ardrone/build'
  make[1]: *** [all] Error 2
  make[1]: Leaving directory `/home/rpserver/ros/rosbuild/stacks/tum_ardrone'

*Edit

To solve above problem do the following In tum_ardrone/thirdparty/TooN/internal/allocator.hh, add at the begining,

#include “debug.hh”

In tum_ardrone/thirdparty/TooN/internal/debug.hh, add at the beginning,

#ifndef DEBUG_HH
#define DEBUG_HH

add at the end,

#endif

this solution taken form here.

However further compilation generated the following errors

                   from /home/rpserver/ros/rosbuild/stacks/tum_ardrone/src/stateestimation/PTAM/Map.h:18,
                   from /home/rpserver/ros/rosbuild/stacks/tum_ardrone/src/stateestimation/PTAM/MapMaker.h:20,
                   from /home/rpserver/ros/rosbuild/stacks/tum_ardrone/src/stateestimation/PTAM/MapMaker.cc:2:
  /home/rpserver/ros/rosbuild/stacks/tum_ardrone/thirdparty/TooN/include/TooN/internal/operators.hh:77:84: warning: ‘v3BestMean.TooN::Internal::VectorAlloc<3, double>::<anonymous>.TooN::Internal::StaticSizedAllocator<3, double>::<anonymous>.TooN::Internal::StackOrHeap<3, double, false>::my_data[2ul]’ may be used uninitialized in this function [-Wmaybe-uninitialized]
  /home/rpserver/ros/rosbuild/stacks/tum_ardrone/src/stateestimation/PTAM/MapMaker.cc:1110:13: note: ‘v3BestMean.TooN::Internal::VectorAlloc<3, double>::<anonymous>.TooN::Internal::StaticSizedAllocator<3, double>::<anonymous>.TooN::Internal::StackOrHeap<3, double, false>::my_data[2ul]’ was declared here
  In file included from /home/rpserver/ros/rosbuild/stacks/tum_ardrone/thirdparty/TooN/include/TooN/TooN.h:267:0,
                   from /home/rpserver/ros/rosbuild/stacks/tum_ardrone/thirdparty/TooN/include/TooN/so3.h:33,
                   from /home/rpserver/ros/rosbuild/stacks/tum_ardrone/thirdparty/TooN/include/TooN/se3.h:33,
                   from /home/rpserver/ros/rosbuild/stacks/tum_ardrone/src/stateestimation/PTAM/Map.h:18,
                   from /home/rpserver/ros/rosbuild/stacks/tum_ardrone/src/stateestimation/PTAM/MapMaker.h:20,
                   from /home/rpserver/ros/rosbuild/stacks/tum_ardrone/src/stateestimation/PTAM/MapMaker.cc:2:
  /home/rpserver/ros/rosbuild/stacks/tum_ardrone/thirdparty/TooN/include/TooN/internal/operators.hh:77:84: warning: ‘v3BestMean.TooN::Internal::VectorAlloc<3, double>::<anonymous>.TooN::Internal::StaticSizedAllocator<3, double>::<anonymous>.TooN::Internal::StackOrHeap<3, double, false>::my_data[1ul]’ may be used uninitialized in this function [-Wmaybe-uninitialized]
  /home/rpserver/ros/rosbuild/stacks/tum_ardrone/src/stateestimation/PTAM/MapMaker.cc:1110:13: note: ‘v3BestMean.TooN::Internal::VectorAlloc<3, double>::<anonymous>.TooN::Internal::StaticSizedAllocator<3, double>::<anonymous>.TooN::Internal::StackOrHeap<3, double, false>::my_data[1ul]’ was declared here
  In file included from /home/rpserver/ros/rosbuild/stacks/tum_ardrone/thirdparty/TooN/include/TooN/TooN.h:267:0,
                   from /home/rpserver/ros/rosbuild/stacks/tum_ardrone/thirdparty/TooN/include/TooN/so3.h:33,
                   from /home/rpserver/ros/rosbuild/stacks/tum_ardrone/thirdparty/TooN/include/TooN/se3.h:33,
                   from /home/rpserver/ros/rosbuild/stacks/tum_ardrone/src/stateestimation/PTAM/Map.h:18,
                   from /home/rpserver/ros/rosbuild/stacks/tum_ardrone/src/stateestimation/PTAM/MapMaker.h:20,
                   from /home/rpserver/ros/rosbuild/stacks/tum_ardrone/src/stateestimation/PTAM/MapMaker.cc:2:
  /home/rpserver/ros/rosbuild/stacks/tum_ardrone/thirdparty/TooN/include/TooN/internal/operators.hh:77:84: warning: ‘v3BestMean.TooN::Internal::VectorAlloc<3, double>::<anonymous>.TooN::Internal::StaticSizedAllocator<3, double>::<anonymous>.TooN::Internal::StackOrHeap<3, double, false>::my_data[0ul]’ may be used uninitialized in this function [-Wmaybe-uninitialized]
  /home/rpserver/ros/rosbuild/stacks/tum_ardrone/src/stateestimation/PTAM/MapMaker.cc:1110:13: note: ‘v3BestMean.TooN::Internal::VectorAlloc<3, double>::<anonymous>.TooN::Internal::StaticSizedAllocator<3, double>::<anonymous>.TooN::Internal::StackOrHeap<3, double, false>::my_data[0ul]’ was declared here
  In file included from /home/rpserver/ros/rosbuild/stacks/tum_ardrone/src/stateestimation/PTAM/MapMaker.h:21:0,
                   from /home/rpserver/ros/rosbuild/stacks/tum_ardrone/src/stateestimation/PTAM/Tracker.h:24,
                   from /home/rpserver/ros/rosbuild/stacks/tum_ardrone/src/stateestimation/PTAM/Tracker.cc:3:
  /home/rpserver/ros/rosbuild/stacks/tum_ardrone/src/stateestimation/PTAM/KeyFrame.h: In member function ‘void Tracker::TrackMap()’:
  /home/rpserver/ros/rosbuild/stacks/tum_ardrone/src/stateestimation/PTAM/KeyFrame.h:43:8: warning: ‘m.Measurement::Source’ may be used uninitialized in this function [-Wuninitialized]
  /home/rpserver/ros/rosbuild/stacks/tum_ardrone/src/stateestimation/PTAM/Tracker.cc:842:19: note: ‘m.Measurement::Source’ was declared here
  Linking CXX executable ../bin/drone_stateestimation
  /usr/bin/ld: cannot find -lblas
  /usr/bin/ld: cannot find -llapack
  collect2: error: ld returned 1 exit status
  make[4]: *** [../bin/drone_stateestimation] Error 1
  make[4]: Leaving directory `/home/rpserver/ros/rosbuild/stacks/tum_ardrone/build'
  make[3]: *** [CMakeFiles/drone_stateestimation.dir/all] Error 2
  make[3]: Leaving directory `/home/rpserver/ros/rosbuild/stacks/tum_ardrone/build'
  make[2]: *** [all] Error 2
  make[2]: Leaving directory `/home/rpserver/ros/rosbuild/stacks/tum_ardrone/build'
  make[1]: *** [all] Error 2
  make[1]: Leaving directory `/home/rpserver/ros/rosbuild/stacks

The above error is actually a linking error. Just add

sudo apt-get install liblapack-dev libblas-dev

Ok looks like it has built up!

The error log is this

SIMD support: mmx mmxext sse sse2 sse3

Missing SIMD support for x86_64-unknown-linux-gnu:

-g -Wall -Wextra -pipe -ggdb -fPIC -mmmx -msse -msse -msse2 -msse3 -pthread -ltiff -ljpeg -lpng -lpng -lGLU -lGL -lrt -L -lX11 -lXext -pthread Generating config... configuration unchanged configure: creating ./config.status config.status: creating Makefile cd build && export CPATH=../../TooN/include && make make[3]: Entering directory /home/rpserver/ros/rosbuild/stacks/tum_ardrone/thirdparty/libcvd/build' g++ -O3 -I. -I. -INONE/include -g -Wall -Wextra -pipe -ggdb -fPIC -mmmx -msse -msse -msse2 -msse3 -pthread -c progs/video_play_source.cc -o progs/video_play_source.o progs/video_play_source.cc: In function ‘void play(std::string)’: progs/video_play_source.cc:200:17: error: there are no arguments to ‘usleep’ that depend on a template parameter, so a declaration of ‘usleep’ must be available [-fpermissive] progs/video_play_source.cc:200:17: note: (if you use ‘-fpermissive’, G++ will accept your code, but allowing the use of an undeclared name is deprecated) progs/video_play_source.cc: In instantiation of ‘void play(std::string) [with C = CVD::Rgb<unsigned char>; std::string = std::basic_string<char>]’: progs/video_play_source.cc:241:30: required from here progs/video_play_source.cc:200:4: error: ‘usleep’ was not declared in this scope In file included from ./cvd/internal/convert_pixel_types.h:27:0, from ./cvd/image_convert.h:25, from ./cvd/colourspacebuffer.h:27, from ./cvd/videosource.h:13, from progs/video_play_source.cc:38: ./cvd/internal/scalar_convert.h: At global scope: ./cvd/internal/scalar_convert.h:112:21: warning: ‘CVD::Pixel::Internal::init_float_for_byte’ defined but not used [-Wunused-variable] ./cvd/internal/scalar_convert.h:113:21: warning: ‘CVD::Pixel::Internal::init_double_for_byte’ defined but not used [-Wunused-variable] make[3]: *** [progs/video_play_source.o] Error 1 make[3]: Leaving directory/home/rpserver/ros/rosbuild/stacks/tum_ardrone/thirdparty/libcvd/build' make[2]: * [libcvd_built] Error 2 make[2]: Leaving directory /home/rpserver/ros/rosbuild/stacks/tum_ardrone/thirdparty/libcvd' make[1]: *** [all] Error 2 make[1]: Leaving directory/home/rpserver/ros/rosbuild/stacks/tum_ardrone/thirdparty' make: * [all] Error 2

The solution is to add

#include <unistd.h> // it defines usleep()

to

/tum_ardrone/thirdparty/libcvd/build/progs/video_play_source.cc
/tum_ardrone/thirdparty/libcvd/installfiles/progs/video_play_source.cc

This compilation issue is used to be a warning, nowadays compilers become more strict, so it is an error now.

*EDIT Not really a general solution, there are many other errors occurred after.

                   from /home/rpserver/ros/rosbuild/stacks/tum_ardrone/src/autopilot/KI/../DroneController.h:27,
                   from /home/rpserver/ros/rosbuild/stacks/tum_ardrone/src/autopilot/KI/KIProcedure.h:26,
                   from /home/rpserver/ros/rosbuild/stacks/tum_ardrone/src/autopilot/KI/KIFlyTo.h:25,
                   from /home/rpserver/ros/rosbuild/stacks/tum_ardrone/src/autopilot/KI/KIFlyTo.cpp:21:
  /home/rpserver/ros/rosbuild/stacks/tum_ardrone/thirdparty/TooN/include/TooN/internal/debug.hh:100:33: note: ‘template<class P> void TooN::Internal::debug_initialize(P*, int)’ declared here, later in the translation unit
  Linking CXX executable ../bin/drone_gui
  In file included from /home/rpserver/ros/rosbuild/stacks/tum_ardrone/thirdparty/TooN/include/TooN/TooN.h:250:0,
                   from /home/rpserver/ros/rosbuild/stacks/tum_ardrone/thirdparty/TooN/include/TooN/so3.h:33,
                   from /home/rpserver/ros/rosbuild/stacks/tum_ardrone/thirdparty/TooN/include/TooN/se3.h:33,
                   from /home/rpserver/ros/rosbuild/stacks/tum_ardrone/src/autopilot/KI/../DroneController.h:27,
                   from /home/rpserver/ros/rosbuild/stacks/tum_ardrone/src/autopilot/KI/KIProcedure.h:26,
                   from /home/rpserver/ros/rosbuild/stacks/tum_ardrone/src/autopilot/KI/KIFlyTo.h:25,
                   from /home/rpserver/ros/rosbuild/stacks/tum_ardrone/src/autopilot/KI/KIFlyTo.cpp:21:
  /home/rpserver/ros/rosbuild/stacks/tum_ardrone/thirdparty/TooN/include/TooN/internal/allocator.hh: In instantiation of ‘TooN::Internal::StackOrHeap<Size, Precision, false>::StackOrHeap() [with int Size = 3; Precision = int]’:
  /home/rpserver/ros/rosbuild/stacks/tum_ardrone/thirdparty/TooN/include/TooN/internal/allocator.hh:105:43:   required from ‘TooN::Internal::VectorAlloc<Size, Precision>::VectorAlloc() [with int Size = 3; Precision = int]’
  /home/rpserver/ros/rosbuild/stacks/tum_ardrone/thirdparty/TooN/include/TooN/internal/vbase.hh:96:16:   required from ‘TooN::Internal::GenericVBase<Size, Precision, Stride, Mem>::GenericVBase() [with int Size = 3; Precision = int; int Stride = 1; Mem = TooN::Internal::VectorAlloc<3, int>]’
  /home/rpserver/ros/rosbuild/stacks/tum_ardrone/thirdparty/TooN/include/TooN/internal/vbase.hh:72:12:   required from ‘TooN::Internal::VBase::VLayout<Size, Precision>::VLayout() [with int Size = 3; Precision = int]’
  /home/rpserver/ros/rosbuild/stacks/tum_ardrone/thirdparty/TooN/include/TooN/internal/vector.hh:143:17:   required from ‘TooN::Vector<Size, Precision, Base>::Vector() [with int Size = 3; Precision = int; Base = TooN::Internal::VBase]’
  /home/rpserver/ros/rosbuild/stacks/tum_ardrone/thirdparty/TooN/include/TooN/internal/make_vector.hh:34:24:   required from ‘TooN::Vector<3, Precision> TooN::makeVector(const Precision&, const Precision&, const Precision&) [with Precision = int]’
  /home/rpserver/ros/rosbuild/stacks/tum_ardrone/src/autopilot/KI/../DroneController.h:55:59:   required from here
  /home/rpserver/ros/rosbuild/stacks/tum_ardrone/thirdparty/TooN/include/TooN/internal/allocator.hh:58:3: warning: ‘debug_initialize’ was not declared in this scope, and no declarations were found by argument-dependent lookup at the point of instantiation [-fpermissive]
  In file included from /home/rpserver/ros/rosbuild/stacks/tum_ardrone/thirdparty/TooN/include/TooN/TooN.h:255:0,
                   from /home/rpserver/ros/rosbuild/stacks/tum_ardrone/thirdparty/TooN/include/TooN/so3.h:33,
                   from /home/rpserver/ros/rosbuild/stacks/tum_ardrone/thirdparty/TooN/include/TooN/se3.h:33,
                   from /home/rpserver/ros/rosbuild/stacks/tum_ardrone/src/autopilot/KI/../DroneController.h:27,
                   from /home/rpserver/ros/rosbuild/stacks/tum_ardrone/src/autopilot/KI/KIProcedure.h:26,
                   from /home/rpserver/ros/rosbuild/stacks/tum_ardrone/src/autopilot/KI/KIFlyTo.h:25,
                   from /home/rpserver/ros/rosbuild/stacks/tum_ardrone/src/autopilot/KI/KIFlyTo.cpp:21:
  /home/rpserver/ros/rosbuild/stacks/tum_ardrone/thirdparty/TooN/include/TooN/internal/debug.hh:100:33: note: ‘template<class P> void TooN::Internal::debug_initialize(P*, int)’ declared here, later in the translation unit
  make[4]: Leaving directory `/home/rpserver/ros/rosbuild/stacks/tum_ardrone/build'
  [ 55%] Built target drone_gui
  Linking CXX executable ../bin/drone_autopilot
  make[4]: Leaving directory `/home/rpserver/ros/rosbuild/stacks/tum_ardrone/build'
  [ 55%] Built target drone_autopilot
  make[3]: Leaving directory `/home/rpserver/ros/rosbuild/stacks/tum_ardrone/build'
  make[2]: *** [all] Error 2
  make[2]: Leaving directory `/home/rpserver/ros/rosbuild/stacks/tum_ardrone/build'
  make[1]: *** [all] Error 2
  make[1]: Leaving directory `/home/rpserver/ros/rosbuild/stacks/tum_ardrone'

*Edit

To solve above problem do the following In tum_ardrone/thirdparty/TooN/internal/allocator.hh, add at the begining,

#include “debug.hh”

In tum_ardrone/thirdparty/TooN/internal/debug.hh, add at the beginning,

#ifndef DEBUG_HH
#define DEBUG_HH

add at the end,

#endif

this solution taken form here.

However further compilation generated the following errors

                   from /home/rpserver/ros/rosbuild/stacks/tum_ardrone/src/stateestimation/PTAM/Map.h:18,
                   from /home/rpserver/ros/rosbuild/stacks/tum_ardrone/src/stateestimation/PTAM/MapMaker.h:20,
                   from /home/rpserver/ros/rosbuild/stacks/tum_ardrone/src/stateestimation/PTAM/MapMaker.cc:2:
  /home/rpserver/ros/rosbuild/stacks/tum_ardrone/thirdparty/TooN/include/TooN/internal/operators.hh:77:84: warning: ‘v3BestMean.TooN::Internal::VectorAlloc<3, double>::<anonymous>.TooN::Internal::StaticSizedAllocator<3, double>::<anonymous>.TooN::Internal::StackOrHeap<3, double, false>::my_data[2ul]’ may be used uninitialized in this function [-Wmaybe-uninitialized]
  /home/rpserver/ros/rosbuild/stacks/tum_ardrone/src/stateestimation/PTAM/MapMaker.cc:1110:13: note: ‘v3BestMean.TooN::Internal::VectorAlloc<3, double>::<anonymous>.TooN::Internal::StaticSizedAllocator<3, double>::<anonymous>.TooN::Internal::StackOrHeap<3, double, false>::my_data[2ul]’ was declared here
  In file included from /home/rpserver/ros/rosbuild/stacks/tum_ardrone/thirdparty/TooN/include/TooN/TooN.h:267:0,
                   from /home/rpserver/ros/rosbuild/stacks/tum_ardrone/thirdparty/TooN/include/TooN/so3.h:33,
                   from /home/rpserver/ros/rosbuild/stacks/tum_ardrone/thirdparty/TooN/include/TooN/se3.h:33,
                   from /home/rpserver/ros/rosbuild/stacks/tum_ardrone/src/stateestimation/PTAM/Map.h:18,
                   from /home/rpserver/ros/rosbuild/stacks/tum_ardrone/src/stateestimation/PTAM/MapMaker.h:20,
                   from /home/rpserver/ros/rosbuild/stacks/tum_ardrone/src/stateestimation/PTAM/MapMaker.cc:2:
  /home/rpserver/ros/rosbuild/stacks/tum_ardrone/thirdparty/TooN/include/TooN/internal/operators.hh:77:84: warning: ‘v3BestMean.TooN::Internal::VectorAlloc<3, double>::<anonymous>.TooN::Internal::StaticSizedAllocator<3, double>::<anonymous>.TooN::Internal::StackOrHeap<3, double, false>::my_data[1ul]’ may be used uninitialized in this function [-Wmaybe-uninitialized]
  /home/rpserver/ros/rosbuild/stacks/tum_ardrone/src/stateestimation/PTAM/MapMaker.cc:1110:13: note: ‘v3BestMean.TooN::Internal::VectorAlloc<3, double>::<anonymous>.TooN::Internal::StaticSizedAllocator<3, double>::<anonymous>.TooN::Internal::StackOrHeap<3, double, false>::my_data[1ul]’ was declared here
  In file included from /home/rpserver/ros/rosbuild/stacks/tum_ardrone/thirdparty/TooN/include/TooN/TooN.h:267:0,
                   from /home/rpserver/ros/rosbuild/stacks/tum_ardrone/thirdparty/TooN/include/TooN/so3.h:33,
                   from /home/rpserver/ros/rosbuild/stacks/tum_ardrone/thirdparty/TooN/include/TooN/se3.h:33,
                   from /home/rpserver/ros/rosbuild/stacks/tum_ardrone/src/stateestimation/PTAM/Map.h:18,
                   from /home/rpserver/ros/rosbuild/stacks/tum_ardrone/src/stateestimation/PTAM/MapMaker.h:20,
                   from /home/rpserver/ros/rosbuild/stacks/tum_ardrone/src/stateestimation/PTAM/MapMaker.cc:2:
  /home/rpserver/ros/rosbuild/stacks/tum_ardrone/thirdparty/TooN/include/TooN/internal/operators.hh:77:84: warning: ‘v3BestMean.TooN::Internal::VectorAlloc<3, double>::<anonymous>.TooN::Internal::StaticSizedAllocator<3, double>::<anonymous>.TooN::Internal::StackOrHeap<3, double, false>::my_data[0ul]’ may be used uninitialized in this function [-Wmaybe-uninitialized]
  /home/rpserver/ros/rosbuild/stacks/tum_ardrone/src/stateestimation/PTAM/MapMaker.cc:1110:13: note: ‘v3BestMean.TooN::Internal::VectorAlloc<3, double>::<anonymous>.TooN::Internal::StaticSizedAllocator<3, double>::<anonymous>.TooN::Internal::StackOrHeap<3, double, false>::my_data[0ul]’ was declared here
  In file included from /home/rpserver/ros/rosbuild/stacks/tum_ardrone/src/stateestimation/PTAM/MapMaker.h:21:0,
                   from /home/rpserver/ros/rosbuild/stacks/tum_ardrone/src/stateestimation/PTAM/Tracker.h:24,
                   from /home/rpserver/ros/rosbuild/stacks/tum_ardrone/src/stateestimation/PTAM/Tracker.cc:3:
  /home/rpserver/ros/rosbuild/stacks/tum_ardrone/src/stateestimation/PTAM/KeyFrame.h: In member function ‘void Tracker::TrackMap()’:
  /home/rpserver/ros/rosbuild/stacks/tum_ardrone/src/stateestimation/PTAM/KeyFrame.h:43:8: warning: ‘m.Measurement::Source’ may be used uninitialized in this function [-Wuninitialized]
  /home/rpserver/ros/rosbuild/stacks/tum_ardrone/src/stateestimation/PTAM/Tracker.cc:842:19: note: ‘m.Measurement::Source’ was declared here
  Linking CXX executable ../bin/drone_stateestimation
  /usr/bin/ld: cannot find -lblas
  /usr/bin/ld: cannot find -llapack
  collect2: error: ld returned 1 exit status
  make[4]: *** [../bin/drone_stateestimation] Error 1
  make[4]: Leaving directory `/home/rpserver/ros/rosbuild/stacks/tum_ardrone/build'
  make[3]: *** [CMakeFiles/drone_stateestimation.dir/all] Error 2
  make[3]: Leaving directory `/home/rpserver/ros/rosbuild/stacks/tum_ardrone/build'
  make[2]: *** [all] Error 2
  make[2]: Leaving directory `/home/rpserver/ros/rosbuild/stacks/tum_ardrone/build'
  make[1]: *** [all] Error 2
  make[1]: Leaving directory `/home/rpserver/ros/rosbuild/stacks

The above error is actually a linking error. Just add

sudo apt-get install liblapack-dev libblas-dev

Ok looks like it has built up!

PS: I don't know if it was useful but I added set(CMAKE_CXX_FLAGS "-fpermissive") to CMakeLists.txt