×

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

Bi-monthly release with minor bug fixes and improvements

[SOLVED] Error when compiling from source on RPi3

  • Posts: 69
  • Thank you received: 12
Hello all

I got the following errors when compiling from sources on RPi3. I use revision 2706.. Please advise

[ 77%] Built target indi_watchdog
Scanning dependencies of target indi_wunderground_weather
[ 78%] Building CXX object CMakeFiles/indi_wunderground_weather.dir/drivers/weather/gason.cpp.o
In file included from /home/pi/INDI/libindi/drivers/weather/gason.cpp:24:
/home/pi/INDI/libindi/drivers/weather/gason.h:54: error: ‘nullptr’ was not declared in this scope
/home/pi/INDI/libindi/drivers/weather/gason.h: In function ‘JsonIterator end(JsonValue)’:
/home/pi/INDI/libindi/drivers/weather/gason.h:109: error: ‘nullptr’ was not declared in this scope
/home/pi/INDI/libindi/drivers/weather/gason.h: At global scope:
/home/pi/INDI/libindi/drivers/weather/gason.h:137: error: ‘nullptr’ was not declared in this scope
/home/pi/INDI/libindi/drivers/weather/gason.h:137: error: ISO C++ forbids initialization of member ‘head’
/home/pi/INDI/libindi/drivers/weather/gason.h:137: error: making ‘head’ static
/home/pi/INDI/libindi/drivers/weather/gason.h:137: error: invalid in-class initialization of static data member of non-integral type ‘JsonAllocator::Zone*’
/home/pi/INDI/libindi/drivers/weather/gason.h: In constructor ‘JsonAllocator::JsonAllocator(JsonAllocator&&)’:
/home/pi/INDI/libindi/drivers/weather/gason.h:143: error: class ‘JsonAllocator’ does not have any field named ‘head’
/home/pi/INDI/libindi/drivers/weather/gason.h:143: error: ‘class JsonAllocator’ has no member named ‘head’
/home/pi/INDI/libindi/drivers/weather/gason.h:144: error: ‘class JsonAllocator’ has no member named ‘head’
/home/pi/INDI/libindi/drivers/weather/gason.h:144: error: ‘nullptr’ was not declared in this scope
/home/pi/INDI/libindi/drivers/weather/gason.h: In member function ‘JsonAllocator& JsonAllocator::operator=(JsonAllocator&&)’:
/home/pi/INDI/libindi/drivers/weather/gason.h:147: error: ‘head’ was not declared in this scope
/home/pi/INDI/libindi/drivers/weather/gason.h:147: error: ‘class JsonAllocator’ has no member named ‘head’
/home/pi/INDI/libindi/drivers/weather/gason.h:148: error: ‘class JsonAllocator’ has no member named ‘head’
/home/pi/INDI/libindi/drivers/weather/gason.h:148: error: ‘nullptr’ was not declared in this scope
/home/pi/INDI/libindi/drivers/weather/gason.cpp: In member function ‘void* JsonAllocator::allocate(size_t)’:
/home/pi/INDI/libindi/drivers/weather/gason.cpp:45: error: ‘head’ was not declared in this scope
/home/pi/INDI/libindi/drivers/weather/gason.cpp:53: error: ‘nullptr’ was not declared in this scope
/home/pi/INDI/libindi/drivers/weather/gason.cpp:56: error: ‘head’ was not declared in this scope
/home/pi/INDI/libindi/drivers/weather/gason.cpp:56: error: ‘nullptr’ was not declared in this scope
/home/pi/INDI/libindi/drivers/weather/gason.cpp: In member function ‘void JsonAllocator::deallocate()’:
/home/pi/INDI/libindi/drivers/weather/gason.cpp:67: error: ‘head’ was not declared in this scope
/home/pi/INDI/libindi/drivers/weather/gason.cpp: In function ‘JsonValue listToValue(JsonTag, JsonNode*)’:
/home/pi/INDI/libindi/drivers/weather/gason.cpp:153: error: ‘nullptr’ was not declared in this scope
/home/pi/INDI/libindi/drivers/weather/gason.cpp:156: error: ‘nullptr’ was not declared in this scope
/home/pi/INDI/libindi/drivers/weather/gason.cpp: In function ‘int jsonParse(char*, char**, JsonValue*, JsonAllocator&)’:
/home/pi/INDI/libindi/drivers/weather/gason.cpp:163: error: the default argument for parameter 1 of ‘JsonValue::JsonValue(JsonTag, void*)’ has not yet been parsed
/home/pi/INDI/libindi/drivers/weather/gason.cpp:266: error: the default argument for parameter 1 of ‘JsonValue::JsonValue(JsonTag, void*)’ has not yet been parsed
/home/pi/INDI/libindi/drivers/weather/gason.cpp:272: error: the default argument for parameter 1 of ‘JsonValue::JsonValue(JsonTag, void*)’ has not yet been parsed
/home/pi/INDI/libindi/drivers/weather/gason.cpp:278: error: the default argument for parameter 1 of ‘JsonValue::JsonValue(JsonTag, void*)’ has not yet been parsed
/home/pi/INDI/libindi/drivers/weather/gason.cpp:293: error: ‘nullptr’ was not declared in this scope
/home/pi/INDI/libindi/drivers/weather/gason.cpp:300: error: ‘nullptr’ was not declared in this scope
/home/pi/INDI/libindi/drivers/weather/gason.cpp:344: error: ‘nullptr’ was not declared in this scope
/home/pi/INDI/libindi/drivers/weather/gason.cpp:348: error: ‘nullptr’ was not declared in this scope
/home/pi/INDI/libindi/drivers/weather/gason.cpp:350: error: ‘nullptr’ was not declared in this scope
CMakeFiles/indi_wunderground_weather.dir/build.make:54: recipe for target 'CMakeFiles/indi_wunderground_weather.dir/drivers/weather/gason.cpp.o' failed
make[2]: *** [CMakeFiles/indi_wunderground_weather.dir/drivers/weather/gason.cpp.o] Error 1
CMakeFiles/Makefile2:1466: recipe for target 'CMakeFiles/indi_wunderground_weather.dir/all' failed
make[1]: *** [CMakeFiles/indi_wunderground_weather.dir/all] Error 2
Makefile:117: recipe for target 'all' failed
make: *** [all] Error 2


