×

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

Bi-monthly release with minor bug fixes and improvements

update for INDI drivers for Raspberry Pi

  • Posts: 210
  • Thank you received: 104
CCD::GuideComplete(INDI_EQ_AXIS) is defined in indiccd.cpp , it is provided at runtime by libindidriver.so

What is the result of: ldd /usr/bin/indi_simulator_ccd

Find the row with libindidriver.so.1 ==> /usr/lib/arm...-linux-gnu/libindidriver.so.1
Check the date/version of the library file.
4 years 8 months ago #40811

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

  • Posts: 333
  • Thank you received: 92
There are three files in:
/usr/lib/arm-linux-gnueabihf/



I'm a little puzzles by the libindidriver.so.1.7.5 dated 2018. The whole installation is a fresh copy made today.
The libindidriver.so.1 is emphty



pi@raspberrypi:~ $ ldd /usr/bin/indi_simulator_ccd
linux-vdso.so.1 (0x7edfa000)
/usr/lib/arm-linux-gnueabihf/libarmmem-${PLATFORM}.so => /usr/lib/arm-linux-gnueabihf/libarmmem-v7l.so (0x76f28000)
libindidriver.so.1 => /usr/lib/arm-linux-gnueabihf/libindidriver.so.1 (0x76c99000)
libnova-0.16.so.0 => /usr/lib/arm-linux-gnueabihf/libnova-0.16.so.0 (0x76912000)
libpthread.so.0 => /lib/arm-linux-gnueabihf/libpthread.so.0 (0x768e8000)
libstdc++.so.6 => /usr/lib/arm-linux-gnueabihf/libstdc++.so.6 (0x767a1000)
libm.so.6 => /lib/arm-linux-gnueabihf/libm.so.6 (0x7671f000)
libgcc_s.so.1 => /lib/arm-linux-gnueabihf/libgcc_s.so.1 (0x766f2000)
libc.so.6 => /lib/arm-linux-gnueabihf/libc.so.6 (0x765a4000)
/lib/ld-linux-armhf.so.3 (0x76f56000)
libusb-1.0.so.0 => /lib/arm-linux-gnueabihf/libusb-1.0.so.0 (0x7657f000)
libcfitsio.so.7 => /usr/lib/arm-linux-gnueabihf/libcfitsio.so.7 (0x762f0000)
libz.so.1 => /lib/arm-linux-gnueabihf/libz.so.1 (0x762c5000)
libjpeg.so.62 => /usr/lib/arm-linux-gnueabihf/libjpeg.so.62 (0x76280000)
libudev.so.1 => /lib/arm-linux-gnueabihf/libudev.so.1 (0x76250000)
libcurl-gnutls.so.4 => /usr/lib/arm-linux-gnueabihf/libcurl-gnutls.so.4 (0x761ce000)
libbz2.so.1.0 => /lib/arm-linux-gnueabihf/libbz2.so.1.0 (0x761ae000)
librt.so.1 => /lib/arm-linux-gnueabihf/librt.so.1 (0x76197000)
libnghttp2.so.14 => /usr/lib/arm-linux-gnueabihf/libnghttp2.so.14 (0x76168000)
libidn2.so.0 => /usr/lib/arm-linux-gnueabihf/libidn2.so.0 (0x7613c000)
librtmp.so.1 => /usr/lib/arm-linux-gnueabihf/librtmp.so.1 (0x76113000)
libssh2.so.1 => /usr/lib/arm-linux-gnueabihf/libssh2.so.1 (0x760dd000)
libpsl.so.5 => /usr/lib/arm-linux-gnueabihf/libpsl.so.5 (0x760bd000)
libnettle.so.6 => /usr/lib/arm-linux-gnueabihf/libnettle.so.6 (0x76079000)
libgnutls.so.30 => /usr/lib/arm-linux-gnueabihf/libgnutls.so.30 (0x75ed7000)
libgssapi_krb5.so.2 => /usr/lib/arm-linux-gnueabihf/libgssapi_krb5.so.2 (0x75e8d000)
libkrb5.so.3 => /usr/lib/arm-linux-gnueabihf/libkrb5.so.3 (0x75dd2000)
libk5crypto.so.3 => /usr/lib/arm-linux-gnueabihf/libk5crypto.so.3 (0x75d92000)
libcom_err.so.2 => /lib/arm-linux-gnueabihf/libcom_err.so.2 (0x75d7f000)
libldap_r-2.4.so.2 => /usr/lib/arm-linux-gnueabihf/libldap_r-2.4.so.2 (0x75d2a000)
liblber-2.4.so.2 => /usr/lib/arm-linux-gnueabihf/liblber-2.4.so.2 (0x75d0e000)
libunistring.so.2 => /usr/lib/arm-linux-gnueabihf/libunistring.so.2 (0x75b92000)
libhogweed.so.4 => /usr/lib/arm-linux-gnueabihf/libhogweed.so.4 (0x75b53000)
libgmp.so.10 => /usr/lib/arm-linux-gnueabihf/libgmp.so.10 (0x75ada000)
libgcrypt.so.20 => /lib/arm-linux-gnueabihf/libgcrypt.so.20 (0x75a00000)
libp11-kit.so.0 => /usr/lib/arm-linux-gnueabihf/libp11-kit.so.0 (0x758fb000)
libtasn1.so.6 => /usr/lib/arm-linux-gnueabihf/libtasn1.so.6 (0x758db000)
libkrb5support.so.0 => /usr/lib/arm-linux-gnueabihf/libkrb5support.so.0 (0x758c1000)
libdl.so.2 => /lib/arm-linux-gnueabihf/libdl.so.2 (0x758ae000)
libkeyutils.so.1 => /lib/arm-linux-gnueabihf/libkeyutils.so.1 (0x7589a000)
libresolv.so.2 => /lib/arm-linux-gnueabihf/libresolv.so.2 (0x75876000)
libsasl2.so.2 => /usr/lib/arm-linux-gnueabihf/libsasl2.so.2 (0x7584f000)
libgpg-error.so.0 => /lib/arm-linux-gnueabihf/libgpg-error.so.0 (0x75825000)
libffi.so.6 => /usr/lib/arm-linux-gnueabihf/libffi.so.6 (0x7580d000)
pi@raspberrypi:~ $
4 years 8 months ago #40815
Attachments:

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

  • Posts: 333
  • Thank you received: 92
