
#9498: GHC links against unversioned .so files -------------------------------------+------------------------------------- Reporter: Kritzefitz | Owner: Type: feature | Status: new request | Milestone: Priority: low | Version: 7.6.3 Component: Compiler | Keywords: Debian (FFI) | Architecture: Unknown/Multiple Resolution: | Difficulty: Unknown Operating System: Linux | Blocked By: Type of failure: Other | Related Tickets: Test Case: | Blocking: | Differential Revisions: | -------------------------------------+------------------------------------- Comment (by Kritzefitz): I will demonstrate with the curl package: Assuming I have installed the libcurl3 package but not the libcurl-dev package. This means I have the following shared libraries belonging to curl installed: /usr/lib/i386-linux-gnu/libcurl-gnutls.so.3 /usr/lib/i386-linux-gnu/libcurl.so.3 (I actually have some curl version 4 libraries installed, but those shouldn't matter now.) Then I start ghci and try to use curl: {{{ $ ghci GHCi, version 7.6.3: http://www.haskell.org/ghc/ :? for help Loading package ghc-prim ... linking ... done. Loading package integer-gmp ... linking ... done. Loading package base ... linking ... done. Prelude> import Network.Curl Prelude Network.Curl> curlGet "http://weltraumschlangen.de/" [] Loading package array-0.4.0.1 ... linking ... done. Loading package deepseq-1.3.0.1 ... linking ... done. Loading package bytestring-0.10.0.2 ... linking ... done. Loading package containers-0.5.0.0 ... linking ... done. Loading package curl-1.3.8 ... can't load .so/.DLL for: libcurl.so (libcurl.so: cannot open shared object file: No such file or directory) Prelude Network.Curl> }}} So it seems it tries to load libcurl.so, which is contained in libcurl- dev, instead of libcurl.so.3. It's not working when compiling a file either: test.hs: {{{ import Network.Curl main = curlGet "http://weltraumschlangen.de/" [] }}} compiling: {{{ $ ghc --make test.hs [1 of 1] Compiling Main ( test.hs, test.o ) Linking test ... /usr/bin/ld: cannot find -lcurl collect2: error: ld returned 1 exit status }}} -- Ticket URL: http://ghc.haskell.org/trac/ghc/ticket/9498#comment:3 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler