2am
2am

Reputation: 408

what is EXC_BAD_INSTRUCTION (sigill)? Why is it caused?

My application file works fine on my mac, the problem is when i try and install it on client's machine.

In the crash report I see that functions from libfreetype.dylib are causing the crash.

Is it because I have ported an incompatible dylib to client's machine? because when i compiled freetype using brew I used -universal flag.

Both the machines are Mountain Lion.

Upvotes: 4

Views: 2139

Answers (1)

Juan Borda
Juan Borda

Reputation: 69

Your client machine is probably an older hardware. Brew builds optimised code for your machine's processor by default. This will result in occasional SIGILL when that code is run on older hardware that doesnt have the newer instruction set used for optimization.

For distrubution, you should:

brew install --build-bottle freetype

for that and any other libraries that you ship from brew

Upvotes: 2

Related Questions