Hi Nebulasaurus.

I tried upping my swapspace to 1024mb using this thread www.bitpi.co/2015/02/11/how-to-change-ra...ile-size-on-rasbian/
But I still have the same issue.

I then tried compiling with the 'make -j2' mentioned in the other thread that I linked to in the former post.
This makes cmake continue past the first linking error. It then compiles 16% of the lib, but then crashes with the same segfault when trying to link libindidriver.so.

Here's the full output.

pi:~/Projects/build/indi-core $ make -j2
Scanning dependencies of target indi_eval
Scanning dependencies of target indidriver
[  0%] Building C object CMakeFiles/indi_eval.dir/eventloop.c.o
[  0%] Building C object CMakeFiles/indi_eval.dir/base64.c.o
[  0%] Building C object CMakeFiles/indidriver.dir/indidriver.c.o
[  0%] Building C object CMakeFiles/indidriver.dir/indidrivermain.c.o
[  0%] Building C object CMakeFiles/indi_eval.dir/tools/compiler.c.o
[  1%] Building C object CMakeFiles/indi_eval.dir/tools/evalINDI.c.o
[  2%] Building C object CMakeFiles/indidriver.dir/eventloop.c.o
[  2%] Building C object CMakeFiles/indidriver.dir/libs/lilxml.c.o
[  2%] Building C object CMakeFiles/indidriver.dir/base64.c.o
[  2%] Building C object CMakeFiles/indidriver.dir/libs/dsp/align.c.o
[  2%] Building C object CMakeFiles/indi_eval.dir/libs/lilxml.c.o
[  3%] Building C object CMakeFiles/indidriver.dir/libs/dsp/buffer.c.o
[  3%] Building CXX object CMakeFiles/indi_eval.dir/libs/libastro.cpp.o
[  3%] Building C object CMakeFiles/indidriver.dir/libs/dsp/convert.c.o
[  3%] Building C object CMakeFiles/indi_eval.dir/libs/indicom.c.o
[  3%] Building C object CMakeFiles/indidriver.dir/libs/dsp/fft.c.o
[  3%] Building C object CMakeFiles/indidriver.dir/libs/dsp/filters.c.o
[  3%] Linking CXX executable indi_eval
[  3%] Building C object CMakeFiles/indidriver.dir/libs/dsp/signals.c.o
collect2: fatal error: ld terminated with signal 11 [Segmentation fault]
compilation terminated.
make[2]: *** [CMakeFiles/indi_eval.dir/build.make:177: indi_eval] Error 1
make[2]: *** Deleting file 'indi_eval'
make[1]: *** [CMakeFiles/Makefile2:73: CMakeFiles/indi_eval.dir/all] Error 2
make[1]: *** Waiting for unfinished jobs....
[  4%] Building C object CMakeFiles/indidriver.dir/libs/dsp/convolution.c.o
[  4%] Building C object CMakeFiles/indidriver.dir/libs/dsp/stats.c.o
[  4%] Building C object CMakeFiles/indidriver.dir/libs/dsp/stream.c.o
[  4%] Building C object CMakeFiles/indidriver.dir/libs/fpack/fpack.c.o
[  4%] Building C object CMakeFiles/indidriver.dir/libs/fpack/fpackutil.c.o
[  5%] Building CXX object CMakeFiles/indidriver.dir/libs/libastro.cpp.o
[  5%] Building C object CMakeFiles/indidriver.dir/libs/indicom.c.o
[  5%] Building CXX object CMakeFiles/indidriver.dir/libs/indibase/basedevice.cpp.o
[  5%] Building CXX object CMakeFiles/indidriver.dir/libs/indibase/defaultdevice.cpp.o
[  6%] Building CXX object CMakeFiles/indidriver.dir/libs/indibase/indiproperty.cpp.o
[  6%] Building CXX object CMakeFiles/indidriver.dir/libs/indibase/indiccd.cpp.o
[  6%] Building CXX object CMakeFiles/indidriver.dir/libs/indibase/indiccdchip.cpp.o
[  6%] Building CXX object CMakeFiles/indidriver.dir/libs/indibase/indisensorinterface.cpp.o
/Projects/indi/libs/indibase/indiccd.cpp: In member function ‘bool INDI::CCD::uploadFile(INDI::CCDChip*, const void*, size_t, bool, bool)’:
/Projects/indi/libs/indibase/indiccd.cpp:2819:20: warning: ‘char* strncat(char*, const char*, size_t)’ specified bound 3 equals source length [-Wstringop-overflow=]
             strncat(filename, ".fz", 3);
             ~~~~~~~^~~~~~~~~~~~~~~~~~~~