With the -v parameter:
ldd -v /usr/bin/indi_simulator_ccd

Version information:
/usr/bin/indi_simulator_ccd:
ld-linux-armhf.so.3 (GLIBC_2.4) => /lib/ld-linux-armhf.so.3
libpthread.so.0 (GLIBC_2.4) => /lib/arm-linux-gnueabihf/libpthread.so.0
libm.so.6 (GLIBC_2.4) => /lib/arm-linux-gnueabihf/libm.so.6
libgcc_s.so.1 (GCC_3.5) => /lib/arm-linux-gnueabihf/libgcc_s.so.1
libstdc++.so.6 (CXXABI_ARM_1.3.3) => /usr/lib/arm-linux-gnueabihf/libstdc++.so.6
libstdc++.so.6 (GLIBCXX_3.4.21) => /usr/lib/arm-linux-gnueabihf/libstdc++.so.6
libstdc++.so.6 (CXXABI_1.3) => /usr/lib/arm-linux-gnueabihf/libstdc++.so.6
libstdc++.so.6 (GLIBCXX_3.4) => /usr/lib/arm-linux-gnueabihf/libstdc++.so.6
libc.so.6 (GLIBC_2.4) => /lib/arm-linux-gnueabihf/libc.so.6
/usr/lib/arm-linux-gnueabihf/libarmmem-v7l.so:
libc.so.6 (GLIBC_2.4) => /lib/arm-linux-gnueabihf/libc.so.6
/usr/lib/arm-linux-gnueabihf/libindidriver.so.1:
libgcc_s.so.1 (GCC_3.5) => /lib/arm-linux-gnueabihf/libgcc_s.so.1
ld-linux-armhf.so.3 (GLIBC_2.4) => /lib/ld-linux-armhf.so.3
libjpeg.so.62 (LIBJPEG_6.2) => /usr/lib/arm-linux-gnueabihf/libjpeg.so.62
libjpeg.so.62 (LIBJPEGTURBO_6.2) => /usr/lib/arm-linux-gnueabihf/libjpeg.so.62
libstdc++.so.6 (GLIBCXX_3.4.20) => /usr/lib/arm-linux-gnueabihf/libstdc++.so.6
libstdc++.so.6 (CXXABI_1.3.8) => /usr/lib/arm-linux-gnueabihf/libstdc++.so.6
libstdc++.so.6 (GLIBCXX_3.4.11) => /usr/lib/arm-linux-gnueabihf/libstdc++.so.6
libstdc++.so.6 (CXXABI_1.3) => /usr/lib/arm-linux-gnueabihf/libstdc++.so.6
libstdc++.so.6 (GLIBCXX_3.4.14) => /usr/lib/arm-linux-gnueabihf/libstdc++.so.6
libstdc++.so.6 (GLIBCXX_3.4.15) => /usr/lib/arm-linux-gnueabihf/libstdc++.so.6
libstdc++.so.6 (CXXABI_ARM_1.3.3) => /usr/lib/arm-linux-gnueabihf/libstdc++.so.6
libstdc++.so.6 (GLIBCXX_3.4.22) => /usr/lib/arm-linux-gnueabihf/libstdc++.so.6
libstdc++.so.6 (GLIBCXX_3.4.19) => /usr/lib/arm-linux-gnueabihf/libstdc++.so.6
libstdc++.so.6 (GLIBCXX_3.4.21) => /usr/lib/arm-linux-gnueabihf/libstdc++.so.6
libstdc++.so.6 (GLIBCXX_3.4) => /usr/lib/arm-linux-gnueabihf/libstdc++.so.6
libpthread.so.0 (GLIBC_2.4) => /lib/arm-linux-gnueabihf/libpthread.so.0
libm.so.6 (GLIBC_2.4) => /lib/arm-linux-gnueabihf/libm.so.6
libc.so.6 (GLIBC_2.7) => /lib/arm-linux-gnueabihf/libc.so.6
libc.so.6 (GLIBC_2.17) => /lib/arm-linux-gnueabihf/libc.so.6
libc.so.6 (GLIBC_2.4) => /lib/arm-linux-gnueabihf/libc.so.6
..........




