Hello Alex,
Thank you for your very quick answer!
You answered most of my questions from above. Only two remain:
Question 1:
If I only have M10.4 installed, can I compile a binary that will work with M10.3? To make the question more concrete, suppose I use the following command line (slightly modified from what CreateLibrary uses):
-mmacosx-version-min=10.6 -framework Foundation -I"/Applications/Mathematica 10.4.app/Contents/SystemFiles/IncludeFiles/C" -I"/Applications/Mathematica 10.4.app/Contents/SystemFiles/Links/MathLink/DeveloperKit/MacOSX-x86-64/CompilerAdditions" -F"/Applications/Mathematica 10.4.app/Contents/SystemFiles/Links/MathLink/DeveloperKit/MacOSX-x86-64/CompilerAdditions" -framework "mathlink" -lstdc++
I changed -lc++
to -lstdc++
and used -mmacosx-version-min=10.6
as before. But it's "using" (whatever that means here) the MathLink "framework" from 10.4, not 10.3. Will the result work with 10.3?
I don't plan on deleting 10.3 anytime soon, but I won't be keeping it forever ...
Question 2:
With Mathematica 10.3, I compiled some libraries (where I used C++11) using -mmacosx-version-min=10.9
. Without this I couldn't use C++11 features ... The result did work so far. But could this, in principle, cause problem with 10.3 (which uses -mmacosx-version-min=10.6
by default)? Does -mmacosx-version-min=10.9
imply anything about libc++ vs libstdc++?