<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>