-d parameter
Note the undefined symbol

pi@raspberrypi:~ $ ldd -d /usr/bin/indi_simulator_ccd
linux-vdso.so.1 (0x7eff3000)
/usr/lib/arm-linux-gnueabihf/libarmmem-${PLATFORM}.so => /usr/lib/arm-linux-gnueabihf/libarmmem-v7l.so (0x76eeb000)
libindidriver.so.1 => /usr/lib/arm-linux-gnueabihf/libindidriver.so.1 (0x76c5c000)
libnova-0.16.so.0 => /usr/lib/arm-linux-gnueabihf/libnova-0.16.so.0 (0x768d5000)
libpthread.so.0 => /lib/arm-linux-gnueabihf/libpthread.so.0 (0x768ab000)
libstdc++.so.6 => /usr/lib/arm-linux-gnueabihf/libstdc++.so.6 (0x76764000)
libm.so.6 => /lib/arm-linux-gnueabihf/libm.so.6 (0x766e2000)
libgcc_s.so.1 => /lib/arm-linux-gnueabihf/libgcc_s.so.1 (0x766b5000)
libc.so.6 => /lib/arm-linux-gnueabihf/libc.so.6 (0x76567000)
/lib/ld-linux-armhf.so.3 (0x76f19000)
libusb-1.0.so.0 => /lib/arm-linux-gnueabihf/libusb-1.0.so.0 (0x76542000)
libcfitsio.so.7 => /usr/lib/arm-linux-gnueabihf/libcfitsio.so.7 (0x762b3000)
libz.so.1 => /lib/arm-linux-gnueabihf/libz.so.1 (0x76288000)
libjpeg.so.62 => /usr/lib/arm-linux-gnueabihf/libjpeg.so.62 (0x76243000)
libudev.so.1 => /lib/arm-linux-gnueabihf/libudev.so.1 (0x76213000)
libcurl-gnutls.so.4 => /usr/lib/arm-linux-gnueabihf/libcurl-gnutls.so.4 (0x76191000)
libbz2.so.1.0 => /lib/arm-linux-gnueabihf/libbz2.so.1.0 (0x76171000)
librt.so.1 => /lib/arm-linux-gnueabihf/librt.so.1 (0x7615a000)
libnghttp2.so.14 => /usr/lib/arm-linux-gnueabihf/libnghttp2.so.14 (0x7612b000)
libidn2.so.0 => /usr/lib/arm-linux-gnueabihf/libidn2.so.0 (0x760ff000)
librtmp.so.1 => /usr/lib/arm-linux-gnueabihf/librtmp.so.1 (0x760d6000)
libssh2.so.1 => /usr/lib/arm-linux-gnueabihf/libssh2.so.1 (0x760a0000)
libpsl.so.5 => /usr/lib/arm-linux-gnueabihf/libpsl.so.5 (0x76080000)
libnettle.so.6 => /usr/lib/arm-linux-gnueabihf/libnettle.so.6 (0x7603c000)
libgnutls.so.30 => /usr/lib/arm-linux-gnueabihf/libgnutls.so.30 (0x75e9a000)
libgssapi_krb5.so.2 => /usr/lib/arm-linux-gnueabihf/libgssapi_krb5.so.2 (0x75e50000)
libkrb5.so.3 => /usr/lib/arm-linux-gnueabihf/libkrb5.so.3 (0x75d95000)
libk5crypto.so.3 => /usr/lib/arm-linux-gnueabihf/libk5crypto.so.3 (0x75d55000)
libcom_err.so.2 => /lib/arm-linux-gnueabihf/libcom_err.so.2 (0x75d42000)
libldap_r-2.4.so.2 => /usr/lib/arm-linux-gnueabihf/libldap_r-2.4.so.2 (0x75ced000)
liblber-2.4.so.2 => /usr/lib/arm-linux-gnueabihf/liblber-2.4.so.2 (0x75cd1000)
libunistring.so.2 => /usr/lib/arm-linux-gnueabihf/libunistring.so.2 (0x75b55000)
libhogweed.so.4 => /usr/lib/arm-linux-gnueabihf/libhogweed.so.4 (0x75b16000)
libgmp.so.10 => /usr/lib/arm-linux-gnueabihf/libgmp.so.10 (0x75a9d000)
libgcrypt.so.20 => /lib/arm-linux-gnueabihf/libgcrypt.so.20 (0x759c3000)
libp11-kit.so.0 => /usr/lib/arm-linux-gnueabihf/libp11-kit.so.0 (0x758be000)
libtasn1.so.6 => /usr/lib/arm-linux-gnueabihf/libtasn1.so.6 (0x7589e000)
libkrb5support.so.0 => /usr/lib/arm-linux-gnueabihf/libkrb5support.so.0 (0x75884000)
libdl.so.2 => /lib/arm-linux-gnueabihf/libdl.so.2 (0x75871000)
libkeyutils.so.1 => /lib/arm-linux-gnueabihf/libkeyutils.so.1 (0x7585d000)
libresolv.so.2 => /lib/arm-linux-gnueabihf/libresolv.so.2 (0x75839000)
libsasl2.so.2 => /usr/lib/arm-linux-gnueabihf/libsasl2.so.2 (0x75812000)
libgpg-error.so.0 => /lib/arm-linux-gnueabihf/libgpg-error.so.0 (0x757e8000)
libffi.so.6 => /usr/lib/arm-linux-gnueabihf/libffi.so.6 (0x757d0000)
undefined symbol: _ZThn4632_N4INDI3CCD13GuideCompleteE12INDI_EQ_AXIS (/usr/bin/indi_simulator_ccd)
pi@raspberrypi:~ $
Last edit: 4 years 8 months ago by han. Reason: added ldd -d output
4 years 8 months ago #40816

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

  • Posts: 210
  • Thank you received: 104
