Community
cancel
Showing results for 
Search instead for 
Did you mean: 
jd_weeks
Beginner
392 Views

Strange linker warnings on Mac OS X 10.7

We just upgraded to MKL 10.3 update 8. One of our engineers is using Mac OS X 10.7 with Xcode 4.1 and gcc 4.2.1.
He is seeing lots of linker warnings like these (just a sample for about 2600 warnings):
ld: warning: could not create compact unwind for _dqform_: cfa had negative offset (dwarf might contain epilog)
ld: warning: could not create compact unwind for _dfdjc1_: register saved more than once (might be shrink wrap)
ld: warning: could not create compact unwind for _mkl_lapack_spotrf: r15 is saved too far from return address
ld: warning: could not create compact unwind for _mkl_vml_serv_openmp_get_num_procs: does not use RBP or RSP based frame
ld: warning: could not create compact unwind for _mkl_lapack_cgbtrf: stack subq instruction is too different from dwarf stack size
Most of the warnings are the "too far from return address" warnings.
What can I do about this?
Thanks,
John Weeks
0 Kudos
2 Replies
barragan_villanueva_
Valued Contributor I
392 Views

Hi,

It's because of SnowLeopard (darwin10) unwind feature changes.. but its still ld: warnings.

It is recommended:

add -no_compact_unwind to the link line. This tells the linker to not
produce compact unwind information from the dwarf unwind info in .o
files. Then at runtime the darwin unwinder will fallback and use the
slow dwarf unwind info.

So please try to add option "-Wl,-no_compact_unwind" for linking.

Johannes_F_
Beginner
392 Views

We are using the IPP library in out application.

Unfortunately, the linker option -no_compact_unwind disables try/catch in my application. Somewhere else I found -keep_dwarf_unwind. If additionally giving this option, exceptions work again, also, everything else seems to work.

I'm not at all understanding what these options mean. Does any more knowlegeable person advise against doing so?

 

Reply