Thanks.
Anat
Last edit: 8 years 5 days ago by anat.
8 years 5 days ago #7403

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

Are you compiling from SVN?
8 years 3 days ago #7418

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

  • Posts: 69
  • Thank you received: 12
Yes. I follow the step "3. Building INDI from Source" in
indilib.org/forum/general/210-howto-buil...st-libindi-ekos.html
and get the errors.

Anat
Last edit: 8 years 3 days ago by anat.
8 years 3 days ago #7420

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

  • Posts: 314
  • Thank you received: 95
The following instructions are only applicable to desktop Linux. For Raspberry PI, download the daily-built Raspberry PI package.
You can try my open project Astronomy Linux
8 years 3 days ago #7424

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

  • Posts: 69
  • Thank you received: 12
I want to compile INDI for armv7. I believe the binary was compile for armv6 since it works for both RPi and RPi2.

Anat
8 years 3 days ago #7425

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

  • Posts: 69
  • Thank you received: 12
Any instruction to compule libindi on RPi ? Thanks.
Anat
8 years 22 hours ago #7456

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

  • Posts: 173
  • Thank you received: 19
I compiled on the RPI2 and had to delete the cmake cache file and set gcc-4.9 compiler as default....I don't know if this is applicable to you or not.

--Jon
8 years 19 hours ago #7457

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

  • Posts: 69
  • Thank you received: 12
Jon

Thanks. The steps for RPi2 and RPi3 should be the same. Could you please elaborate more on "delete the cmake cache file " ? Thank you.

Anat
8 years 10 hours ago #7461

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

What is the GCC version? Are you using Jessie?
8 years 4 hours ago #7462

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

  • Posts: 69
  • Thank you received: 12
Thanks. After using gcc-4.9, I could successfully compile INDI on RPi3 with Jessie Lite. The steps are as follows:

sudo apt-get install libnova-dev libcfitsio3-dev libusb-1.0-0-dev zlib1g-dev subversion libgsl0-dev build-essential cmake git libjpeg-dev libcurl4-gnutls-dev

cd /home/pi/
mkdir INDI
mkdir INDI/build
mkdir INDI/build/libindi
cd INDI
svn co svn://svn.code.sf.net/p/indi/code/trunk/libindi
cd build/libindi
cmake -DCMAKE_INSTALL_PREFIX=/usr -DCMAKE_BUILD_TYPE=Debug /home/pi/INDI/libindi
sudo make install

cd /home/pi/INDI/
svn co svn://svn.code.sf.net/p/indi/code/trunk/3rdparty
cd 3rdparty

cd indi-qsi
cmake -DCMAKE_INSTALL_PREFIX=/usr -DCMAKE_BUILD_TYPE=Debug
sudo make install
The following user(s) said Thank You: Jasem Mutlaq
Last edit: 8 years 2 hours ago by anat.
8 years 2 hours ago #7468

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

  • Posts: 69
  • Thank you received: 12
I got the problem when compiling 3rd party. I already installed requred drivers before "sudo make install" Please advise.


