[GHC] #14444: Linker limit on OS X Sierra breaks builds for big projects

GHC ghc-devs at haskell.org
Wed Mar 7 02:07:27 UTC 2018


#14444: Linker limit on OS X Sierra breaks builds for big projects
-------------------------------------+-------------------------------------
        Reporter:  dredozubov        |                Owner:  angerman
            Type:  bug               |               Status:  new
        Priority:  normal            |            Milestone:
       Component:  Compiler          |              Version:  8.2.1
  (Linking)                          |
      Resolution:                    |             Keywords:
Operating System:  MacOS X           |         Architecture:
                                     |  Unknown/Multiple
 Type of failure:  None/Unknown      |            Test Case:
      Blocked By:                    |             Blocking:
 Related Tickets:                    |  Differential Rev(s):
       Wiki Page:                    |
-------------------------------------+-------------------------------------

Comment (by angerman):

 > Here's a github gist for a shell script that generates a giant stack
 project (with 150 generated dependencies) that triggers the panic:
 ​https://gist.github.com/asivitz/f4b983b2374a6155ac4faaf9b61aca59 I'm not
 sure the best way to do the same thing without using stack, but if you
 have an idea I can do that.

 This will generate 150 direct dependencies. As such any dylib that will
 reference those, will have to reference 150 libraries, in the load
 commands section. I don't think we can do much about this case. If this
 was 150 transitive dependencies spread over a few levels. we might.

 For 150 direct, we could potentially only work around this by using the
 splitting approach from nix. For 150 transitive dependencies, I still
 believe recursive linking could solve this. (See
 https://github.com/angerman/dylib-linking)

-- 
Ticket URL: <http://ghc.haskell.org/trac/ghc/ticket/14444#comment:18>
GHC <http://www.haskell.org/ghc/>
The Glasgow Haskell Compiler


More information about the ghc-tickets mailing list