libindidriver.so.1.7.5 is probably a residual when you install the deb from the Raspbian download page.

libindidriver.so.1 look empty because this is a logical link to libindidriver.so.1.7.9, so this is good.
It is more easy to look at the logical link target with:
ls -l /usr/lib/arm-linux-gnueabihf/libindidriver*

The difference in size between the 1.7.5 and 1.7.9 is probably because the first is compiled with Release and the other with Debug.

Maybe try to delete all the 1.7.5 files with : sudo rm /usr/lib/arm-linux-gnueabihf/libindi*.1.7.5

To be sure this is the right version try the command:
strings /usr/lib/arm-linux-gnueabihf/libindidriver.so.1 | grep GuideComplete
This must show a few lines with the function entry.

Edit: check within this line if you see _ZThn4632_N4INDI3CCD13GuideCompleteE12INDI_EQ_AXIS
Last edit: 4 years 8 months ago by Patrick Chevalley.
4 years 8 months ago #40817

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

  • Posts: 333
  • Thank you received: 92
The only debian file installed whas for NDI starter. For the rest Buster is clean. Maybe the 1.7.5 is distributed with Buster??

pi@raspberrypi:~ $ strings /usr/lib/arm-linux-gnueabihf/libindidriver.so.1 | grep GuideComplete
_ZN4INDI3CCD13GuideCompleteE12INDI_EQ_AXIS
_ZN4INDI15GuiderInterface13GuideCompleteE12INDI_EQ_AXIS
_ZThn4768_N4INDI3CCD13GuideCompleteE12INDI_EQ_AXIS
GuideComplete
_ZN4INDI3CCD13GuideCompleteE12INDI_EQ_AXIS
_ZN4INDI15GuiderInterface13GuideCompleteE12INDI_EQ_AXIS
_ZN4INDI15GuiderInterface13GuideCompleteE12INDI_EQ_AXIS
_ZN4INDI3CCD13GuideCompleteE12INDI_EQ_AXIS
_ZThn4768_N4INDI3CCD13GuideCompleteE12INDI_EQ_AXIS
pi@raspberrypi:~ $

