This is the mail archive of the cygwin mailing list for the Cygwin project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: under cygwin, zsh cannot run when built against ncurses9-5.7-13


On Sat, 14 Mar 2009, Vin Shelton wrote:

Greetings, All,
  As the zsh maintainer I guess I get to try and figure out what's going
on.  :-)
  Using the Dependency Walker tool that Chuck pointed out (thanks
Chuck!), I've found some rather interesting things.

  The offending symbol entries are the following (functions)
  tgetent
  tgetflag
  tgetnum
  tgetstr
  tgoto
  tputs
  pow      (but this is not an unresolve symbol, see below)

'pow' is not an unresolve symbol in this mess, but it is lumped into the
chunk with the bad symbols.

libzsh-4.3.9.dll is the one who needs these symbols, but the import list
is wrong:

Here's the imports from compiling/linking with libncurses-8 (good):

0009e03c 0009e398 00000000 00000000 0009f37c 0009e6d4

        DLL Name: cygwin1.dll
        vma:  Hint/Ord Member-Name Bound-To
        9f018    1285  pow

0009e050 0009e3a0 00000000 00000000 0009f3a4 0009e6dc

        DLL Name: cygncurses-8.dll
        vma:  Hint/Ord Member-Name Bound-To
        9f020     405  tgetent
        9f02c     406  tgetflag
        9f038     407  tgetnum
        9f044     408  tgetstr
        9f050     409  tgoto
        9f058     417  tputs

And, here's the imports from compiling/linking with libncurses-9 (bad):

0009e03c 0009e398 00000000 00000000 0009f374 0009e6d0

        DLL Name: cygwin1.dll
        vma:  Hint/Ord Member-Name Bound-To
        9f010    1285  pow
        9f018     468  tgetent
        9f024     469  tgetflag
        9f030     470  tgetnum
        9f03c     471  tgetstr
        9f048     472  tgoto
        9f050     480  tputs

0009e050 0009e39c 00000000 00000000 0009f39c 0009e6d4

        DLL Name: cygncurses-9.dll
        vma:  Hint/Ord Member-Name Bound-To
        9f018     468  tgetent
        9f024     469  tgetflag
        9f030     470  tgetnum
        9f03c     471  tgetstr
        9f048     472  tgoto
        9f050     480  tputs

It appears to trying to import the symbols twice.

I've checked the import libs for both 5.5-3 (good) 5.7-13 (bad) and they
don't appear to have anything funny about them.  libncurses.a and
libncurses.dll.a both appear to have the correct exports.  There's no
difference in how zsh is compiled between ncurses 8 & 9.

Could this really be a linker problem?

My build was done using gcc3, and Vin stated he'd tested with both gcc3
and gcc4, so perhaps there's a common element between them?  Or, perhaps,
is something not quite right with libncurses9 ?

I'm a but stuck now as I'm not sure where to look next.  Any educated
guesses to point me in the right direction?  Anyone?  Anyone?  Bueller?


René Berber wrote:
Vin Shelton wrote:

Charles Wilson wrote:
Just for grins, could you rebuild zsh against libncurses9 -- but this
time use gcc3?  cygiconv-2 and cygncurses-9 use the static gcc-3.4.4
libgcc.a, but you are apparently using the gcc-4.3.2 shared libgcc.

I just wonder if that presents an incompatibility that could explain
what you are seeing.
Thanks for replying, Chuck.

As I mentioned in the initial email, I had already done just that.  Just
to be sure, I did it again, with the same result:

No you didn't, the point was: use gcc3, in other words: mixing libraries built with gcc3 and gcc4 doesn't work.

I think my initial post contains this line:


The referenced builds used gcc-4, but the same problem occurred using
gcc-3.

If I'm wrong, or I'm misunderstanding you, I apologize.

In any case, I have now supplied the information requested, no?

Building with gcc-4 and the old ncurses produces a working zsh, in case that wasn't clear from my earlier emails.

- Vin


-- Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple Problem reports: http://cygwin.com/problems.html Documentation: http://cygwin.com/docs.html FAQ: http://cygwin.com/faq/


-- Peter A. Castro <doctor@fruitbat.org> or <Peter.Castro@oracle.com> "Cats are just autistic Dogs" -- Dr. Tony Attwood
--
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple
Problem reports:       http://cygwin.com/problems.html
Documentation:         http://cygwin.com/docs.html
FAQ:                   http://cygwin.com/faq/

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]