Hi all,
I'm trying to install 3rd party drivers on Debian 12, including the ZWO Asi ones.
IndiServer is already installed (after compilation, without problem).
To install ASI drivers, I first built the ASI Library using this (in a folder named ~/Projects/indi-3rdparty-libs/libasi) :
cmake -DCMAKE_INSTALL_PREFIX=/usr -DCMAKE_BUILD_TYPE=Debug -DBUIL_LIBS=1 ~/Projects/indi-3rdparty/libasi
make -j4
make install
vincent@telescope:~/Projects/build/indi-asi$ cmake -DCMAKE_INSTALL_PREFIX=/usr -DCMAKE_BUILD_TYPE=Debug ~/Projects/indi-3rdparty/indi-asi
-- The CXX compiler identification is GNU 12.2.0
-- The C compiler identification is GNU 12.2.0
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Check for working CXX compiler: /usr/bin/c++ - skipped
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Check for working C compiler: /usr/bin/cc - skipped
-- Detecting C compile features
-- Detecting C compile features - done
-- Found ASI: /usr/lib/x86_64-linux-gnu/libASICamera2.so;/usr/lib/x86_64-linux-gnu/libEFWFilter.so;/usr/lib/x86_64-linux-gnu/libUSB2ST4Conv.so;/usr/lib/x86_64-linux-gnu/libEAFFocuser.so
-- Found CFITSIO 4.2.0: /usr/lib/x86_64-linux-gnu/libcfitsio.so
-- Found INDI: /usr/lib/x86_64-linux-gnu/libindidriver.so;/usr/lib/x86_64-linux-gnu/libindiAlignmentDriver.so (found version "1.9.9")
-- Found ZLIB: /usr/lib/x86_64-linux-gnu/libz.so (found version "1.2.13")
-- Found PkgConfig: /usr/bin/pkg-config (found version "1.8.1")
-- Found USB1: /usr/lib/x86_64-linux-gnu/libusb-1.0.so (found version "1.0.26")
-- Performing Test USB1_HAS_LIBUSB_ERROR_NAME
-- Performing Test USB1_HAS_LIBUSB_ERROR_NAME - Success
-- Performing Test CMAKE_HAVE_LIBC_PTHREAD
-- Performing Test CMAKE_HAVE_LIBC_PTHREAD - Success
-- Found Threads: TRUE
-- Performing Test COMPATIBLE_FORTIFY_SOURCE
-- Performing Test COMPATIBLE_FORTIFY_SOURCE - Success
-- Configuring done
-- Generating done
-- Build files have been written to: /home/vincent/Projects/build/indi-asi
vincent@telescope:~/Projects/build/indi-asi$ make -j4
[ 7%] Building CXX object CMakeFiles/indi_asi_ccd.dir/asi_base.cpp.o
[ 14%] Building CXX object CMakeFiles/indi_asi_single_ccd.dir/asi_base.cpp.o
[ 21%] Building CXX object CMakeFiles/indi_asi_st4.dir/asi_st4.cpp.o
[ 28%] Building CXX object CMakeFiles/indi_asi_wheel.dir/asi_wheel.cpp.o
In file included from /home/vincent/Projects/indi-3rdparty/indi-asi/asi_base.cpp:23:
/home/vincent/Projects/indi-3rdparty/indi-asi/asi_base.h:76:83: error: ‘FITSRecord’ is not a member of ‘INDI’
76 | virtual void addFITSKeywords(INDI::CCDChip *targetChip, std::vector<INDI::FITSRecord> &fitsKeywords) override;
| ^~~~~~~~~~
/home/vincent/Projects/indi-3rdparty/indi-asi/asi_base.h:76:83: error: ‘FITSRecord’ is not a member of ‘INDI’
/home/vincent/Projects/indi-3rdparty/indi-asi/asi_base.h:76:93: error: template argument 1 is invalid
76 | virtual void addFITSKeywords(INDI::CCDChip *targetChip, std::vector<INDI::FITSRecord> &fitsKeywords) override;
| ^
In file included from /home/vincent/Projects/indi-3rdparty/indi-asi/asi_base.cpp:23:
/home/vincent/Projects/indi-3rdparty/indi-asi/asi_base.h:76:83: error: ‘FITSRecord’ is not a member of ‘INDI’
76 | ddFITSKeywords(INDI::CCDChip *targetChip, std::vector<INDI::FITSRecord> &fitsKeywords) override;
| ^~~~~~~~~~
/home/vincent/Projects/indi-3rdparty/indi-asi/asi_base.h:76:93: error: template argument 2 is invalid
/home/vincent/Projects/indi-3rdparty/indi-asi/asi_base.h:76:83: error: ‘FITSRecord’ is not a member of ‘INDI’
/home/vincent/Projects/indi-3rdparty/indi-asi/asi_base.h:76:93: error: template argument 1 is invalid
76 | ords(INDI::CCDChip *targetChip, std::vector<INDI::FITSRecord> &fitsKeywords) override;
| ^
/home/vincent/Projects/indi-3rdparty/indi-asi/asi_base.h:76:93: error: template argument 2 is invalid
/home/vincent/Projects/indi-3rdparty/indi-asi/asi_base.h:76:22: error: ‘virtual void ASIBase::addFITSKeywords(INDI::CCDChip*, int&)’ marked ‘override’, but does not override
76 | virtual void addFITSKeywords(INDI::CCDChip *targetChip, std::vector<INDI::FITSRecord> &fitsKeywords) override;
| ^~~~~~~~~~~~~~~
/home/vincent/Projects/indi-3rdparty/indi-asi/asi_base.h:76:22: error: ‘virtual void ASIBase::addFITSKeywords(INDI::CCDChip*, int&)’ marked ‘override’, but does not override
76 | virtual void addFITSKeywords(INDI::CCDChip *targetChip, std::vector<INDI::FITSRecord> &fitsKeywords) override;
| ^~~~~~~~~~~~~~~
[ 35%] Linking CXX executable indi_asi_st4
[ 42%] Linking CXX executable indi_asi_wheel
/home/vincent/Projects/indi-3rdparty/indi-asi/asi_base.cpp:1520:76: error: ‘FITSRecord’ is not a member of ‘INDI’
1520 | void ASIBase::addFITSKeywords(INDI::CCDChip *targetChip, std::vector<INDI::FITSRecord> &fitsKeywords)
| ^~~~~~~~~~
/home/vincent/Projects/indi-3rdparty/indi-asi/asi_base.cpp:1520:76: error: ‘FITSRecord’ is not a member of ‘INDI’
/home/vincent/Projects/indi-3rdparty/indi-asi/asi_base.cpp:1520:86: error: template argument 1 is invalid
1520 | void ASIBase::addFITSKeywords(INDI::CCDChip *targetChip, std::vector<INDI::FITSRecord> &fitsKeywords)
| ^
/home/vincent/Projects/indi-3rdparty/indi-asi/asi_base.cpp:1520:86: error: template argument 2 is invalid
/home/vincent/Projects/indi-3rdparty/indi-asi/asi_base.cpp: In member function ‘virtual void ASIBase::addFITSKeywords(INDI::CCDChip*, int&)’:
/home/vincent/Projects/indi-3rdparty/indi-asi/asi_base.cpp:1522:31: error: no matching function for call to ‘ASIBase::addFITSKeywords(INDI::CCDChip*&, int&)’
1522 | INDI::CCD::addFITSKeywords(targetChip, fitsKeywords);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from /home/vincent/Projects/indi-3rdparty/indi-asi/asi_base.h:34:
/usr/include/libindi/indiccd.h:508:22: note: candidate: ‘virtual void INDI::CCD::addFITSKeywords(INDI::CCDChip*)’
508 | virtual void addFITSKeywords(CCDChip * targetChip);
| ^~~~~~~~~~~~~~~
/usr/include/libindi/indiccd.h:508:22: note: candidate expects 1 argument, 2 provided
/home/vincent/Projects/indi-3rdparty/indi-asi/asi_base.cpp:1528:22: error: request for member ‘push_back’ in ‘fitsKeywords’, which is of non-class type ‘int’
1528 | fitsKeywords.push_back({"GAIN", np->value, 3, "Gain"});
| ^~~~~~~~~
/home/vincent/Projects/indi-3rdparty/indi-asi/asi_base.cpp:1534:22: error: request for member ‘push_back’ in ‘fitsKeywords’, which is of non-class type ‘int’
1534 | fitsKeywords.push_back({"OFFSET", np->value, 3, "Offset"});
| ^~~~~~~~~
/home/vincent/Projects/indi-3rdparty/indi-asi/asi_base.cpp:1520:76: error: ‘FITSRecord’ is not a member of ‘INDI’
1520 | ddFITSKeywords(INDI::CCDChip *targetChip, std::vector<INDI::FITSRecord> &fitsKeywords)
| ^~~~~~~~~~
/home/vincent/Projects/indi-3rdparty/indi-asi/asi_base.cpp:1520:76: error: ‘FITSRecord’ is not a member of ‘INDI’
/home/vincent/Projects/indi-3rdparty/indi-asi/asi_base.cpp:1520:86: error: template argument 1 is invalid
1520 | ords(INDI::CCDChip *targetChip, std::vector<INDI::FITSRecord> &fitsKeywords)
| ^
/home/vincent/Projects/indi-3rdparty/indi-asi/asi_base.cpp:1520:86: error: template argument 2 is invalid
/home/vincent/Projects/indi-3rdparty/indi-asi/asi_base.cpp: In member function ‘virtual void ASIBase::addFITSKeywords(INDI::CCDChip*, int&)’:
/home/vincent/Projects/indi-3rdparty/indi-asi/asi_base.cpp:1522:31: error: no matching function for call to ‘ASIBase::addFITSKeywords(INDI::CCDChip*&, int&)’
1522 | INDI::CCD::addFITSKeywords(targetChip, fitsKeywords);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from /home/vincent/Projects/indi-3rdparty/indi-asi/asi_base.h:34:
/usr/include/libindi/indiccd.h:508:22: note: candidate: ‘virtual void INDI::CCD::addFITSKeywords(INDI::CCDChip*)’
508 | virtual void addFITSKeywords(CCDChip * targetChip);
| ^~~~~~~~~~~~~~~
/usr/include/libindi/indiccd.h:508:22: note: candidate expects 1 argument, 2 provided
/home/vincent/Projects/indi-3rdparty/indi-asi/asi_base.cpp:1528:22: error: request for member ‘push_back’ in ‘fitsKeywords’, which is of non-class type ‘int’
1528 | fitsKeywords.push_back({"GAIN", np->value, 3, "Gain"});
| ^~~~~~~~~
/home/vincent/Projects/indi-3rdparty/indi-asi/asi_base.cpp:1534:22: error: request for member ‘push_back’ in ‘fitsKeywords’, which is of non-class type ‘int’
1534 | fitsKeywords.push_back({"OFFSET", np->value, 3, "Offset"});
| ^~~~~~~~~
[ 42%] Built target indi_asi_st4
[ 42%] Built target indi_asi_wheel
[ 50%] Building CXX object CMakeFiles/indi_asi_focuser.dir/asi_focuser.cpp.o
[ 57%] Building CXX object CMakeFiles/asi_camera_test.dir/asi_camera_test.cpp.o
make[2]: *** [CMakeFiles/indi_asi_single_ccd.dir/build.make:76 : CMakeFiles/indi_asi_single_ccd.dir/asi_base.cpp.o] Erreur 1
make[1]: *** [CMakeFiles/Makefile2:119 : CMakeFiles/indi_asi_single_ccd.dir/all] Erreur 2
make[1]: *** Attente des tâches non terminées....
[ 64%] Building CXX object CMakeFiles/indi_asi_ccd.dir/asi_ccd.cpp.o
make[2]: *** [CMakeFiles/indi_asi_ccd.dir/build.make:76 : CMakeFiles/indi_asi_ccd.dir/asi_base.cpp.o] Erreur 1
make[2]: *** Attente des tâches non terminées....
[ 71%] Linking CXX executable asi_camera_test
[ 71%] Built target asi_camera_test
In file included from /home/vincent/Projects/indi-3rdparty/indi-asi/asi_ccd.h:25,
from /home/vincent/Projects/indi-3rdparty/indi-asi/asi_ccd.cpp:23:
/home/vincent/Projects/indi-3rdparty/indi-asi/asi_base.h:76:83: error: ‘FITSRecord’ is not a member of ‘INDI’
76 | ddFITSKeywords(INDI::CCDChip *targetChip, std::vector<INDI::FITSRecord> &fitsKeywords) override;
| ^~~~~~~~~~
/home/vincent/Projects/indi-3rdparty/indi-asi/asi_base.h:76:83: error: ‘FITSRecord’ is not a member of ‘INDI’
/home/vincent/Projects/indi-3rdparty/indi-asi/asi_base.h:76:93: error: template argument 1 is invalid
76 | ords(INDI::CCDChip *targetChip, std::vector<INDI::FITSRecord> &fitsKeywords) override;
| ^
/home/vincent/Projects/indi-3rdparty/indi-asi/asi_base.h:76:93: error: template argument 2 is invalid
/home/vincent/Projects/indi-3rdparty/indi-asi/asi_base.h:76:22: error: ‘virtual void ASIBase::addFITSKeywords(INDI::CCDChip*, int&)’ marked ‘override’, but does not override
76 | virtual void addFITSKeywords(INDI::CCDChip *targetChip, std::vector<INDI::FITSRecord> &fitsKeywords) override;
| ^~~~~~~~~~~~~~~
[ 78%] Linking CXX executable indi_asi_focuser
make[2]: *** [CMakeFiles/indi_asi_ccd.dir/build.make:90 : CMakeFiles/indi_asi_ccd.dir/asi_ccd.cpp.o] Erreur 1
make[1]: *** [CMakeFiles/Makefile2:93 : CMakeFiles/indi_asi_ccd.dir/all] Erreur 2
[ 78%] Built target indi_asi_focuser
make: *** [Makefile:136 : all] Erreur 2