JuliaStrings / ICU.jl

Julia wrapper for the International Components for Unicode (ICU) library
MIT License
10 stars 19 forks source link

Error with 32 Bit Julia on Windows #7

Closed IainNZ closed 10 years ago

IainNZ commented 10 years ago
C:\Users\Iain\Desktop\Julia32bit>julia
               _
   _       _ _(_)_     |  A fresh approach to technical computing
  (_)     | (_) (_)    |  Documentation: http://docs.julialang.org
   _ _   _| |_  __ _   |  Type "help()" to list help topics
  | | | | | | |/ _` |  |
  | | |_| | | | (_| |  |  Version 0.2.0 (2013-11-16 23:44 UTC)
 _/ |\__'_|_|_|\__'_|  |  Official http://julialang.org release
|__/                   |  i686-w64-mingw32

julia> using ICU
ERROR: ccall: could not find function ucol_open_44 in library C:\Users\Iain\.jul
ia\WinRPM\deps\usr\i686-w64-mingw32\sys-root\mingw\bin\icui18n51
at C:\Users\Iain\.julia\ICU\src\ICU.jl:556

I'm on Win7 64-bit

IainNZ commented 10 years ago

Possibly related to https://github.com/hackerschool/HttpServer.jl/issues/19

nolta commented 10 years ago

What's in C:\Users\Iain\.julia\ICU\deps\deps.jl?

And what happens if you run Pkg.build("ICU")?

mlubin commented 10 years ago

On my system, MikTex installs a version of icuuc49.dll but not icui18n49.dll, so BinDeps finds the former from MikTex and icui18n51.dll from WinRPM. When I uninstalled MikTex, everything runs fine.

Library search path failure...

nolta commented 10 years ago

Thanks @mlubin, i've add a check for library mismatch (3a52c445fffa3df60863a2162b5a66b5cd341308).

But i don't know enough about BinDeps to fix this. Can BinDeps be told two libraries have to come from the same directory? Or to search WinRPM first?

cc @loladiro

nolta commented 10 years ago

I have a crude fix for this in e0dd24f5a707287233163427ccb7a64c87cb29ee; could someone try it out?

IainNZ commented 10 years ago

I've only got 0.2 Julia installed so can't get it.

IainNZ commented 10 years ago

I just checked out master on Windows (laptop) I can run Pkg.build but it fails on using with ERROR: icui18nlib not defined

mlubin commented 10 years ago

What's the reason for dropping support for 0.2?

nolta commented 10 years ago

@IainNZ sorry, typo. Try f9ae4709c1a830d70bfad1ba1bd300f62fbfa822.

@mlubin i'm not dropping support for 0.2.

IainNZ commented 10 years ago

So its working with 64-bit Julia 0.2 on 64-bit Windows, I'll try 32-bit Julia now

IainNZ commented 10 years ago
julia> using ICU
Warning: redefining constant iculib
ERROR: could not load module 4451: The specified module could not be found.

at C:\Users\Iain\.julia\ICU\src\ICU.jl:62
IainNZ commented 10 years ago

32bit Julia on Win64

nolta commented 10 years ago

Sorry, a bit tired today, and making a lot of silly mistakes... try cf771a3ddebb980e83235a9da0690364a9f66e70

IainNZ commented 10 years ago

Works, no errors (still get the redefining warning)

IainNZ commented 10 years ago

(which I don't think is a big deal if you want to put it off to another day)

nolta commented 10 years ago

Yeah, i'm not worried about the warning, since this is just a temporary hack.

IainNZ commented 10 years ago

So I think we are done here then? Is METADATA up-to-date?

nolta commented 10 years ago

Yes, i've updated METADATA.