×

INDI Library v2.0.6 is Released (02 Feb 2024)

Bi-monthly release with minor bug fixes and improvements

Compile error from the last github src

  • Posts: 314
  • Thank you received: 95
I got the error on Ubuntu 16.04 (64 bit):
astronom@ubuntu:/usr/bin/indi/build/3rdparty$ make
[ 38%] Built target indi_eqmod_telescope
[ 38%] Built target indi_sx_wheel
[ 38%] Built target sx_ccd_test
[ 38%] Built target indi_sx_ao
[ 38%] Built target indi_sx_ccd
[ 38%] Built target indi_maxdomeii
[ 38%] Linking CXX executable indi_spectracyber
CMakeFiles/indi_spectracyber.dir/spectracyber.o: In function `SpectraCyber::SpectraCyber()':
/usr/bin/indi/3rdparty/indi-spectracyber/spectracyber.cpp:123: undefined reference to `std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::basic_string()'
/usr/bin/indi/3rdparty/indi-spectracyber/spectracyber.cpp:123: undefined reference to `std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::basic_string()'
/usr/bin/indi/3rdparty/indi-spectracyber/spectracyber.cpp:123: undefined reference to `std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::~basic_string()'
/usr/bin/indi/3rdparty/indi-spectracyber/spectracyber.cpp:123: undefined reference to `std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::~basic_string()'
CMakeFiles/indi_spectracyber.dir/spectracyber.o: In function `SpectraCyber::~SpectraCyber()':
/usr/bin/indi/3rdparty/indi-spectracyber/spectracyber.cpp:145: undefined reference to `std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::~basic_string()'
/usr/bin/indi/3rdparty/indi-spectracyber/spectracyber.cpp:145: undefined reference to `std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::~basic_string()'
CMakeFiles/indi_spectracyber.dir/spectracyber.o: In function `SpectraCyber::Connect()':
/usr/bin/indi/3rdparty/indi-spectracyber/spectracyber.cpp:260: undefined reference to `std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::c_str() const'
/usr/bin/indi/3rdparty/indi-spectracyber/spectracyber.cpp:260: undefined reference to `std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::basic_string(char const*, std::allocator<char> const&)'
/usr/bin/indi/3rdparty/indi-spectracyber/spectracyber.cpp:260: undefined reference to `std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::~basic_string()'
/usr/bin/indi/3rdparty/indi-spectracyber/spectracyber.cpp:268: undefined reference to `std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::basic_string(char const*, std::allocator<char> const&)'
/usr/bin/indi/3rdparty/indi-spectracyber/spectracyber.cpp:268: undefined reference to `std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::~basic_string()'
/usr/bin/indi/3rdparty/indi-spectracyber/spectracyber.cpp:275: undefined reference to `std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::basic_string(char const*, std::allocator<char> const&)'
/usr/bin/indi/3rdparty/indi-spectracyber/spectracyber.cpp:275: undefined reference to `std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::~basic_string()'
/usr/bin/indi/3rdparty/indi-spectracyber/spectracyber.cpp:281: undefined reference to `std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::basic_string(char const*, std::allocator<char> const&)'
/usr/bin/indi/3rdparty/indi-spectracyber/spectracyber.cpp:281: undefined reference to `std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::~basic_string()'
/usr/bin/indi/3rdparty/indi-spectracyber/spectracyber.cpp:260: undefined reference to `std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::~basic_string()'
/usr/bin/indi/3rdparty/indi-spectracyber/spectracyber.cpp:268: undefined reference to `std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::~basic_string()'
/usr/bin/indi/3rdparty/indi-spectracyber/spectracyber.cpp:275: undefined reference to `std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::~basic_string()'
/usr/bin/indi/3rdparty/indi-spectracyber/spectracyber.cpp:281: undefined reference to `std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::~basic_string()'
CMakeFiles/indi_spectracyber.dir/spectracyber.o: In function `SpectraCyber::init_spectrometer()':
/usr/bin/indi/3rdparty/indi-spectracyber/spectracyber.cpp:297: undefined reference to `std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::c_str() const'
/usr/lib/gcc/x86_64-linux-gnu/5/../../../x86_64-linux-gnu/libindidriver.so: undefined reference to `__cxa_throw_bad_array_new_length@CXXABI_1.3.8'
/usr/lib/gcc/x86_64-linux-gnu/5/../../../x86_64-linux-gnu/libindidriver.so: undefined reference to `std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::compare(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) const@GLIBCXX_3.4.21'
/usr/lib/gcc/x86_64-linux-gnu/5/../../../x86_64-linux-gnu/libindidriver.so: undefined reference to `std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::basic_string(char const*, std::allocator<char> const&)@GLIBCXX_3.4.21'
/usr/lib/gcc/x86_64-linux-gnu/5/../../../x86_64-linux-gnu/libindidriver.so: undefined reference to `std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::basic_string(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&&)@GLIBCXX_3.4.21'
/usr/lib/gcc/x86_64-linux-gnu/5/../../../x86_64-linux-gnu/libindidriver.so: undefined reference to `std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::operator[](unsigned long)@GLIBCXX_3.4.21'
/usr/lib/gcc/x86_64-linux-gnu/5/../../../x86_64-linux-gnu/libindidriver.so: undefined reference to `std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::append(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@GLIBCXX_3.4.21'
/usr/lib/gcc/x86_64-linux-gnu/5/../../../x86_64-linux-gnu/libindidriver.so: undefined reference to `std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::operator=(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&&)@GLIBCXX_3.4.21'
/usr/lib/gcc/x86_64-linux-gnu/5/../../../x86_64-linux-gnu/libindidriver.so: undefined reference to `std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::operator+=(char const*)@GLIBCXX_3.4.21'
/usr/lib/gcc/x86_64-linux-gnu/5/../../../x86_64-linux-gnu/libindidriver.so: undefined reference to `std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::find(char const*, unsigned long) const@GLIBCXX_3.4.21'
/usr/lib/gcc/x86_64-linux-gnu/5/../../../x86_64-linux-gnu/libindidriver.so: undefined reference to `std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::assign(char const*)@GLIBCXX_3.4.21'
/usr/lib/gcc/x86_64-linux-gnu/5/../../../x86_64-linux-gnu/libindidriver.so: undefined reference to `std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::operator=(char const*)@GLIBCXX_3.4.21'
/usr/lib/gcc/x86_64-linux-gnu/5/../../../x86_64-linux-gnu/libindidriver.so: undefined reference to `std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::find(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, unsigned long) const@GLIBCXX_3.4.21'
/usr/lib/gcc/x86_64-linux-gnu/5/../../../x86_64-linux-gnu/libindidriver.so: undefined reference to `std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::operator+=(char)@GLIBCXX_3.4.21'
/usr/lib/gcc/x86_64-linux-gnu/5/../../../x86_64-linux-gnu/libindidriver.so: undefined reference to `std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::substr(unsigned long, unsigned long) const@GLIBCXX_3.4.21'
/usr/lib/gcc/x86_64-linux-gnu/5/../../../x86_64-linux-gnu/libindidriver.so: undefined reference to `std::__throw_out_of_range_fmt(char const*, ...)@GLIBCXX_3.4.20'
/usr/lib/gcc/x86_64-linux-gnu/5/../../../x86_64-linux-gnu/libindidriver.so: undefined reference to `std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::find_first_of(char, unsigned long) const@GLIBCXX_3.4.21'
/usr/lib/gcc/x86_64-linux-gnu/5/../../../x86_64-linux-gnu/libindidriver.so: undefined reference to `std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::size() const@GLIBCXX_3.4.21'
/usr/lib/gcc/x86_64-linux-gnu/5/../../../x86_64-linux-gnu/libindidriver.so: undefined reference to `std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::c_str() const@GLIBCXX_3.4.21'
/usr/lib/gcc/x86_64-linux-gnu/5/../../../x86_64-linux-gnu/libindidriver.so: undefined reference to `std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::basic_string()@GLIBCXX_3.4.21'
/usr/lib/gcc/x86_64-linux-gnu/5/../../../x86_64-linux-gnu/libindidriver.so: undefined reference to `std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::~basic_string()@GLIBCXX_3.4.21'
/usr/lib/gcc/x86_64-linux-gnu/5/../../../x86_64-linux-gnu/libindidriver.so: undefined reference to `std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::operator=(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@GLIBCXX_3.4.21'
/usr/lib/gcc/x86_64-linux-gnu/5/../../../x86_64-linux-gnu/libindidriver.so: undefined reference to `std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::basic_string(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@GLIBCXX_3.4.21'
/usr/lib/gcc/x86_64-linux-gnu/5/../../../x86_64-linux-gnu/libindidriver.so: undefined reference to `std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::at(unsigned long)@GLIBCXX_3.4.21'
/usr/lib/gcc/x86_64-linux-gnu/5/../../../x86_64-linux-gnu/libindidriver.so: undefined reference to `std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::compare(char const*) const@GLIBCXX_3.4.21'
/usr/lib/gcc/x86_64-linux-gnu/5/../../../x86_64-linux-gnu/libindidriver.so: undefined reference to `std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::data() const@GLIBCXX_3.4.21'
/usr/lib/gcc/x86_64-linux-gnu/5/../../../x86_64-linux-gnu/libindidriver.so: undefined reference to `std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::replace(unsigned long, unsigned long, char const*)@GLIBCXX_3.4.21'
/usr/lib/gcc/x86_64-linux-gnu/5/../../../x86_64-linux-gnu/libindidriver.so: undefined reference to `std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::replace(unsigned long, unsigned long, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@GLIBCXX_3.4.21'
collect2: error: ld returned 1 exit status
indi-spectracyber/CMakeFiles/indi_spectracyber.dir/build.make:97: recipe for target 'indi-spectracyber/indi_spectracyber' failed
make[2]: *** [indi-spectracyber/indi_spectracyber] Error 1
CMakeFiles/Makefile2:367: recipe for target 'indi-spectracyber/CMakeFiles/indi_spectracyber.dir/all' failed
make[1]: *** [indi-spectracyber/CMakeFiles/indi_spectracyber.dir/all] Error 2
Makefile:149: recipe for target 'all' failed
make: *** [all] Error 2
You can try my open project Astronomy Linux
7 years 2 months ago #13354

Please Log in or Create an account to join the conversation.

  • Posts: 150
  • Thank you received: 15
Hi Jansem,

thank you for your quick answer.

I've do an update from the repository but the problem persists :
[ 11%] Building CXX object CMakeFiles/indidriver.dir/libs/webcam/v4l2_base.cpp.o
In file included from /home/pi/Projects/indi/libindi/libs/webcam/v4l2_base.cpp:41:0:
/home/pi/Projects/indi/libindi/libs/webcam/v4l2_base.h: In member function ‘bool V4L2_Base::is_compressed() const’:
/home/pi/Projects/indi/libindi/libs/webcam/v4l2_base.h:174:51: error: ‘const struct v4l2_pix_format’ has no member named ‘flags’
   bool is_compressed() const { return fmt.fmt.pix.flags & V4L2_FMT_FLAG_COMPRESSED; };
                                                   ^
CMakeFiles/indidriver.dir/build.make:606: recipe for target 'CMakeFiles/indidriver.dir/libs/webcam/v4l2_base.cpp.o' failed
make[2]: *** [CMakeFiles/indidriver.dir/libs/webcam/v4l2_base.cpp.o] Error 1
CMakeFiles/Makefile2:1851: recipe for target 'CMakeFiles/indidriver.dir/all' failed
make[1]: *** [CMakeFiles/indidriver.dir/all] Error 2
Makefile:117: recipe for target 'all' failed
make: *** [all] Error 2

i precise that the problem occurs only on my rpi3. I've do the same thing on my laptop on kubuntu 16.04.1 and i haven't the problem.

Thank you
Christian
7 years 2 months ago #13377

Please Log in or Create an account to join the conversation.

  • Posts: 95
  • Thank you received: 14
I have exactly the same issue as Christian... only just done a git clone today...

- Raspberry Pi 3

Phil
Last edit: 7 years 2 months ago by Phil Shepherd.
7 years 2 months ago #13407

Please Log in or Create an account to join the conversation.

  • Posts: 95
  • Thank you received: 14
FYI,

I just tried with the latest Ubuntu MATE install on a new SD card....the compile got past the indicated issue, but then failed on the lx200pulsar2 in indi_lx200generic :-

[ 68%] Building CXX object CMakeFiles/indi_lx200generic.dir/drivers/telescope/lx200pulsar2.cpp.o
/home/pi/indi/libindi/drivers/telescope/lx200pulsar2.cpp: In static member function âstatic void LX200Pulsar2::guideTimeoutHelper(void*)â:
/home/pi/indi/libindi/drivers/telescope/lx200pulsar2.cpp:1272:15: error: âLX200Pulsarâ does not name a type
static_cast<LX200Pulsar*>(p)->guideTimeout();
^
/home/pi/indi/libindi/drivers/telescope/lx200pulsar2.cpp:1272:26: error: expected â>â before â*â token
static_cast<LX200Pulsar*>(p)->guideTimeout();
^
/home/pi/indi/libindi/drivers/telescope/lx200pulsar2.cpp:1272:26: error: expected â(â before â*â token
/home/pi/indi/libindi/drivers/telescope/lx200pulsar2.cpp:1272:27: error: expected primary-expression before â>â token
static_cast<LX200Pulsar*>(p)->guideTimeout();
^
/home/pi/indi/libindi/drivers/telescope/lx200pulsar2.cpp:1272:31: error: âvoid*â is not a pointer-to-object type
static_cast<LX200Pulsar*>(p)->guideTimeout();
^
/home/pi/indi/libindi/drivers/telescope/lx200pulsar2.cpp:1272:47: error: expected â)â before â;â token
static_cast<LX200Pulsar*>(p)->guideTimeout();
^
CMakeFiles/indi_lx200generic.dir/build.make:278: recipe for target 'CMakeFiles/indi_lx200generic.dir/drivers/telescope/lx200pulsar2.cpp.o' failed
make[2]: *** [CMakeFiles/indi_lx200generic.dir/drivers/telescope/lx200pulsar2.cpp.o] Error 1
CMakeFiles/Makefile2:1392: recipe for target 'CMakeFiles/indi_lx200generic.dir/all' failed
make[1]: *** [CMakeFiles/indi_lx200generic.dir/all] Error 2
Makefile:127: recipe for target 'all' failed
make: *** [all] Error 2
7 years 2 months ago #13441

Please Log in or Create an account to join the conversation.

  • Posts: 95
  • Thank you received: 14
Aha... a fix to the code today :

"Fixed type in lx200pulsar2.cpp, line 1272"

All compiles on ubuntu MATE...

Original issue still exists on Raspbian

Phil
7 years 2 months ago #13444

Please Log in or Create an account to join the conversation.

I asked the author of the recent pull request to fix the issue so hopefully it is resolved soon.
7 years 2 months ago #13445

Please Log in or Create an account to join the conversation.

  • Posts: 1029
  • Thank you received: 301
Indeed, will check.
-Eric
The following user(s) said Thank You: Phil Shepherd
7 years 2 months ago #13455

Please Log in or Create an account to join the conversation.

  • Posts: 1029
  • Thank you received: 301
Opened #137 .
Would it be possible to post the version of the kernel headers (the ones in /usr/include/linux) on the raspbian systems?
-Eric
7 years 2 months ago #13500

Please Log in or Create an account to join the conversation.

  • Posts: 95
  • Thank you received: 14
Hi Eric...

I will post it when I get home tonight...

Phil
7 years 2 months ago #13503

Please Log in or Create an account to join the conversation.

  • Posts: 150
  • Thank you received: 15
hi,

i just tryed to compile after an update from git repository on my raspbian. I've always the error compilation on v4l2_base.cpp.
[ 11%] Building CXX object CMakeFiles/indidriver.dir/libs/webcam/v4l2_base.cpp.o
In file included from /home/pi/Projects/indi/libindi/libs/webcam/v4l2_base.cpp:41:0:
/home/pi/Projects/indi/libindi/libs/webcam/v4l2_base.h: In member function ‘bool V4L2_Base::is_compressed() const’:
/home/pi/Projects/indi/libindi/libs/webcam/v4l2_base.h:174:51: error: ‘const struct v4l2_pix_format’ has no member named ‘flags’
   bool is_compressed() const { return fmt.fmt.pix.flags & V4L2_FMT_FLAG_COMPRESSED; };
                                                   ^
CMakeFiles/indidriver.dir/build.make:606: recipe for target 'CMakeFiles/indidriver.dir/libs/webcam/v4l2_base.cpp.o' failed
make[2]: *** [CMakeFiles/indidriver.dir/libs/webcam/v4l2_base.cpp.o] Error 1
CMakeFiles/Makefile2:1851: recipe for target 'CMakeFiles/indidriver.dir/all' failed
make[1]: *** [CMakeFiles/indidriver.dir/all] Error 2
Makefile:117: recipe for target 'all' failed
make: *** [all] Error 2

Thank you for a quick fix.

good sky
Christian
Last edit: 7 years 2 months ago by Picard.
7 years 2 months ago #13513

Please Log in or Create an account to join the conversation.

  • Posts: 95
  • Thank you received: 14

If you mean version.h in /usr/include/linux :
#define LINUX_VERSION_CODE 200711
#define KERNEL_VERSION(a,b,c) (((a) << 16) + ((b) << 8) + (c))

or,

apt-cache show linux-headers-3.6-trunk-rpi
Package: linux-headers-3.6-trunk-rpi
Source: linux-3.6
Version: 3.6.9-1~experimental.1+rpi7
Architecture: armhf
Maintainer: Debian Kernel Team <debian-kernel@lists.debian.org>
Installed-Size: 4844
Depends: linux-headers-3.6-trunk-common (= 3.6.9-1~experimental.1+rpi7), linux-k              build-3.6, gcc-4.6
Provides: linux-headers
Last edit: 7 years 2 months ago by Phil Shepherd.
7 years 2 months ago #13515

Please Log in or Create an account to join the conversation.

I fixed it in GIT, but ended up disabling a couple of functions under Raspbian. Please update and test.
7 years 2 months ago #13531

Please Log in or Create an account to join the conversation.

Time to create page: 0.845 seconds