Before my last update, I switched from gcc 4.6 to gcc 4.7 (some
package required 4.7 -- I don't remember which one).

Now jed fails:

  $ jed --batch
  loading /usr/share/jed/lib/site.sl
  loading /usr/share/jed/lib/os.sl
  loading /usr/share/jed/lib/menus.sl
  loading /etc/jed.conf
  Unable to open compress.  Check the value of the S-Lang load path.
  /etc/jed.conf:9:<top-level>:Open failed
  Traceback: evalfile
  /usr/share/jed/lib/site.sl:3324:<top-level>:Open failed
  
Looking at the strace output:

  open("/etc/jed.conf", O_RDONLY|O_LARGEFILE) = 4
  write(1, "loading /etc/jed.conf\n", 22) = 22
  read(4, "% -*- slang -*-\n\n% This is a sam"..., 4096) = 328
  read(4, "", 3768)                       = 0
  
stat64("/usr/share/jed/lib\213V\267\335\377vF/usr/share/slsh\213V\267/usr/share/slsh/local-packages/compress",
 0xbff4f$
  
stat64("/usr/share/jed/lib\213V\267\335\377vF/usr/share/slsh\213V\267/usr/share/slsh/local-packages/compress.slc",
 0xb$
  
stat64("/usr/share/jed/lib\213V\267\335\377vF/usr/share/slsh\213V\267/usr/share/slsh/local-packages/compress.sl",
 0xbf$
  
stat64("/usr/share/jed/lib\213V\267\335\377vF/usr/share/slsh\213V\267/usr/share/slsh/local-packages/compress.slc",
 0xb$
  rt_sigprocmask(SIG_BLOCK, [], [], 8)    = 0
  rt_sigprocmask(SIG_SETMASK, [], NULL, 8) = 0
  close(4)                                = 0
  write(2, "Unable to open compress.  Check "..., 68) = 68
  write(2, "/etc/jed.conf:9:<top-level>:Open"..., 40) = 40
  write(2, "Traceback: evalfile\n", 20)   = 20
  write(2, "/usr/share/jed/lib/site.sl:3324:"..., 56) = 56
  close(3)                                = 0
  rt_sigprocmask(SIG_BLOCK, [], [], 8)    = 0
  rt_sigprocmask(SIG_SETMASK, [], NULL, 8) = 0
  rt_sigprocmask(SIG_BLOCK, [], [], 8)    = 0
  rt_sigprocmask(SIG_SETMASK, [], NULL, 8) = 0
  exit_group(30)                          = ?

The path names being passed to the stat64() calls are garbage, they
should be "/usr/share/jed/lib/compress" and so on.

Re-emerging jed and slang using gcc 4.6 fixes the problem.

Googling the "Check the value of the S-Lang load path" shows similar
problems showing up on RedHat and Debian systems a few months back.
One posted solution was to switch from -O2 to -O0 when building slang.
Others say the problem was caused by an upgrade to glibc.

Is it possible to configure portage to use a particular version of gcc
just for one or two packages?

-- 
Grant Edwards               grant.b.edwards        Yow! Were these parsnips
                                  at               CORRECTLY MARINATED in
                              gmail.com            TACO SAUCE?


Reply via email to