Sorry to not reply to your last question but I am traveling and not always connected.
To clarify some points:
- RPi3 is 64bit hardware but most operating system are still 32bit so you need armhf packages.
- always delete the build directory if you want to start clean, otherwise cmake keep cache of previous files and not see the change in the environment.
Please remove this /usr/bin/cmake directory.
Then follow carefully all the steps in this page:
cmake is installed part of the pre-requisit:
sudo apt-get install libnova-dev libcfitsio3-dev libusb-1.0-0-dev zlib1g-dev libgsl0-dev build-essential cmake git libjpeg-dev libcurl4-gnutls-dev kdesudo
And do not not copy files around, just follow the instruction.
Make sure the procedure to build and install Indi work, then edit the file you want and run "make install" again, this compile only the modified file and install the modified version ready for use.
The indi deb (indi-full and other) get installed in /usr
This is why you specify -DCMAKE_INSTALL_PREFIX=/usr in the cmake command. This way when you run "sudo make install" it install in /usr , overwriting the version installed by the deb. This is much better than having two install at different place.
Ekos will use your new compiled version without any other configuration.
You must replace ~/Projects/indi/libindi by the exact path where you install the indi source code. From your previous message it is projects in lowercase.
If you get other error message please copy the error text here.
OK, if you want to try to modify the driver all the documentation is here:
Start by : www.indilib.org/develop/developer-manual...ent-environment.html
For such a simple change you can probably ignore the part about QtCreator but you can use it if you prefer.
To help to understand the driver :
If you want to add more messages to the log for debugging:
As your driver is in libindi you only need to build this, no need to compile anything in 3rdparty to test the mount.
Before to change the code you must be sure this is really required.
It is normal that N/S are reversed depending on the meridian side. Normally if you move the mount on the other side of the meridian you must find that N/S work normally.
Are you sure E/W is reversed ? Do it track in the right direction? Do the mount as a Northern/Southern hemisphere setting? Is your latitude configured right at every place?
Maybe it is not necessary to change the default, this can be a bit disruptive for people that rely on this function.
I have added a note in the Eqmod documentation at the Alignment chapter:
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.
From your description it is possible this is the same problem as this one:
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.
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.
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 :
But the simulator want:
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.
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.
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.