[ 56%] Building CXX object indi-qsi/CMakeFiles/indi_qsi_ccd.dir/qsi_ccd.o
Linking CXX executable indi_qsi_ccd
[ 56%] Built target indi_qsi_ccd
Scanning dependencies of target indi_sbig_ccd
[ 58%] Building CXX object indi-sbig/CMakeFiles/indi_sbig_ccd.dir/sbig_ccd.cpp.o
In file included from /home/pi/INDI/3rdparty/indi-sbig/sbig_ccd.h:35:0,
from /home/pi/INDI/3rdparty/indi-sbig/sbig_ccd.cpp:48:
/usr/include/sbigudrv.h:1643:31: error: expected initializer before ‘SBIGUnivDrvCommand’
extern "C" short __stdcall SBIGUnivDrvCommand(short command, void *Params, void *pResults);
^
/home/pi/INDI/3rdparty/indi-sbig/sbig_ccd.cpp: In member function ‘int SBIGCCD::OpenDriver()’:
/home/pi/INDI/3rdparty/indi-sbig/sbig_ccd.cpp:209:15: error: ‘::SBIGUnivDrvCommand’ has not been dclared
if((res = ::SBIGUnivDrvCommand(CC_OPEN_DRIVER, 0, 0)) == CE_NO_ERROR)
^
/home/pi/INDI/3rdparty/indi-sbig/sbig_ccd.cpp:212:15: error: ‘::SBIGUnivDrvCommand’ has not been dclared
res = ::SBIGUnivDrvCommand(CC_GET_DRIVER_HANDLE, 0, &gdhr);
^
/home/pi/INDI/3rdparty/indi-sbig/sbig_ccd.cpp:219:15: error: ‘::SBIGUnivDrvCommand’ has not been dclared
res = ::SBIGUnivDrvCommand(CC_SET_DRIVER_HANDLE, &sdhp, 0);
^
/home/pi/INDI/3rdparty/indi-sbig/sbig_ccd.cpp:222:27: error: ‘::SBIGUnivDrvCommand’ has not been dclared
if((res = ::SBIGUnivDrvCommand(CC_OPEN_DRIVER, 0, 0)) == CE_NO_ERROR)
^
/home/pi/INDI/3rdparty/indi-sbig/sbig_ccd.cpp:224:31: error: ‘::SBIGUnivDrvCommand’ has not been dclared
res = ::SBIGUnivDrvCommand(CC_GET_DRIVER_HANDLE, 0, &gdhr);
^
/home/pi/INDI/3rdparty/indi-sbig/sbig_ccd.cpp: In member function ‘int SBIGCCD::CloseDriver()’:
/home/pi/INDI/3rdparty/indi-sbig/sbig_ccd.cpp:236:15: error: ‘::SBIGUnivDrvCommand’ has not been dclared
if((res = ::SBIGUnivDrvCommand(CC_CLOSE_DRIVER, 0, 0)) == CE_NO_ERROR){
^
/home/pi/INDI/3rdparty/indi-sbig/sbig_ccd.cpp: In member function ‘int SBIGCCD::SBIGUnivDrvCommandPAR_COMMAND, void*, void*)’:
/home/pi/INDI/3rdparty/indi-sbig/sbig_ccd.cpp:2045:19: error: ‘::SBIGUnivDrvCommand’ has not been eclared
res = ::SBIGUnivDrvCommand(CC_SET_DRIVER_HANDLE, &sdhp, 0);
^
/home/pi/INDI/3rdparty/indi-sbig/sbig_ccd.cpp:2047:23: error: ‘CE_FAKE_DRIVER’ was not declared inthis scope
if(res == CE_FAKE_DRIVER)
^
/home/pi/INDI/3rdparty/indi-sbig/sbig_ccd.cpp:2055:27: error: ‘::SBIGUnivDrvCommand’ has not been eclared
res = ::SBIGUnivDrvCommand(command, params, results);
^
indi-sbig/CMakeFiles/indi_sbig_ccd.dir/build.make:54: recipe for target 'indi-sbig/CMakeFiles/indisbig_ccd.dir/sbig_ccd.cpp.o' failed
make[2]: *** [indi-sbig/CMakeFiles/indi_sbig_ccd.dir/sbig_ccd.cpp.o] Error 1
CMakeFiles/Makefile2:523: recipe for target 'indi-sbig/CMakeFiles/indi_sbig_ccd.dir/all' failed
make[1]: *** [indi-sbig/CMakeFiles/indi_sbig_ccd.dir/all] Error 2
Makefile:137: recipe for target 'all' failed
make: *** [all] Error 2
root@iAstroHub:/home/pi/INDI/3rdparty#
7 years 11 months ago #7476

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

yeah you need to sudo make install first in sbig directory then indi-sbig
7 years 11 months ago #7477

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

Time to create page: 1.524 seconds