Search Unity

Symlink Unity Libraries in Build settings?

Discussion in 'iOS and tvOS' started by ronronmx, Aug 10, 2011.

  1. ronronmx

    ronronmx

    Joined:
    Aug 16, 2010
    Posts:
    201
    The "Symlink Unity Libraries" checkbox popped up in 3.4, but what does it do if checked? I don't think it's been added to the documentation yet as I couldn't find it anywhere...but if it has, then please excuse me for asking and please provide a link if possible ;)

    Thanks in advance,
    Ronron
     
  2. zine92

    zine92

    Joined:
    Nov 13, 2010
    Posts:
    1,347
  3. ronronmx

    ronronmx

    Joined:
    Aug 16, 2010
    Posts:
    201
    Ha! I knew I missed it somewhere....thanks for the link zine :)
     
  4. zine92

    zine92

    Joined:
    Nov 13, 2010
    Posts:
    1,347
    Nope. But i am not using iOS build so i can't really help much. :D
     
  5. Toad

    Toad

    Joined:
    Aug 14, 2010
    Posts:
    298
    What does "Symlink runtime libraries when generating iOS XCode project. (Faster iteration time)" actually mean though? :confused:
     
    Last edited: Sep 16, 2011
    jctz likes this.
  6. Logistic-Win

    Logistic-Win

    Joined:
    Apr 4, 2009
    Posts:
    107
    Yeah, what does it really do?
     
  7. AaronC

    AaronC

    Joined:
    Mar 6, 2006
    Posts:
    3,552
    +1
    ?
     
  8. CoCoNutti

    CoCoNutti

    Joined:
    Nov 30, 2009
    Posts:
    513
  9. bigdaddio

    bigdaddio

    Joined:
    May 18, 2009
    Posts:
    220
    symLink = Symbolic Link in other words basically a shortcut, a pointer to the libraries, I would imagine that the libraries are uploaded to the device once and as you iterate builds it only copies over the appcode, not the unity libraries as they already exist on the device. This is of course purely conjecture but probably close to what happens based on how other build environments use symlink.
     
  10. Mantas-Puida

    Mantas-Puida

    Joined:
    Nov 13, 2008
    Posts:
    1,864
    Symlink Unity libraries means that Xcode project generated by Unity will directly reference Unity iOS runtime library from Unity Editor install location. It saves your disk space (runtime lib is ~300 MB) and Unity Editor can faster generate Xcode project, because it does not need to copy additional 300 MB.

    You should not use it when:
    a) you are exporting Xcode project which you are going to share with somebody else
    b) you are exporting Xcode project to make final build and you want to archive it for backup purposes.
     
  11. Logistic-Win

    Logistic-Win

    Joined:
    Apr 4, 2009
    Posts:
    107
    Thank you Mantasp for finally answering this question clearly. I have been sending my clients builds with missing libxxx files all this time and didn't know this was the culprit.
     
  12. J_P_

    J_P_

    Joined:
    Jan 9, 2010
    Posts:
    1,027
    files in Plugins/iOS seem to be symlinked even when this checkbox is unchecked. Any way to fix that?
     
  13. Mantas-Puida

    Mantas-Puida

    Joined:
    Nov 13, 2008
    Posts:
    1,864
    Feature request? :)
     
  14. Dreamora

    Dreamora

    Joined:
    Apr 5, 2008
    Posts:
    26,601
    hmm feature request for something UT broke during 3.x ;-)
    Sounds more like bug reporting it so the generated XCode projects are finally xcode projects again not sym link collections you can not version as nobody else will be able to use them at all. It takes ages to clean up xcode projects for discrete versioning in a way that allows others from the team to compile them if needed etc and I'm really asking myself to what degree UT is using their own technology nowadays if they never got hit by it ... ;)
     
  15. Mantas-Puida

    Mantas-Puida

    Joined:
    Nov 13, 2008
    Posts:
    1,864
    Ok :) do you have case number?
     
  16. tuhinbhatt

    tuhinbhatt

    Joined:
    Jul 27, 2012
    Posts:
    13
    Any Solution to the Plugins SymLinking during the build?
     
  17. antifuzz

    antifuzz

    Joined:
    Feb 22, 2013
    Posts:
    99
    Sorry to necro a thread, but I just had a situation where I needed to supply an xcode project to a client built with IL2CPP in Unity 4.6.3.
    I had this box unchecked when I built, but it still symlinked the libiPhone-lib.a library. Is this feature currently broken with IL2CPP?
     
  18. Mantas-Puida

    Mantas-Puida

    Joined:
    Nov 13, 2008
    Posts:
    1,864
    Sounds like a bug.
    Report it!
     
  19. gabinoc

    gabinoc

    Joined:
    Oct 9, 2014
    Posts:
    1
    Go to Build Settings and check: Symlink Unity Libraries.

    You'll find your build size folder drop down to normal levels.
     
  20. hexagonius

    hexagonius

    Joined:
    Mar 26, 2013
    Posts:
    98
    Just as a suggestion:
    I think it would be very useful if answers to questions which arise from insufficient documentation were integrated into it. IMHO as a developer it is quite cumbersome to find all traces of information in different places about what's supposed to be fully explained in the docs. I think questions from the community are perfect for improving the docs since they reflect the needs best.
     
  21. Abdou23

    Abdou23

    Joined:
    May 2, 2014
    Posts:
    77
    So to be clear, I should NOT use " Symlink Unity Libraries " if it's the first time I'm building a project, or when I upload a build for beta testing or publishing to the Appstore?
     
  22. christophergoy

    christophergoy

    Unity Technologies

    Joined:
    Sep 16, 2015
    Posts:
    735
    @Abdou23,
    I'm not sure about the first time building, but if you are building for App Store submission, you should not use 'Symlink Unity libraries'
    Cheers,
    Chris
     
    JPBA1984 and GilesDMiddleton like this.