Skip to content

Difference between 'libicuio' and 'icuio' in the 'extra-libraries' field

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.

Trac metadata
Trac field Value
Version 8.2.2
Type Bug
TypeOfFailure OtherFailure
Priority normal
Resolution Unresolved
Component GHCi
Test case
Differential revisions
BlockedBy
Related
Blocking
CC
Operating system
Architecture
To upload designs, you'll need to enable LFS and have an admin enable hashed storage. More information