Skip to content

Inconsistent terminated by signal SIGSEGV (Address boundary error) messages #13

@liamtoney

Description

@liamtoney

I've installed SETSM on an Apple MacBook Pro w/ M2 Max chip (32 GB memory). I had to make edits to the Makefile to do this (see bottom of message), but they were limited to pointing to the correct dependencies — and after making the changes, the code appeared to compile correctly (e.g., the setsm -help command runs as expected after installation).

setsm runs inconsistently on my machine. Sometimes, it will complete a run with no errors. Other times, it will fail, always with the same error:

terminated by signal SIGSEGV (Address boundary error)

Example command that causes failure (sometimes):

-image ../23APR17020120-P1BS-016359594010_01_P001.TIF -image ../23APR17020206-P1BS-016359594010_01_P001.TIF -outpath test_output  -outres 20 -tilesize 1000

I'm trying to understand if this is related to the Apple silicon hardware, which would be understandable, or if this is a bug encountered on other platforms. Any ideas? Thanks in advance.

Edits made to the Makefile
diff --git a/Makefile b/Makefile
index fb1ec48..73e87cb 100755
--- a/Makefile
+++ b/Makefile
@@ -4,21 +4,22 @@

 # If libtiff is installed in a nonstandard location you must edit
 # TIFFPATH and uncomment the following three lines.
-TIFFPATH?=/home/noh.56/software/tiff-4.0.3
+TIFFPATH?=/opt/homebrew/Cellar/libtiff/4.6.0
 TIFFINC?=-I$(TIFFPATH)/include
 TIFFLIB?=-L$(TIFFPATH)/lib

 # If libgeotiff is installed in a nonstandard location you must edit
 # GEOTIFFPATH and uncomment the following three lines.
-GEOTIFFPATH?=/home/noh.56/software/libgeotiff-1.4.2
+GEOTIFFPATH?=/opt/homebrew/Cellar/libgeotiff/1.7.1_3
 GEOTIFFINC?=-I$(GEOTIFFPATH)/include
 GEOTIFFLIB?=-L$(GEOTIFFPATH)/lib
-PROJLIB?=-L/home/noh.56/software/proj-5.1.0/lib
+PROJLIB?=-L/opt/homebrew/Cellar/proj/9.4.0/lib
+JPEGLIB?=-L/opt/homebrew/Cellar/jpeg-turbo/3.0.3/lib

 MPIFLAGS = -DBUILDMPI

 INCS = $(TIFFINC) $(GEOTIFFINC)
-LDFLAGS = $(TIFFLIB) $(GEOTIFFLIB)
+LDFLAGS = $(TIFFLIB) $(GEOTIFFLIB) $(PROJLIB) $(JPEGLIB)

 COMMON_OBJS = CoordConversion.o SubFunctions.o LSF.o Orthogeneration.o Coregistration.o SDM.o setsmgeo.o grid.o grid_triangulation.o edge_list.o
 MPI_OBJS = $(COMMON_OBJS) log_mpi.o
@@ -61,8 +62,8 @@ else ifeq ($(COMPILER), nvhpc)
   CFLAGS=
   CXXFLAGS=
 else
-  CC=gcc
-  CXX=g++
+  CC=gcc-13
+  CXX=g++-13
   MPICC=mpicc
   MPICXX=mpicxx
   CFLAGS=-std=c99 -g -O3 -fopenmp

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions