ghc 6.8.2 cabal won't run

Bug #213775 reported by Holden Karau
4
Affects Status Importance Assigned to Milestone
ghc6 (Ubuntu)
Invalid
Undecided
Unassigned

Bug Description

Binary package hint: ghc6

hkarau@htop:~/repos/repos/spam/haskell/libs/hsemail-1.2$ lsb_release -rd
Description: Ubuntu hardy (development branch)
Release: 8.04
ghc --version
The Glorious Glasgow Haskell Compilation System, version 6.8.2

I installed the new ghc6 package and now cabal packages won't install. I've tried hsemail, old-time, & old-local.
for example:

runghc Setup.lhs
<interactive>: /usr/lib/ghc-6.8.2/lib/Cabal-1.2.3.0/HSCabal-1.2.3.0.o: unknown symbol `oldzmtimezm1zi0zi0zi0_SystemziTime_a97_closure'
ghc-6.8.2: unable to load package `Cabal-1.2.3.0'

If I run strace on it:
strace runghc Setup.lhs
execve("/usr/bin/runghc", ["runghc", "Setup.lhs"], [/* 38 vars */]) = 0
brk(0) = 0x80a0000
access("/etc/ld.so.nohwcap", F_OK) = -1 ENOENT (No such file or directory)
mmap2(NULL, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0xb7ef4000
access("/etc/ld.so.preload", R_OK) = -1 ENOENT (No such file or directory)
open("/usr/X11R6/lib/tls/i686/sse2/cmov/libutil.so.1", O_RDONLY) = -1 ENOENT (No such file or directory)
stat64("/usr/X11R6/lib/tls/i686/sse2/cmov", 0xbfcb67f0) = -1 ENOENT (No such file or directory)
open("/usr/X11R6/lib/tls/i686/sse2/libutil.so.1", O_RDONLY) = -1 ENOENT (No such file or directory)
stat64("/usr/X11R6/lib/tls/i686/sse2", 0xbfcb67f0) = -1 ENOENT (No such file or directory)
open("/usr/X11R6/lib/tls/i686/cmov/libutil.so.1", O_RDONLY) = -1 ENOENT (No such file or directory)
stat64("/usr/X11R6/lib/tls/i686/cmov", 0xbfcb67f0) = -1 ENOENT (No such file or directory)
open("/usr/X11R6/lib/tls/i686/libutil.so.1", O_RDONLY) = -1 ENOENT (No such file or directory)
stat64("/usr/X11R6/lib/tls/i686", 0xbfcb67f0) = -1 ENOENT (No such file or directory)
open("/usr/X11R6/lib/tls/sse2/cmov/libutil.so.1", O_RDONLY) = -1 ENOENT (No such file or directory)
stat64("/usr/X11R6/lib/tls/sse2/cmov", 0xbfcb67f0) = -1 ENOENT (No such file or directory)
open("/usr/X11R6/lib/tls/sse2/libutil.so.1", O_RDONLY) = -1 ENOENT (No such file or directory)
stat64("/usr/X11R6/lib/tls/sse2", 0xbfcb67f0) = -1 ENOENT (No such file or directory)
open("/usr/X11R6/lib/tls/cmov/libutil.so.1", O_RDONLY) = -1 ENOENT (No such file or directory)
stat64("/usr/X11R6/lib/tls/cmov", 0xbfcb67f0) = -1 ENOENT (No such file or directory)
open("/usr/X11R6/lib/tls/libutil.so.1", O_RDONLY) = -1 ENOENT (No such file or directory)
stat64("/usr/X11R6/lib/tls", 0xbfcb67f0) = -1 ENOENT (No such file or directory)
open("/usr/X11R6/lib/i686/sse2/cmov/libutil.so.1", O_RDONLY) = -1 ENOENT (No such file or directory)
stat64("/usr/X11R6/lib/i686/sse2/cmov", 0xbfcb67f0) = -1 ENOENT (No such file or directory)
open("/usr/X11R6/lib/i686/sse2/libutil.so.1", O_RDONLY) = -1 ENOENT (No such file or directory)
stat64("/usr/X11R6/lib/i686/sse2", 0xbfcb67f0) = -1 ENOENT (No such file or directory)
open("/usr/X11R6/lib/i686/cmov/libutil.so.1", O_RDONLY) = -1 ENOENT (No such file or directory)
stat64("/usr/X11R6/lib/i686/cmov", 0xbfcb67f0) = -1 ENOENT (No such file or directory)
open("/usr/X11R6/lib/i686/libutil.so.1", O_RDONLY) = -1 ENOENT (No such file or directory)
stat64("/usr/X11R6/lib/i686", 0xbfcb67f0) = -1 ENOENT (No such file or directory)
open("/usr/X11R6/lib/sse2/cmov/libutil.so.1", O_RDONLY) = -1 ENOENT (No such file or directory)
stat64("/usr/X11R6/lib/sse2/cmov", 0xbfcb67f0) = -1 ENOENT (No such file or directory)
open("/usr/X11R6/lib/sse2/libutil.so.1", O_RDONLY) = -1 ENOENT (No such file or directory)
stat64("/usr/X11R6/lib/sse2", 0xbfcb67f0) = -1 ENOENT (No such file or directory)
open("/usr/X11R6/lib/cmov/libutil.so.1", O_RDONLY) = -1 ENOENT (No such file or directory)
stat64("/usr/X11R6/lib/cmov", 0xbfcb67f0) = -1 ENOENT (No such file or directory)
open("/usr/X11R6/lib/libutil.so.1", O_RDONLY) = -1 ENOENT (No such file or directory)
stat64("/usr/X11R6/lib", {st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0
open("/etc/ld.so.cache", O_RDONLY) = 3
fstat64(3, {st_mode=S_IFREG|0644, st_size=166197, ...}) = 0
mmap2(NULL, 166197, PROT_READ, MAP_PRIVATE, 3, 0) = 0xb7ecb000
close(3) = 0
access("/etc/ld.so.nohwcap", F_OK) = -1 ENOENT (No such file or directory)
open("/lib/tls/i686/cmov/libutil.so.1", O_RDONLY) = 3
read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0@\n\0\000"..., 512) = 512
fstat64(3, {st_mode=S_IFREG|0644, st_size=9696, ...}) = 0
mmap2(NULL, 12432, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0xb7ec7000
mmap2(0xb7ec9000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x1) = 0xb7ec9000
close(3) = 0
open("/usr/X11R6/lib/libdl.so.2", O_RDONLY) = -1 ENOENT (No such file or directory)
access("/etc/ld.so.nohwcap", F_OK) = -1 ENOENT (No such file or directory)
open("/lib/tls/i686/cmov/libdl.so.2", O_RDONLY) = 3
read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0p\n\0\000"..., 512) = 512
fstat64(3, {st_mode=S_IFREG|0644, st_size=9684, ...}) = 0
mmap2(NULL, 12412, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0xb7ec3000
mmap2(0xb7ec5000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x1) = 0xb7ec5000
close(3) = 0
open("/usr/X11R6/lib/libm.so.6", O_RDONLY) = -1 ENOENT (No such file or directory)
access("/etc/ld.so.nohwcap", F_OK) = -1 ENOENT (No such file or directory)
open("/lib/tls/i686/cmov/libm.so.6", O_RDONLY) = 3
read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0@4\0\000"..., 512) = 512
fstat64(3, {st_mode=S_IFREG|0644, st_size=149328, ...}) = 0
mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0xb7ec2000
mmap2(NULL, 147584, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0xb7e9d000
mmap2(0xb7ec0000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x23) = 0xb7ec0000
close(3) = 0
open("/usr/X11R6/lib/libgmp.so.3", O_RDONLY) = -1 ENOENT (No such file or directory)
access("/etc/ld.so.nohwcap", F_OK) = -1 ENOENT (No such file or directory)
open("/usr/lib/libgmp.so.3", O_RDONLY) = 3
read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0\300\205"..., 512) = 512
fstat64(3, {st_mode=S_IFREG|0644, st_size=274416, ...}) = 0
mmap2(NULL, 277288, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0xb7e59000
mmap2(0xb7e9c000, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x42) = 0xb7e9c000
close(3) = 0
open("/usr/X11R6/lib/librt.so.1", O_RDONLY) = -1 ENOENT (No such file or directory)
access("/etc/ld.so.nohwcap", F_OK) = -1 ENOENT (No such file or directory)
open("/lib/tls/i686/cmov/librt.so.1", O_RDONLY) = 3
read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0\220\31"..., 512) = 512
fstat64(3, {st_mode=S_IFREG|0644, st_size=30624, ...}) = 0
mmap2(NULL, 33360, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0xb7e50000
mmap2(0xb7e57000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x6) = 0xb7e57000
close(3) = 0
open("/usr/X11R6/lib/libc.so.6", O_RDONLY) = -1 ENOENT (No such file or directory)
access("/etc/ld.so.nohwcap", F_OK) = -1 ENOENT (No such file or directory)
open("/lib/tls/i686/cmov/libc.so.6", O_RDONLY) = 3
read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0\260e\1"..., 512) = 512
fstat64(3, {st_mode=S_IFREG|0755, st_size=1364388, ...}) = 0
mmap2(NULL, 1369712, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0xb7d01000
mmap2(0xb7e4a000, 12288, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x149) = 0xb7e4a000
mmap2(0xb7e4d000, 9840, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0xb7e4d000
close(3) = 0
open("/usr/X11R6/lib/libpthread.so.0", O_RDONLY) = -1 ENOENT (No such file or directory)
access("/etc/ld.so.nohwcap", F_OK) = -1 ENOENT (No such file or directory)
open("/lib/tls/i686/cmov/libpthread.so.0", O_RDONLY) = 3
read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0\20H\0\000"..., 512) = 512
fstat64(3, {st_mode=S_IFREG|0755, st_size=112354, ...}) = 0
mmap2(NULL, 94688, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0xb7ce9000
mmap2(0xb7cfd000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x13) = 0xb7cfd000
mmap2(0xb7cff000, 4576, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0xb7cff000
close(3) = 0
mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0xb7ce8000
mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0xb7ce7000
set_thread_area({entry_number:-1 -> 6, base_addr:0xb7ce76b0, limit:1048575, seg_32bit:1, contents:0, read_exec_only:0, limit_in_pages:1, seg_not_present:0, useable:1}) = 0
mprotect(0xb7e4a000, 4096, PROT_READ) = 0
munmap(0xb7ecb000, 166197) = 0
set_tid_address(0xb7ce76f8) = 14620
set_robust_list(0xb7ce7700, 0xc) = 0
futex(0xbfcb70a0, 0x81 /* FUTEX_??? */, 1) = 0
rt_sigaction(SIGRTMIN, {0xb7ced2c0, [], SA_SIGINFO}, NULL, 8) = 0
rt_sigaction(SIGRT_1, {0xb7ced340, [], SA_RESTART|SA_SIGINFO}, NULL, 8) = 0
rt_sigprocmask(SIG_UNBLOCK, [RTMIN RT_1], NULL, 8) = 0
getrlimit(RLIMIT_STACK, {rlim_cur=8192*1024, rlim_max=RLIM_INFINITY}) = 0
uname({sys="Linux", node="htop", ...}) = 0
gettimeofday({1207634566, 798477}, NULL) = 0
brk(0) = 0x80a0000
brk(0x80c1000) = 0x80c1000
mmap2(NULL, 2097152, PROT_READ|PROT_WRITE|PROT_EXEC, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0xb7ae7000
munmap(0xb7ae7000, 102400) = 0
munmap(0xb7c00000, 946176) = 0
rt_sigaction(SIGVTALRM, {0x8078990, [], SA_RESTART}, NULL, 8) = 0
gettimeofday({1207634566, 800772}, NULL) = 0
timer_create(0xfffffffa /* CLOCK_??? */, {(nil), SIGVTALRM, SIGEV_SIGNAL, {...}}, {(nil)}) = 0
timer_settime(0, 0, {it_interval={0, 20000000}, it_value={0, 20000000}}, NULL) = 0
rt_sigaction(SIGINT, {0x80796e0, [], 0}, {SIG_DFL}, 8) = 0
rt_sigaction(SIGINT, NULL, {0x80796e0, [], 0}, 8) = 0
rt_sigaction(SIGINT, {0x80796e0, [], 0}, NULL, 8) = 0
getrusage(RUSAGE_SELF, {ru_utime={0, 0}, ru_stime={0, 8000}, ...}) = 0
gettimeofday({1207634566, 803519}, NULL) = 0
stat64("/usr/local/sbin/ghc", 0xb7b7e038) = -1 ENOENT (No such file or directory)
stat64("/usr/local/bin/ghc", 0xb7b7e0c0) = -1 ENOENT (No such file or directory)
stat64("/usr/sbin/ghc", 0xb7b7e148) = -1 ENOENT (No such file or directory)
stat64("/usr/bin/ghc", {st_mode=S_IFREG|0755, st_size=111, ...}) = 0
rt_sigprocmask(SIG_BLOCK, [INT], [], 8) = 0
rt_sigaction(SIGINT, {SIG_IGN}, NULL, 8) = 0
rt_sigprocmask(SIG_SETMASK, [], NULL, 8) = 0
rt_sigprocmask(SIG_BLOCK, [QUIT], [], 8) = 0
rt_sigaction(SIGQUIT, {SIG_IGN}, NULL, 8) = 0
rt_sigprocmask(SIG_SETMASK, [], NULL, 8) = 0
ioctl(0, SNDCTL_TMR_TIMEBASE or TCGETS, {B38400 opost isig icanon echo ...}) = 0
ioctl(1, SNDCTL_TMR_TIMEBASE or TCGETS, {B38400 opost isig icanon echo ...}) = 0
vfork() = 14621
waitpid(14621, <interactive>: /usr/lib/ghc-6.8.2/lib/Cabal-1.2.3.0/HSCabal-1.2.3.0.o: unknown symbol `oldzmtimezm1zi0zi0zi0_SystemziTime_a97_closure'
ghc-6.8.2: unable to load package `Cabal-1.2.3.0'
[{WIFEXITED(s) && WEXITSTATUS(s) == 1}], 0) = 14621
--- SIGCHLD (Child exited) @ 0 (0) ---
rt_sigprocmask(SIG_BLOCK, [INT], [], 8) = 0
rt_sigaction(SIGINT, {SIG_DFL}, NULL, 8) = 0
rt_sigprocmask(SIG_SETMASK, [], NULL, 8) = 0
rt_sigprocmask(SIG_BLOCK, [QUIT], [], 8) = 0
rt_sigaction(SIGQUIT, {SIG_DFL}, NULL, 8) = 0
rt_sigprocmask(SIG_SETMASK, [], NULL, 8) = 0
getrusage(RUSAGE_SELF, {ru_utime={0, 0}, ru_stime={0, 8000}, ...}) = 0
gettimeofday({1207634567, 291159}, NULL) = 0
rt_sigprocmask(SIG_BLOCK, [], [], 8) = 0
rt_sigprocmask(SIG_SETMASK, [], NULL, 8) = 0
timer_settime(0, 0, {it_interval={0, 0}, it_value={0, 0}}, NULL) = 0
timer_delete(0) = 0
fcntl64(0, F_GETFL) = 0x2 (flags O_RDWR)
fcntl64(1, F_GETFL) = 0x2 (flags O_RDWR)
fcntl64(2, F_GETFL) = 0x2 (flags O_RDWR)
rt_sigprocmask(SIG_BLOCK, [TTOU], [], 8) = 0
rt_sigprocmask(SIG_SETMASK, [], NULL, 8) = 0
getrusage(RUSAGE_SELF, {ru_utime={0, 0}, ru_stime={0, 8000}, ...}) = 0
gettimeofday({1207634567, 293006}, NULL) = 0
exit_group(1) = ?
Process 14620 detached

ProblemType: Bug
Architecture: i386
Date: Tue Apr 8 01:04:39 2008
DistroRelease: Ubuntu 8.04
Package: ghc6 6.8.2-2ubuntu1 [modified: usr/lib/ghc-6.8.2/package.conf.old]
PackageArchitecture: i386
ProcEnviron:
 SHELL=/bin/bash
 PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/bin/X11:/usr/games
 LANG=en_CA.UTF-8
SourcePackage: ghc6
Uname: Linux 2.6.22-14-generic i686

Tags: apport-bug
Revision history for this message
Holden Karau (holden-pigscanfly) wrote :
Revision history for this message
Holden Karau (holden-pigscanfly) wrote :

Repo steps:
1)Install the ghc6 package
2)Download a cabal package (see http://hackage.haskell.org/packages/hackage.html for a list)
3)Untar it
4)run "runghc Setup.hs" or "runghc Setup.lhs" (depending on the setup instructions)
5)Note that cabal fails to run with missing symbol oldzmtimezm1zi0zi0zi0_SystemziTime_a97_closure

Revision history for this message
StefanPotyra (sistpoty) wrote :

hm... at first glimpse, looks like s.th. from the ghc6 transition still needs a rebuilt. What arch are you using? (sparc and lpia haven't most probably caught up yet).

Revision history for this message
Holden Karau (holden-pigscanfly) wrote :

x86

Revision history for this message
Holden Karau (holden-pigscanfly) wrote :

Is there anything additional information which would help?
Would you like me to re-build the package from sources?

Revision history for this message
StefanPotyra (sistpoty) wrote :

not at the moment; seems like my initial guess wasn't right. I'll first need to take a closer look, maybe I'll then have questions ;).

Revision history for this message
Holden Karau (holden-pigscanfly) wrote :

I just installed ghc-6.8.2 from the ghc site ( http://www.haskell.org/ghc/download_ghc_682.html ) from source and the cabal packages run. It is the same source ball used for the ubuntu package, which suggests its a problem with either on of the patches, how the package is build, or what is included in the package. From the looks of it there is a new shared library which isn't being put into the package.

Revision history for this message
StefanPotyra (sistpoty) wrote :

can you test, if it works with
runghc -package Cabal Setup.lhs?

thanks.

Revision history for this message
Holden Karau (holden-pigscanfly) wrote :

I removed the ghc6 package and then went through and deleted everything that mentioned ghc and re-installed the ghc6 package and now:
if I run runghc --package Cabal Setup.lhs it says "bash: /usr/local/bin/runghc: No such file or directory" but "runghc6 Setup.lhs" works just fine.
Looking at both of them:
ls -al /usr/bin/runghc
lrwxrwxrwx 1 root root 24 2008-04-11 01:58 /usr/bin/runghc -> /etc/alternatives/runghc
ls -al /usr/bin/runghc6
lrwxrwxrwx 1 root root 27 2008-04-11 01:57 /usr/bin/runghc6 -> ../lib/ghc-6.8.2/bin/runghc
Which suggest that all that is needed is updating the symbolic link of rungh to ../lib/ghc-6.8.2/bin/runghc

Looking at ghc6_6.8.2-2ubuntu1.diff I'd suggest changing
"+ --slave $execdir/runghc runghc $bindir/runghc \" to "+ --slave $execdir/runghc runghc$execdir/runghc6 \"

Revision history for this message
StefanPotyra (sistpoty) wrote :

Hi,

sorry for the late response from me. While the runghc6 symlink is directly provided by the ghc6 package, runghc itself is managed via the alternatives system. Since your output of runghc points somewhere below /usr/local, it looks to me like you've overwritten one symlink with the package from the ghc site (and not set that back then). The alternatives system however can not fix this then. The current postinst of ghc6 appears to be correct.

I'm marking this bug as invalid now, but feel free to reopen if you think there is still a problem with the postinst.

Cheers,
    Stefan.

Changed in ghc6:
status: New → Invalid
Revision history for this message
mariguango (mariguango) wrote :

i get segmentation fault when configure cabal package. but everything fine with ghc binary from haskell site.

To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.