[Haskell-cafe] openFile and portability

Ketil Malde ketil at malde.org
Tue Mar 23 09:47:58 EDT 2010


For convenience, I often build binaries with -optl-static, and
distribute them.  Except for the slightly annoying necessity of adding
-optl-pthread as well, this works great.

Now I just upgraded my Ubuntu box from 9.10 (Karmic) to 10.4 (Lucid),
and suddently static binaries refuse to work on other machines,
specifically I get:

  openFile: invalid argument (Invalid argument)

This seems to happen for any program trying to read a file, for

  main = readFile "/etc/passwd" >>= putStrLn

The program will compile and work as expected, but fails if I move it to
a computer with an older distribution (I've tested RHEL and CentOS 5.4
so far).  I tried strace, and the call to open appears to be similar,
and succeed in all cases.

Any ideas?

If I haven't seen further, it is by standing in the footprints of giants

More information about the Haskell-Cafe mailing list