×

INDI Library v2.0.7 is Released (01 Apr 2024)

Bi-monthly release with minor bug fixes and improvements

KStars MacOS 3.6.9 Beta

  • Posts: 2877
  • Thank you received: 812
I found this just now: forum.qt.io/topic/149842/qt-6-5-2-build-...pdate-to-macos14-sdk. This looks related to the error we encountered running the KStars I build on anything but Sonoma. From this it sounds like the issue is something with the MacOS SDK and linking QT. This is a clue for sure.
2 months 3 weeks ago #98717

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

  • Posts: 146
  • Thank you received: 16
I'm clutching at straws here but could it be a reason I can't set up a build environment on Sonoma, either on Intel or Apple Silicon?
2 months 3 weeks ago #98720

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

  • Posts: 2877
  • Thank you received: 812
If you are on an Intel machine running Sonoma there should be no problem running the script right now. I ran it a few days ago from scratch. That being said I did make a couple of changes when I found some small issues due to changes in craft and one package. So you might try it now since I fixed those problems. I can’t advise you on setting up an arm/silicon environment since my machine is Intel.
2 months 3 weeks ago #98721

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

  • Posts: 146
  • Thank you received: 16
That's great news. I tried it just now on an Intel Mac under Sonoma. It got way further than before but ultimately failed:
[38/469] Building CXX object indiserver/CMakeFiles/indiserver.dir/indiserver.cpp.o
FAILED: indiserver/CMakeFiles/indiserver.dir/indiserver.cpp.o 
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang++ -DGIT_TAG_STRING=\"v2.0.6\" -DHAVE_CLOCK_GETTIME -DHAVE_LIBNOVA -DHAVE_TIMESPEC_GET -DWITH_ENCLEN -I/Users/rfrancis/AstroRoot/craft-root/build/libs/indiserver/work/build/indiserver -I/Users/rfrancis/AstroRoot/craft-root/download/git/libs/indiserver/indiserver -I/Users/rfrancis/AstroRoot/craft-root/download/git/libs/indiserver/libs -I/Users/rfrancis/AstroRoot/craft-root/download/git/libs/indiserver/libs/httplib -I/Users/rfrancis/AstroRoot/craft-root/download/git/libs/indiserver/libs/indicore/. -I/Users/rfrancis/AstroRoot/craft-root/build/libs/indiserver/work/build/libs/indicore/../.. -I/Users/rfrancis/AstroRoot/craft-root/build/libs/indiserver/work/build/libs/indicore -isystem /Users/rfrancis/AstroRoot/craft-root/include -D_FORTIFY_SOURCE=2 -O1  -Wall -Wextra -Wno-nonnull -Wno-deprecated-declarations -g -O2 -g -DNDEBUG -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.15.sdk -mmacosx-version-min=10.15 -fPIE -std=gnu++17 -MD -MT indiserver/CMakeFiles/indiserver.dir/indiserver.cpp.o -MF indiserver/CMakeFiles/indiserver.dir/indiserver.cpp.o.d -o indiserver/CMakeFiles/indiserver.dir/indiserver.cpp.o -c /Users/rfrancis/AstroRoot/craft-root/download/git/libs/indiserver/indiserver/indiserver.cpp
/Users/rfrancis/AstroRoot/craft-root/download/git/libs/indiserver/indiserver/indiserver.cpp:2439:35: error: use of undeclared identifier 'MSG_NOSIGNAL'
        nw = sendmsg(wFd, &msgh,  MSG_NOSIGNAL);
                                  ^
1 error generated.
      ... several lines of build steps, then
ninja: build stopped: subcommand failed.
Command ['/Users/rfrancis/AstroRoot/craft-root/dev-utils/bin/ninja', '-j', '16'] failed with exit code 1
Action: make for libs/indiserver:master FAILED
*** Craft all failed: libs/indiserver after 2min 14s ***
fatal error: package libs/indiserver all failed
Craft stopped with out completing ['libs/indiserver']
I chose the default Qt5 during the Craft setup stage. Should I have chosen Qt6?
2 months 3 weeks ago #98722

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

  • Posts: 2877
  • Thank you received: 812
No, I have never tried Qt6. I don't know that everything supports that yet (such as craft, KStars, build scripts, etc).

The error you got looks a lot like a bug in INDI. Just to see if this helps, you could try this in Terminal:

cd ~/AstroRoot/craft-root/ ; source ~/AstroRoot/craft-root/craft/craftenv.sh;
craft -vi indiserver

See if it is successful. You could also specify which version like this:

craft -vi --target stable indiserver
craft -vi --target master indiserver

Maybe one of them has a bug or maybe some issue with it on your machine. This can probably be fixed.
2 months 3 weeks ago #98724

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

  • Posts: 2877
  • Thank you received: 812
I just did a search of my craft directory. I think this "MSG_NOSIGNAL" might be a part of Boost. Just an idea, it might help to install/reinstall something related to boost first:

cd ~/AstroRoot/craft-root/ ; source ~/AstroRoot/craft-root/craft/craftenv.sh;
craft -vi boost-headers
craft -vi indiserver

Not sure if boost-headers is what you need, but just a thought. I could ask Jasem or someone else, they might know.
The following user(s) said Thank You: Richard Francis
2 months 3 weeks ago #98727

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

  • Posts: 146
  • Thank you received: 16
Thanks for the help. I just got back from dinner and will try this.
2 months 3 weeks ago #98729

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

  • Posts: 146
  • Thank you received: 16
I tried the commands from your penultimate post. It failed on
craft -vi --target stable indiserver
with the same error.

Then I tried your last post. It was looking good with the first one:
craft -vi boost-headers

But it fell over with the second:
craft -vi indiserver

and with the same error:
FAILED: indiserver/CMakeFiles/indiserver.dir/indiserver.cpp.o 
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang++ -DGIT_TAG_STRING=\"v2.0.6\" -DHAVE_CLOCK_GETTIME -DHAVE_LIBNOVA -DHAVE_TIMESPEC_GET -DWITH_ENCLEN -I/Users/rfrancis/AstroRoot/craft-root/build/libs/indiserver/work/build/indiserver -I/Users/rfrancis/AstroRoot/craft-root/download/git/libs/indiserver/indiserver -I/Users/rfrancis/AstroRoot/craft-root/download/git/libs/indiserver/libs -I/Users/rfrancis/AstroRoot/craft-root/download/git/libs/indiserver/libs/httplib -I/Users/rfrancis/AstroRoot/craft-root/download/git/libs/indiserver/libs/indicore/. -I/Users/rfrancis/AstroRoot/craft-root/build/libs/indiserver/work/build/libs/indicore/../.. -I/Users/rfrancis/AstroRoot/craft-root/build/libs/indiserver/work/build/libs/indicore -isystem /Users/rfrancis/AstroRoot/craft-root/include -D_FORTIFY_SOURCE=2 -O1  -Wall -Wextra -Wno-nonnull -Wno-deprecated-declarations -g -O2 -g -DNDEBUG -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.15.sdk -mmacosx-version-min=10.15 -fPIE -std=gnu++17 -MD -MT indiserver/CMakeFiles/indiserver.dir/indiserver.cpp.o -MF indiserver/CMakeFiles/indiserver.dir/indiserver.cpp.o.d -o indiserver/CMakeFiles/indiserver.dir/indiserver.cpp.o -c /Users/rfrancis/AstroRoot/craft-root/download/git/libs/indiserver/indiserver/indiserver.cpp
/Users/rfrancis/AstroRoot/craft-root/download/git/libs/indiserver/indiserver/indiserver.cpp:2439:35: error: use of undeclared identifier 'MSG_NOSIGNAL'
        nw = sendmsg(wFd, &msgh,  MSG_NOSIGNAL);
                                  ^
1 error generated.
 
...
...
...
ninja: build stopped: subcommand failed.
Command ['/Users/rfrancis/AstroRoot/craft-root/dev-utils/bin/ninja', '-v', '-j', '16'] failed with exit code 1
Action: make for libs/indiserver:master FAILED
*** Craft all failed: libs/indiserver after 14s ***
fatal error: package libs/indiserver all failed
Craft stopped with out completing ['libs/indiserver']
It looks like I'm much closer thanks to your help, but not quite there yet.
2 months 3 weeks ago #98730

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

  • Posts: 2877
  • Thank you received: 812
Ok so that was not it then. New strategy.

I opened my indi project in QT Creator and found MSG_NOSIGNAL in the code of indiserver.cpp. I right clicked on it and said to "Follow Symbol under cursor" and it took me to Socket.h which was in my Xcode sdk in this folder:

/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/include/sys/socket.h

It is there that this symbol was defined.

#if __DARWIN_C_LEVEL >= 200809L
#define MSG_NOSIGNAL 0x80000 /* do not generate SIGPIPE on EOF */
#endif /* __DARWIN_C_LEVEL */

I checked at the top of the indiserver.cpp file and indeed it says "#include <sys/socket.h>" so this file should be included and the symbol should be defined I would think. Do you have Xcode installed on your machine with the latest SDK?
The following user(s) said Thank You: Richard Francis
2 months 3 weeks ago #98732

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

  • Posts: 146
  • Thank you received: 16
I have it on my main (Apple Silicon) machine, but the version on the Intel one is v.11.3 and can't be run under Sonoma. I'm updating it now. I'll keep you informed
2 months 3 weeks ago #98733

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

  • Posts: 146
  • Thank you received: 16
First thing to report -- that define did not exist in the X-code version 11.3 on the Intel machine. It does in the new version I downloaded. The build is ongoing. It's taking a long time, but hasn't fallen over yet. I've still got all extremities crossed !
2 months 3 weeks ago #98734

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

  • Posts: 2877
  • Thank you received: 812
I did check, the line of code that caused your error was only added to INDI about 2 years ago it seems. Fortunately, as you observed it was recently added to the MacOS SDK.
2 months 3 weeks ago #98736

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

Time to create page: 0.220 seconds