i'm writting c++ program and i want to distribute it on Mac OS X versions 10.6 and above. The problem is when i compile the program with clang and it's dynamically linked with libstdc++ and it causes problems with older systems.
There is a key -static-stdc++
in gcc but there's no one in clang. How can i link my program statically with clang?
My main goal is to compile binary on Mac OS X 10.9 and be able to run it on earlier versions. Maybe there's a different way?
Thank you.
Under Linux, this command works:
clang --std=c++11 -stdlib=libstdc++ loopy.cpp -o loopy -static -lstdc++
Where loopy
is of course the name of my program.
It appears that Apple strongly discourages static linking so it suggests another approach is needed.
This answer on creating backwards compatible OS X software may be of use to you instead.