I could delete the 1.7.5 files but I think it is better to restart from zero and see when the 1.7.5 files are introduced. Then the problem is identified. I will do that.
4 years 8 months ago #40821

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

  • Posts: 333
  • Thank you received: 92
Does the test below indicate the 1.7.5 files do no harm?

pi@raspberrypi:~ $ ls -l /usr/lib/arm-linux-gnueabihf/libindidriver*
-rw-r--r-- 1 root root 14775314 Jul 6 12:16 /usr/lib/arm-linux-gnueabihf/libindidriver.a
lrwxrwxrwx 1 root root 18 Jul 6 12:42 /usr/lib/arm-linux-gnueabihf/libindidriver.so -> libindidriver.so.1
lrwxrwxrwx 1 root root 22 Jul 6 13:02 /usr/lib/arm-linux-gnueabihf/libindidriver.so.1 -> libindidriver.so.1.7.9
-rw-r--r-- 1 root root 911788 Nov 24 2018 /usr/lib/arm-linux-gnueabihf/libindidriver.so.1.7.5
-rw-r--r-- 1 root root 6622064 Jul 6 12:06 /usr/lib/arm-linux-gnueabihf/libindidriver.so.1.7.9
pi@raspberrypi:~ $
Last edit: 4 years 8 months ago by han.
4 years 8 months ago #40823

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

  • Posts: 210
  • Thank you received: 104
Yes, this 1.7.5 lib must not harm because the 1.7.9 is in use with the links.

What is strange is in the lib you have :
_ZThn4768_N4INDI3CCD....
But the simulator want:
_ZThn4632_N4INDI3CCD....

I don't know enough about c++ mangled names to be sure why, but my intuition is it not use the same lib when linking the simulator.
4 years 8 months ago #40825

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

  • Posts: 333
  • Thank you received: 92
Hello Patrick,

I repeated the whole process. Installed a clean Buster, compiled and installed INDI and 3rdparty drivers. Without any extra installation, the command:

indiserver -vvv indi_simulator_ccd

worked. No goodby or quit. No files with 1.7.5 where installed.

As a final action, I installed INDIstarter and suddenly the files with 1.7.5 where installed and the <strong>indi_simulator_ccd</strong> said goodby after 10 restarts.

