-
Notifications
You must be signed in to change notification settings - Fork 19
Open
Description
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 -fopenmpMetadata
Metadata
Assignees
Labels
No labels