[  7%] Building CXX object CMakeFiles/indidriver.dir/libs/indibase/indicorrelator.cpp.o
[  7%] Building CXX object CMakeFiles/indidriver.dir/libs/indibase/indidetector.cpp.o
[  7%] Building CXX object CMakeFiles/indidriver.dir/libs/indibase/indispectrograph.cpp.o
[  7%] Building CXX object CMakeFiles/indidriver.dir/libs/indibase/inditelescope.cpp.o
[  7%] Building CXX object CMakeFiles/indidriver.dir/libs/indibase/indifilterwheel.cpp.o
[  7%] Building CXX object CMakeFiles/indidriver.dir/libs/indibase/indifocuserinterface.cpp.o
[  8%] Building CXX object CMakeFiles/indidriver.dir/libs/indibase/indiweatherinterface.cpp.o
[  8%] Building CXX object CMakeFiles/indidriver.dir/libs/indibase/indifocuser.cpp.o
[  8%] Building CXX object CMakeFiles/indidriver.dir/libs/indibase/indirotator.cpp.o
[  8%] Building CXX object CMakeFiles/indidriver.dir/libs/indibase/indiusbdevice.cpp.o
[  8%] Building CXX object CMakeFiles/indidriver.dir/libs/indibase/indiguiderinterface.cpp.o
[  9%] Building CXX object CMakeFiles/indidriver.dir/libs/indibase/indifilterinterface.cpp.o
[  9%] Building CXX object CMakeFiles/indidriver.dir/libs/indibase/indirotatorinterface.cpp.o
[  9%] Building CXX object CMakeFiles/indidriver.dir/libs/indibase/indidome.cpp.o
[  9%] Building CXX object CMakeFiles/indidriver.dir/libs/indibase/indigps.cpp.o
[ 10%] Building CXX object CMakeFiles/indidriver.dir/libs/indibase/indiweather.cpp.o
[ 10%] Building CXX object CMakeFiles/indidriver.dir/libs/indibase/indidustcapinterface.cpp.o
[ 10%] Building CXX object CMakeFiles/indidriver.dir/libs/indibase/indilightboxinterface.cpp.o
[ 10%] Building CXX object CMakeFiles/indidriver.dir/libs/indibase/indilogger.cpp.o
[ 10%] Building CXX object CMakeFiles/indidriver.dir/libs/indibase/indicontroller.cpp.o
[ 11%] Building CXX object CMakeFiles/indidriver.dir/libs/indibase/indistandardproperty.cpp.o
[ 11%] Building CXX object CMakeFiles/indidriver.dir/libs/indibase/connectionplugins/connectioninterface.cpp.o
[ 11%] Building CXX object CMakeFiles/indidriver.dir/libs/indibase/connectionplugins/connectionserial.cpp.o
[ 11%] Building CXX object CMakeFiles/indidriver.dir/libs/indibase/connectionplugins/connectiontcp.cpp.o
[ 11%] Building CXX object CMakeFiles/indidriver.dir/libs/indibase/dsp/manager.cpp.o
[ 12%] Building CXX object CMakeFiles/indidriver.dir/libs/indibase/dsp/dspinterface.cpp.o
[ 12%] Building CXX object CMakeFiles/indidriver.dir/libs/indibase/dsp/transforms.cpp.o
[ 12%] Building CXX object CMakeFiles/indidriver.dir/libs/indibase/dsp/convolution.cpp.o
[ 12%] Building CXX object CMakeFiles/indidriver.dir/libs/indibase/pid/pid.cpp.o
[ 13%] Building C object CMakeFiles/indidriver.dir/libs/stream/jpegutils.c.o
[ 13%] Building C object CMakeFiles/indidriver.dir/libs/stream/ccvt_c2.c.o
[ 13%] Building C object CMakeFiles/indidriver.dir/libs/stream/ccvt_misc.c.o
[ 13%] Building CXX object CMakeFiles/indidriver.dir/libs/stream/streammanager.cpp.o
[ 13%] Building CXX object CMakeFiles/indidriver.dir/libs/stream/recorder/recorderinterface.cpp.o
[ 14%] Building CXX object CMakeFiles/indidriver.dir/libs/stream/recorder/recordermanager.cpp.o
[ 14%] Building CXX object CMakeFiles/indidriver.dir/libs/stream/recorder/serrecorder.cpp.o
/Projects/indi/libs/stream/recorder/serrecorder.cpp: In constructor ‘INDI::SER_Recorder::SER_Recorder()’:
/Projects/indi/libs/stream/recorder/serrecorder.cpp:45:12: warning: ‘char* strncpy(char*, const char*, size_t)’ output truncated before terminating nul copying 14 bytes from a string of the same length [-Wstringop-truncation]
     strncpy(serh.FileID, "LUCAM-RECORDER", 14);
     ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/Projects/indi/libs/stream/recorder/serrecorder.cpp:46:12: warning: ‘char* strncpy(char*, const char*, size_t)’ output truncated before terminating nul copying 40 bytes from a string of the same length [-Wstringop-truncation]
     strncpy(serh.Observer, "                        Unknown Observer", 40);
     ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/Projects/indi/libs/stream/recorder/serrecorder.cpp:47:12: warning: ‘char* strncpy(char*, const char*, size_t)’ output truncated before terminating nul copying 40 bytes from a string of the same length [-Wstringop-truncation]
     strncpy(serh.Instrume, "                      Unknown Instrument", 40);
     ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/Projects/indi/libs/stream/recorder/serrecorder.cpp:48:12: warning: ‘char* strncpy(char*, const char*, size_t)’ output truncated before terminating nul copying 40 bytes from a string of the same length [-Wstringop-truncation]
     strncpy(serh.Telescope, "                       Unknown Telescope", 40);
     ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from /usr/include/c++/8/vector:69,
                 from /Projects/indi/libs/stream/recorder/recorderinterface.h:31,
                 from /Projects/indi/libs/stream/recorder/serrecorder.h:24,
                 from /Projects/indi/libs/stream/recorder/serrecorder.cpp:28:
/usr/include/c++/8/bits/vector.tcc: In member function ‘void std::vector<_Tp, _Alloc>::emplace_back(_Args&& ...) [with _Args = {long long unsigned int}; _Tp = long long unsigned int; _Alloc = std::allocator<long long unsigned int>]’:
/usr/include/c++/8/bits/vector.tcc:109:4: note: parameter passing for argument of type ‘__gnu_cxx::__normal_iterator<long long unsigned int*, std::vector<long long unsigned int> >’ changed in GCC 7.1
    _M_realloc_insert(end(), std::forward<_Args>(__args)...);
    ^~~~~~~~~~~~~~~~~
/usr/include/c++/8/bits/vector.tcc: In member function ‘void std::vector<_Tp, _Alloc>::_M_realloc_insert(std::vector<_Tp, _Alloc>::iterator, _Args&& ...) [with _Args = {long long unsigned int}; _Tp = long long unsigned int; _Alloc = std::allocator<long long unsigned int>]’:
/usr/include/c++/8/bits/vector.tcc:413:7: note: parameter passing for argument of type ‘std::vector<long long unsigned int>::iterator’ {aka ‘__gnu_cxx::__normal_iterator<long long unsigned int*, std::vector<long long unsigned int> >’} changed in GCC 7.1
       vector<_Tp, _Alloc>::
       ^~~~~~~~~~~~~~~~~~~
In file included from /usr/include/c++/8/vector:63,
                 from /Projects/indi/libs/stream/recorder/recorderinterface.h:31,
                 from /Projects/indi/libs/stream/recorder/serrecorder.h:24,
                 from /Projects/indi/libs/stream/recorder/serrecorder.cpp:28:
/usr/include/c++/8/bits/stl_uninitialized.h: In function ‘_ForwardIterator std::__uninitialized_move_if_noexcept_a(_InputIterator, _InputIterator, _ForwardIterator, _Allocator&) [with _InputIterator = long long unsigned int*; _ForwardIterator = long long unsigned int*; _Allocator = std::allocator<long long unsigned int>]’:
/usr/include/c++/8/bits/stl_uninitialized.h:311:2: note: parameter passing for argument of type ‘std::move_iterator<long long unsigned int*>’ changed in GCC 7.1
       return std::__uninitialized_copy_a
              ~~~~~~~~~~~~~~~~~~~~~~~~~~~
  (_GLIBCXX_MAKE_MOVE_IF_NOEXCEPT_ITERATOR(__first),
  ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   _GLIBCXX_MAKE_MOVE_IF_NOEXCEPT_ITERATOR(__last), __result, __alloc);
   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/8/bits/stl_uninitialized.h: In function ‘_ForwardIterator std::__uninitialized_copy_a(_InputIterator, _InputIterator, _ForwardIterator, std::allocator<_Tp>&) [with _InputIterator = std::move_iterator<long long unsigned int*>; _ForwardIterator = long long unsigned int*; _Tp = long long unsigned int]’:
