Compiling nightly on macOS

I’ve created this new topic, because the previous conversation was contaminating the thread about videos.

Ok, until now my progress was:

  • clone the repo
  • brew install intltool
  • ./autogen.sh

I receive the following error

configure.ac:33: warning: AM_NLS is m4_require'd but not m4_defun'd
m4/intltool.m4:160: IT_PROG_INTLTOOL is expanded from...
configure.ac:33: the top level
autoreconf: configure.ac: not using Libtool
autoreconf: running: /usr/local/Cellar/autoconf/2.69/bin/autoconf --force --warnings=no-portability
configure.ac:33: warning: AM_NLS is m4_require'd but not m4_defun'd
m4/intltool.m4:160: IT_PROG_INTLTOOL is expanded from...
configure.ac:33: the top level
configure:3108: error: possibly undefined macro: AM_NLS
      If this token and others are legitimate, please use m4_pattern_allow.
      See the Autoconf documentation.
autoreconf: /usr/local/Cellar/autoconf/2.69/bin/autoconf failed with exit status: 1
+ exit 1

brew link gettext

Ok, some progress and a new blocker :wink: . At the moment, I’ve accomplished a partial build following this steps:

brew link gettext --force
brew install intltool exiv2 gtk+3 fftw gsl cfitsio libconfig opencv gtk-mac-integration
./autogen.sh
make

Now, the compilation starts, the C part seems fine, but it hangs compiling one C++ source file (right now it has spend more that 10 min with a 100% CPU use by clang process)

depbase=`echo rt/boxblur.o | sed 's|[^/]*$|.deps/&|;s|\.o$||'`;\
g++ -std=c++11 -DHAVE_CONFIG_H -I. -I..  -DPACKAGE_DATA_DIR='"/usr/local/share/siril"' -DPACKAGE_DOC_DIR='"/usr/local/share/doc/siril"' -DLOCALEDIR='"/usr/local/share/locale"' -I/usr/local/Cellar/opencv/4.2.0_1/include/opencv4/opencv -I/usr/local/Cellar/opencv/4.2.0_1/include/opencv4 -I/usr/local/Cellar/ffmpeg/4.2.2_1/include -I/usr/local/Cellar/libffi/3.2.1/lib/libffi-3.2.1/include -I/usr/local/Cellar/gtk+3/3.24.12_1/include/gtk-3.0 -I/usr/local/Cellar/glib/2.62.4/include/gio-unix-2.0 -I/usr/local/Cellar/cairo/1.16.0_2/include/cairo -I/usr/local/Cellar/libepoxy/1.5.4/include -I/usr/local/Cellar/pango/1.44.7/include/pango-1.0 -I/usr/local/Cellar/fribidi/1.0.8/include/fribidi -I/usr/local/Cellar/harfbuzz/2.6.4/include/harfbuzz -I/usr/local/Cellar/graphite2/1.3.13/include -I/usr/local/Cellar/atk/2.34.1/include/atk-1.0 -I/usr/local/Cellar/cairo/1.16.0_2/include/cairo -I/usr/local/Cellar/pixman/0.38.4/include/pixman-1 -I/usr/local/Cellar/fontconfig/2.13.1/include -I/usr/local/opt/freetype/include/freetype2 -I/usr/local/Cellar/libpng/1.6.37/include/libpng16 -I/usr/local/Cellar/gdk-pixbuf/2.40.0/include/gdk-pixbuf-2.0 -I/usr/local/Cellar/glib/2.62.4/include -I/usr/local/Cellar/glib/2.62.4/include/glib-2.0 -I/usr/local/Cellar/glib/2.62.4/lib/glib-2.0/include -I/usr/local/opt/gettext/include -I/usr/local/Cellar/pcre/8.43/include -DMAC_INTEGRATION -I/usr/local/Cellar/libffi/3.2.1/lib/libffi-3.2.1/include -I/usr/local/Cellar/gtk-mac-integration/2.1.3_3/include/gtkmacintegration -I/usr/local/Cellar/gtk+3/3.24.12_1/include/gtk-3.0 -I/usr/local/Cellar/glib/2.62.4/include/gio-unix-2.0 -I/usr/local/Cellar/cairo/1.16.0_2/include/cairo -I/usr/local/Cellar/libepoxy/1.5.4/include -I/usr/local/Cellar/pango/1.44.7/include/pango-1.0 -I/usr/local/Cellar/fribidi/1.0.8/include/fribidi -I/usr/local/Cellar/harfbuzz/2.6.4/include/harfbuzz -I/usr/local/Cellar/graphite2/1.3.13/include -I/usr/local/Cellar/atk/2.34.1/include/atk-1.0 -I/usr/local/Cellar/cairo/1.16.0_2/include/cairo -I/usr/local/Cellar/pixman/0.38.4/include/pixman-1 -I/usr/local/Cellar/fontconfig/2.13.1/include -I/usr/local/opt/freetype/include/freetype2 -I/usr/local/Cellar/libpng/1.6.37/include/libpng16 -I/usr/local/Cellar/gdk-pixbuf/2.40.0/include/gdk-pixbuf-2.0 -I/usr/local/Cellar/glib/2.62.4/include -I/usr/local/Cellar/glib/2.62.4/include/glib-2.0 -I/usr/local/Cellar/glib/2.62.4/lib/glib-2.0/include -I/usr/local/opt/gettext/include -I/usr/local/Cellar/pcre/8.43/include -I/usr/local/Cellar/libtiff/4.1.0/include -I/usr/local/Cellar/libpng/1.6.37/include/libpng16 -I/usr/local/Cellar/fftw/3.3.8_1/include -I/usr/local/Cellar/cfitsio/3.470/include -I/usr/local/Cellar/gsl/2.6/include  -I/usr/local/Cellar/libconfig/1.7.2/include -I../deps/kplot   -Werror=unknown-pragmas -Werror=unused-label -fno-common -ftree-vectorize -O2  -MT rt/boxblur.o -MD -MP -MF $depbase.Tpo -c -o rt/boxblur.o rt/boxblur.cc &&\
mv -f $depbase.Tpo $depbase.Po

Before this step, I can see a couple of C++ sources compiled perfectly. Any clue about what can be going wrong?

Thanks in advance

P.D. My plan, after I’ve a compiled copy in my Mac is to make a pull request to the repo with my notes, so further Mac collaborators will have an easier on boarding and we can alleviate the noise on the forums :slight_smile:

Problem found and fixed: Xcode 11 is needed (Apple clang version 11.0.0). I was using Xcode 10.3 and it hangs. After upgrading the Xcode version, I was able to compile and run SiriL 0.99.0

Thanks for your time and support!

1 Like

Strange because we build the bundle with xcode sdk 10.9.

I’m not talking about SDK version, but compiler version. As I said, Xcode 10.3 doesn’t works, and Xcode 11.3.1 works. I’ve not made any change in configuration files.

OK, but on a old macBookPro where I compile Siril, Xcode version is 7.3

So the problem is:

  • related to Xcode 10.3 in general
  • related to my installation of Xcode 10.3 in my equipment

I’ll have the “opportunity” to check in other different macOS on a couple of days. I’ll try to build it with Xcode 10.3

I know there are some issues with homebrew (we don’t use it for the bundle).
For example, Gtk3 has a lot of issue with hombrew and is quite slow.

We can discard the “one machine, one problem”. I’ve tried to compile on a fresh installed machine with Catalina (macOS 10.15.2), using Xcode 10.3 and the compilation hangs exactly on the same file (rt/boxblur.cc)

1 Like

@rbarbera: Could you please trying to compile the float branch?
To do that, please do:

git checkout branch
git pull
git submodule update --init --recursive
./autogen.sh
make

I would like to know if it compiles with clang on macOS.

if I change branch for float ;), it works. I was able to compile, install and run this branch on macOS 10.15.3 using Xcode 10.3

1 Like

@vinvin.
Good news then. So if you did make install command after. You should have the 32b switch at the right top of the main window.

What compiler did you used? Could I see a screenshot?

Yes of course :slight_smile:

I’ve used brew to install the missing GTK icons (the standard installation doesn’t have those icons)

brew install adwaita-icon-theme

This branch (and main branch recently) has the option to run with 8 cores (the default), but if I let it run in this way, the program hangs when I try to register images. I must reduce the number of used cores to 2.

There is also a bug the debayer FITS in up-bottom orientation. This value is missing between app runs.

I think your float version is not up to date.
Also, this is an experimental version with some bugs.

About the freeze of the app. Take a look to the memory management. Maybe you could choose Unlimited to let the OS choosing for you.

Ops!, my fault. But the most recent floar branch, also compiles, install and runs

1 Like

Did you compile with clang?

Memory management has not been updated for float images, so it will not compute the correct amount of memory. I was waiting for the float conversion to settle before updating this. A lower memory amount than expected should be used to not go out of memory for now.
Thanks for the test rbarbera!