[GHC] #15150: Difference between 'libicuio' and 'icuio' in the 'extra-libraries' field

#15150: Difference between 'libicuio' and 'icuio' in the 'extra-libraries' field --------------------------------------+------------------------------- Reporter: Darwin226 | Owner: (none) Type: bug | Status: new Priority: normal | Milestone: 8.6.1 Component: GHCi | Version: 8.2.2 Keywords: | Operating System: Windows Architecture: x86_64 (amd64) | Type of failure: GHCi crash Test Case: | Blocked By: Blocking: | Related Tickets: Differential Rev(s): | Wiki Page: --------------------------------------+------------------------------- I'm on Windows and I've recently updated my msys packages. One of them was libicu which I updated from version 58 to version 61. This caused one of my projects to stop building. I've managed to reproduce the problem by just cloning the text-icu package and trying to open the repl in it. This is the error I get: {{{ GHCi, version 8.2.2: http://www.haskell.org/ghc/ :? for help ghc.EXE: | C:\Users\darwi\Projects\text-icu\.stack- work\dist\5c8418a7\build\cbits\text_icu.o: unknown symbol `ucnv_getMaxCharSize_61' linking extra libraries/objects failed }}} A similar error used to happen with icu 58, but I've "fixed" it (see this pull request https://github.com/bos/text-icu/pull/36). This time, however, adding `icuio` to `extra-libraries` doesn't cut it. But adding `libicuio` does the trick! I'm opening a ticket here because I assume both of those should behave the same. It's worth noting that if this is a bug, it's not just a GHCi issue. My other project that depends on text-icu just doesn't build (the same error happens during compilation). Unfortunately I can't test on 8.4 right now. -- Ticket URL: http://ghc.haskell.org/trac/ghc/ticket/15150 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler

#15150: Difference between 'libicuio' and 'icuio' in the 'extra-libraries' field -------------------------------+-------------------------------------- Reporter: Darwin226 | Owner: (none) Type: bug | Status: new Priority: normal | Milestone: 8.6.1 Component: GHCi | Version: 8.2.2 Resolution: | Keywords: Operating System: Windows | Architecture: x86_64 (amd64) Type of failure: GHCi crash | Test Case: Blocked By: | Blocking: Related Tickets: | Differential Rev(s): Wiki Page: | -------------------------------+-------------------------------------- Comment (by Phyx-): Would you be using Windows 10? -- Ticket URL: http://ghc.haskell.org/trac/ghc/ticket/15150#comment:1 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler

#15150: Difference between 'libicuio' and 'icuio' in the 'extra-libraries' field -------------------------------+-------------------------------------- Reporter: Darwin226 | Owner: (none) Type: bug | Status: new Priority: normal | Milestone: 8.6.1 Component: GHCi | Version: 8.2.2 Resolution: | Keywords: Operating System: Windows | Architecture: x86_64 (amd64) Type of failure: GHCi crash | Test Case: Blocked By: | Blocking: Related Tickets: | Differential Rev(s): Wiki Page: | -------------------------------+-------------------------------------- Comment (by Darwin226): Indeed. -- Ticket URL: http://ghc.haskell.org/trac/ghc/ticket/15150#comment:2 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler

#15150: Difference between 'libicuio' and 'icuio' in the 'extra-libraries' field -------------------------------+-------------------------------------- Reporter: Darwin226 | Owner: (none) Type: bug | Status: closed Priority: normal | Milestone: 8.6.1 Component: GHCi | Version: 8.2.2 Resolution: duplicate | Keywords: Operating System: Windows | Architecture: x86_64 (amd64) Type of failure: GHCi crash | Test Case: Blocked By: | Blocking: Related Tickets: 14456 | Differential Rev(s): Wiki Page: | -------------------------------+-------------------------------------- Changes (by Phyx-): * status: new => closed * cc: bgamari (added) * resolution: => duplicate * related: => 14456 Comment: This is a duplicate of #14456, you're hitting an issue where Microsoft has started shipping `icuuc` in Windows. GHCi is picking up this version but the version doesn't seem usable due to different symbol names. It's been fixed in 8.4. using `lib` is explicitly forcing it to pick the `import library, libicuio.dll.a` which directs it to the right dll. Under normal circumstances, those (libicuio vs icuio) two are *roughly* equivalent. There are some diffences but it should all work out to the same if you have your environment correct. I'm closing it as a duplicate. I'm not sure the release manager would agree that this should be backported into the up and coming ghc 8.4.3 bug- fix release for ubuntu. -- Ticket URL: http://ghc.haskell.org/trac/ghc/ticket/15150#comment:3 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler

#15150: Difference between 'libicuio' and 'icuio' in the 'extra-libraries' field -------------------------------+-------------------------------------- Reporter: Darwin226 | Owner: (none) Type: bug | Status: closed Priority: normal | Milestone: 8.6.1 Component: GHCi | Version: 8.2.2 Resolution: duplicate | Keywords: Operating System: Windows | Architecture: x86_64 (amd64) Type of failure: GHCi crash | Test Case: Blocked By: | Blocking: Related Tickets: 14456 | Differential Rev(s): Wiki Page: | -------------------------------+-------------------------------------- Comment (by Darwin226): Well, I'm stuck using my fork anyways since `text-icu` is not really maintained so adding an extra workaround isn't a problem. Thank you for the info! -- Ticket URL: http://ghc.haskell.org/trac/ghc/ticket/15150#comment:4 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler

#15150: Difference between 'libicuio' and 'icuio' in the 'extra-libraries' field -------------------------------+-------------------------------------- Reporter: Darwin226 | Owner: (none) Type: bug | Status: closed Priority: normal | Milestone: 8.6.1 Component: GHCi | Version: 8.2.2 Resolution: duplicate | Keywords: Operating System: Windows | Architecture: x86_64 (amd64) Type of failure: GHCi crash | Test Case: Blocked By: | Blocking: Related Tickets: 14456 | Differential Rev(s): Wiki Page: | -------------------------------+-------------------------------------- Comment (by Phyx-): lol, It's already been fix in 8.4, nothing to backport here. Sorry @bgamari, brainfart... I think (not sure which version we've started doing it) but for sure 8.4 should be tracing dependencies automatically. So you shouldn't need that patch to `text-icu` with it. -- Ticket URL: http://ghc.haskell.org/trac/ghc/ticket/15150#comment:5 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler
participants (1)
-
GHC