So it look likes INDIstarter is causing the problem. I downloaded it from:
sourceforge.net/projects/indistarter/fil...0_armhf.deb/download

But the INDIstarter debian package doesn't contain the 1.7.5 files. So at moment I'm really baffled how this is possible.

Han

Later, did a search for files contaning 1.7.5. and found the following files:

pi@raspberrypi:~ $ ls /var/cache/apt/archives/libindi*
/var/cache/apt/archives/libindialignmentdriver1_1.7.5+dfsg-1_armhf.deb
/var/cache/apt/archives/libindi-data_1.7.5+dfsg-1_all.deb
/var/cache/apt/archives/libindidriver1_1.7.5+dfsg-1_armhf.deb
/var/cache/apt/archives/libindi-plugins_1.7.5+dfsg-1_armhf.deb
pi@raspberrypi:~ $

How did they get there :silly: ???????
Last edit: 4 years 8 months ago by han.
4 years 8 months ago #40827

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

  • Posts: 210
  • Thank you received: 104
Han,

This is because indistarter package specify "Recommends: indi-bin" in the control file.

Normally this must not make the package to be installed automatically, but show a message about this recommendation. But sure INDI itself is a strong recommendation before you can use indistarter.
www.debian.org/doc/debian-policy/ch-relationships.html

If you downloaded the deb file, dpkg do not process the dependencies, you eventually have to run apt for that. Do you remember all the command you use to install?
If you do "apt install -f" after dpkg it may have installed indi-bin from the Raspbian repo, but normally it must not, only the "Depends:..." list must be processed automatically.

To remove this files do:
sudo apt remove indi-bin
sudo apt autoremove

Then run "make install" again from your libindi build directory.
4 years 8 months ago #40833

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

  • Posts: 333
  • Thank you received: 92
Now it all becomes clear but what is causing this?

By repairing the installation, I can repeat the steps:

I used the right mouse pop-up menu of the file explorer PCMAN option "Package Install" to install the debian package of INDIstarter. No message about dependencies so this action installed version 1.7.5 without warnings and ignores the installed 1.7.9 But why? Is this a bug in the installer or is the installer confused by the version numbers?

I installed GDEBI and this package installer see 1.7.9 and installs correctly INDIstarter without any extra package.

How to instruct others to avoid this problem?

The driver indi_qhy_ccd was missing, but I could compile it separately. Strange.

Thanks anyhow for assistance! I'm ready for the Pi4

Han
4 years 8 months ago #40847

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

  • Posts: 210
  • Thank you received: 104
The apt system (apt, dpkg, ...) do not know you install 1.7.9 because you not install it using a deb, so for apt indi is not installed.

The pacman applet probably launch the dpkg and apt command with options to process automatically all the package suggestion.
This can also be configured system wide in /etc/apt/apt.conf.d/ so the behavior can change depending on the distribution.

This is good for the end user, in this case if they install indistarter without indi, indi is first installed from the distribution repo, if later they change to the ppa indi is automatically updated to the last version.

This is something you must be careful when mixing install from source and from deb. It is better if you learn the few command line to install the deb and not use this pcaman or gdebi frontend that hide how it work.
This two command normally do the thing and give you exact message about what is done, the first install the deb you want, the second install the missing dependencies and finalize the deb install:
- dpkg -i indistarter*.deb
- apt install -f

The qhy driver and everything in 3rdparty must be compiled and installed separately. You must compile and install libqhy first. Or just compile and install all 3rdparty two time, the first time it fail to compile the driver but install the library, the second time it compile the driver.
4 years 8 months ago #40851

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

  • Posts: 333
  • Thank you received: 92
Okay clear. I'm slowly getting more familiar with Linux and the command line.

The GDEBI package installer sees the 1.7.9 so seems smarter. It will report missing dependencies before installing them

I did compile the 3rdparty drivers twice. Next time (Pi4) I will watch more carefully what will happens with the QHY driver.

Thanks again all for the feedback!

Topic closed!
The following user(s) said Thank You: Juan Manuel
4 years 8 months ago #40852

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

Time to create page: 5.605 seconds