<html>
<head>
<meta content="text/html; charset=ISO-8859-1"
http-equiv="Content-Type">
</head>
<body bgcolor="#FFFFFF" text="#000000">
<div class="moz-cite-prefix">On 05/11/2014 03:16 PM, Sean Colombo
wrote:<br>
</div>
<blockquote
cite="mid:CAPuOg3NxZVzN189rFizzNsXyqbhVpug9=w8VetDe3SPAGSn74A@mail.gmail.com"
type="cite">
<div dir="ltr">Hi there,
<div>When releasing an OSX app using libc++, is there any
standard way to make sure the user has this dependency
installed?<br>
<br>
It appears that users on OSX 10.6 and below do not have libc++
by default (that's around 20% of OS X users at the moment).<br>
<br>
If I simply package libc++.1.dylib with my app, I assume it
will continue to fail because there seems to be a large number
of cascading dependencies. Is there some script I could run
at installation-time to make sure libc++ and all of its
dependencies get installed?<br>
<br>
Thanks for any pointers you could give me!</div>
<div> - Sean Colombo</div>
</div>
<br>
</blockquote>
<br>
For my project (<a class="moz-txt-link-freetext" href="http://ellcc.org">http://ellcc.org</a>), I'm creating Linux static
binaries for everything to eliminate dependencies. On an x86_64
system the resulting static binaries are actually smaller than the
normal clang/LLVM dynamically linked binaries:<br>
<br>
<meta http-equiv="content-type" content="text/html;
charset=ISO-8859-1">
<a href="http://ellcc.org/blog/?page_id=289"></a>[~] dev% size
llvm-dir/bin/clang ellcc/bin/ecc<br>
text data bss dec hex filename<br>
57361633 2674424 95400 60131457 3958881
llvm-dir/bin/clang<br>
48301230 53168 95600 48449998 2e349ce
ellcc/bin/ecc<br>
[~] dev% file llvm-dir/bin/clang ellcc/bin/ecc<br>
llvm-dir/bin/clang: ELF 64-bit LSB executable, x86-64, version 1
(GNU/Linux), dynamically linked (uses shared libs), for GNU/Linux
2.6.32, BuildID[sha1]=7824be96a50ef5c4aa3501c9f32e18399397e9c6,
stripped<br>
ellcc/bin/ecc: ELF 64-bit LSB executable, x86-64, version 1
(SYSV), statically linked,
BuildID[sha1]=c604e1efa1b99bf305bb76e7ac170c9d0019e96e, not stripped<br>
[~] dev% <br>
<br>
I use libc++, libc++abi, compiler-rt, and musl (all compiled
statically of course) to build the executables.<br>
<br>
-Rich<br>
</body>
</html>