Voss Volume Voxelator crashes in Mac OS X shell with “Segmentation fault”

Q:

I run into a problem using your 3v tool for the shell. I am using Mac OS X 10.6 with Xcode installed. During compiling I get the following warnings: cpuflags: CPU "core" not supported by compiler "gcc-2335.9" on Darwin g++ -Wall -O3 -fomit-frame-pointer -ffast-math -funroll-loops -fopenmp -o AllChannel.exe utils-main.o utils-output.o utils-mrc.o allchannel.cpp allchannel.cpp: In function ‘int main(int, char**)’: allchannel.cpp:57: warning: format not a string literal and no format arguments allchannel.cpp:67: warning: format not a string literal and no format arguments allchannel.cpp:73: warning: format not a string literal and no format arguments chmod 755 AllChannel.exe mv AllChannel.exe ../bin for all tools in the package. I was trying using the volume tool and I compared it with your web service. Both generated the same result without any error message. Then I moved on and tried screening for channels. This time however the script crashes with the message segmentation fault (command used ../bin/AllChannel.exe -b 12.000 -s 1.400 -t 1.500 -g 0.500 -v 700 -i 2RH2_WT67_model1-noions.xyzr 2> output.log). I compared it with the console output from the web service. Until the segmentation fault both outputs (local and web) are exactly the same. Do you have any idea what might cause the problem.

A:
I compiled it on a mac once, but it has been a while. My guess is that you do not have openMP installed on your mac (a simple library that allows multiprocessor support).

Go into the Makefile (it is a text file) and change the FLAGS line at the top to just:

FLAGS = -Wall

then try it again. Let me know if it works or not.

From what I can tell you are not using openmp, library named libgomp. If you use ‘top -s3
-ocpu’, can you tell if it is using more than 100%.

Ok, back to the seg fault. I have no idea, like you said it is the exact same command. I can see that it dies somewhere between line 180 and 300, but it does not run lines 202-266.

Can you go into utils.h and change the DEBUG flag to 1

#define DEBUG 1

then compile and run it again.

Also – Did you do a ‘make clean’ before compiling after changing the DEBUG flag? Because there should be a lot more output.

Another thing to try is slightly adjusting the grid size (go from 0.5 to 0.51), to see if it is trying to access memory outside the bounds of the array.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s