Segfault on startup after building in Docker
Opened this issue · 5 comments
Description of the issue
I'm compiling Satdump in Docker on a Pi 4B using the Dockerfile provided. Build works fine without any errors. Upon starting the container image, Satdump segfaults on startup after logging "Updating elements". If I install the published .deb package into a container image (based on debian:stable-slim) it runs just fine, I only get the segfault if I self-compile.
Hardware (SDR/PC/OS)
Generic RTL2832u, Pi 4B 8GB, PiOS 64-bit
Version (Eg, 1.0.0, CI Build 171)
Tested both 1.1.4 and master.
Logs after the crash (satdump.log from ~/.config/satdump or %appdata%\satdump)
Attached
Other info (Eg, Screenshots) / Files useful for debugging (CADU, etc)
Starting satdump with: /usr/bin/satdump autotrack /root/autotrack.json
Config and coredump attached
log.txt
core.gz
config.txt
Issue still present with 1.2.0. This is a clean build and install into a new container so no issues with bits of older versions being left over per the release notes.
@kng are you able to take a look at this? If not, I can probably set up a test environment
I have not tried the auto tracking in the container, only satdump-ui
and satdump_sdr_server
. Tested on arm64 and amd64.
Is there some files it tries to write that fails for some reason.
I know the key to making it work at all with my style of multistage build, is the install prefix and staging prefix.
If it uses the /target/usr
in anything built it will get into trouble.
RUN cmake -B build \
-DCMAKE_STAGING_PREFIX=/target/usr \
-DCMAKE_INSTALL_PREFIX=/usr \
I'm guessing it is not arch dependant, expecting the same results on amd64.
@JVital2013 I'm not sure how to debug this, so perhaps better you give it a try.
I can at least confirm I got autotrack up and running with the above mentioned json, using the recently merged build package change.
@dj1471 can you test this on your system ?
Tested with the current master, no change in behaviour I'm afraid.