/usr/include/c++/8/bits/stl_uninitialized.h:287:5: note: parameter passing for argument of type ‘std::move_iterator<long long unsigned int*>’ changed in GCC 7.1
     __uninitialized_copy_a(_InputIterator __first, _InputIterator __last,
     ^~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/8/bits/stl_uninitialized.h:287:5: note: parameter passing for argument of type ‘std::move_iterator<long long unsigned int*>’ changed in GCC 7.1
/usr/include/c++/8/bits/stl_uninitialized.h:289:37: note: parameter passing for argument of type ‘std::move_iterator<long long unsigned int*>’ changed in GCC 7.1
     { return std::uninitialized_copy(__first, __last, __result); }
              ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/8/bits/stl_uninitialized.h: In function ‘_ForwardIterator std::uninitialized_copy(_InputIterator, _InputIterator, _ForwardIterator) [with _InputIterator = std::move_iterator<long long unsigned int*>; _ForwardIterator = long long unsigned int*]’:
/usr/include/c++/8/bits/stl_uninitialized.h:115:5: note: parameter passing for argument of type ‘std::move_iterator<long long unsigned int*>’ changed in GCC 7.1
     uninitialized_copy(_InputIterator __first, _InputIterator __last,
     ^~~~~~~~~~~~~~~~~~
/usr/include/c++/8/bits/stl_uninitialized.h:115:5: note: parameter passing for argument of type ‘std::move_iterator<long long unsigned int*>’ changed in GCC 7.1
/usr/include/c++/8/bits/stl_uninitialized.h:134:15: note: parameter passing for argument of type ‘std::move_iterator<long long unsigned int*>’ changed in GCC 7.1
       return std::__uninitialized_copy<__is_trivial(_ValueType1)
              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
            && __is_trivial(_ValueType2)
            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
            && __assignable>::
            ~~~~~~~~~~~~~~~~~~
  __uninit_copy(__first, __last, __result);
  ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/8/bits/stl_uninitialized.h: In static member function ‘static _ForwardIterator std::__uninitialized_copy<true>::__uninit_copy(_InputIterator, _InputIterator, _ForwardIterator) [with _InputIterator = std::move_iterator<long long unsigned int*>; _ForwardIterator = long long unsigned int*]’:
/usr/include/c++/8/bits/stl_uninitialized.h:99:9: note: parameter passing for argument of type ‘std::move_iterator<long long unsigned int*>’ changed in GCC 7.1
         __uninit_copy(_InputIterator __first, _InputIterator __last,
         ^~~~~~~~~~~~~
/usr/include/c++/8/bits/stl_uninitialized.h:99:9: note: parameter passing for argument of type ‘std::move_iterator<long long unsigned int*>’ changed in GCC 7.1
/usr/include/c++/8/bits/stl_uninitialized.h:101:27: note: parameter passing for argument of type ‘std::move_iterator<long long unsigned int*>’ changed in GCC 7.1
         { return std::copy(__first, __last, __result); }
                  ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from /usr/include/c++/8/vector:60,
                 from /Projects/indi/libs/stream/recorder/recorderinterface.h:31,
                 from /Projects/indi/libs/stream/recorder/serrecorder.h:24,
                 from /Projects/indi/libs/stream/recorder/serrecorder.cpp:28:
/usr/include/c++/8/bits/stl_algobase.h: In function ‘_OI std::copy(_II, _II, _OI) [with _II = std::move_iterator<long long unsigned int*>; _OI = long long unsigned int*]’:
/usr/include/c++/8/bits/stl_algobase.h:446:5: note: parameter passing for argument of type ‘std::move_iterator<long long unsigned int*>’ changed in GCC 7.1
     copy(_II __first, _II __last, _OI __result)
     ^~~~
/usr/include/c++/8/bits/stl_algobase.h:446:5: note: parameter passing for argument of type ‘std::move_iterator<long long unsigned int*>’ changed in GCC 7.1
In file included from /usr/include/c++/8/bits/stl_algobase.h:67,
                 from /usr/include/c++/8/vector:60,
                 from /Projects/indi/libs/stream/recorder/recorderinterface.h:31,
                 from /Projects/indi/libs/stream/recorder/serrecorder.h:24,
                 from /Projects/indi/libs/stream/recorder/serrecorder.cpp:28:
/usr/include/c++/8/bits/stl_iterator.h: In function ‘decltype (std::__miter_base(__it.base())) std::__miter_base(std::move_iterator<_IteratorL>) [with _Iterator = long long unsigned int*]’:
/usr/include/c++/8/bits/stl_iterator.h:1238:5: note: parameter passing for argument of type ‘std::move_iterator<long long unsigned int*>’ changed in GCC 7.1
     __miter_base(move_iterator<_Iterator> __it)
     ^~~~~~~~~~~~
[ 14%] Building CXX object CMakeFiles/indidriver.dir/libs/stream/encoder/encodermanager.cpp.o
[ 14%] Building CXX object CMakeFiles/indidriver.dir/libs/stream/encoder/encoderinterface.cpp.o
[ 14%] Building CXX object CMakeFiles/indidriver.dir/libs/stream/encoder/rawencoder.cpp.o
[ 15%] Building CXX object CMakeFiles/indidriver.dir/libs/stream/encoder/mjpegencoder.cpp.o
[ 15%] Building CXX object CMakeFiles/indidriver.dir/libs/stream/recorder/theorarecorder.cpp.o
[ 15%] Building C object CMakeFiles/indidriver.dir/libs/webcam/v4l2_colorspace.c.o
[ 15%] Building CXX object CMakeFiles/indidriver.dir/libs/webcam/v4l2_base.cpp.o
[ 15%] Building CXX object CMakeFiles/indidriver.dir/libs/webcam/v4l2_decode/v4l2_decode.cpp.o
[ 15%] Building C object CMakeFiles/indidriver.dir/libs/indibase/hid_libusb.c.o
[ 16%] Building CXX object CMakeFiles/indidriver.dir/libs/webcam/v4l2_decode/v4l2_builtin_decoder.cpp.o
[ 16%] Linking CXX shared library libindidriver.so
collect2: fatal error: ld terminated with signal 11 [Segmentation fault]
compilation terminated.
make[2]: *** [CMakeFiles/indidriver.dir/build.make:1129: libindidriver.so.1.8.7] Error 1
make[2]: *** Deleting file 'libindidriver.so.1.8.7'
make[1]: *** [CMakeFiles/Makefile2:2148: CMakeFiles/indidriver.dir/all] Error 2
make: *** [Makefile:130: all] Error 2


Read More...