From: | "Chuck McDevitt" <cmcdevitt(at)greenplum(dot)com> |
---|---|
To: | "Magnus Hagander" <magnus(at)hagander(dot)net> |
Cc: | pgsql-hackers(at)postgresql(dot)org |
Subject: | Re: Suggestion for MSVC build |
Date: | 2007-09-24 21:16:30 |
Message-ID: | EB48EBF3B239E948AC1E3F3780CF8F8802A1B4A8@MI8NYCMAIL02.Mi8.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers |
The right lib files to link readline are the .a ones...
Like this:
if ($solution->{options}->{readline})
{
$psql->AddIncludeDir($solution->{options}->{readline} .
'\include');
$psql->AddLibrary($solution->{options}->{readline} .
'\lib\libreadline.dll.a');
$psql->AddLibrary($solution->{options}->{readline} .
'\lib\libhistory.dll.a');
}
For using readline out of the dll. I assume libreadline.a and
libhistory.a instead for static linking.
> -----Original Message-----
> From: Magnus Hagander [mailto:magnus(at)hagander(dot)net]
> Sent: Monday, September 24, 2007 1:30 AM
> To: Chuck McDevitt
> Cc: pgsql-hackers(at)postgresql(dot)org
> Subject: Re: [HACKERS] Suggestion for MSVC build
>
> What version readline are you using?
>
> I tried with the latest download, and I get about 200 warnings like:
> 1>.\src\bin\psql\tab-complete.c(600) : warning C4013:
> 'completion_matches'
> undef
> ined; assuming extern returning int
> 1>.\src\bin\psql\tab-complete.c(600) : warning C4047: '=' : 'char **'
> differs in
> levels of indirection from 'int'
>
>
> And also, 12 linker errors - pretty much all the readline stuff. A
> quick
> look at the files seem to show that the readline.lib and history.lib
> files
> that ship with gnuwin32 are empty of symbols. The .def files are also
> empty. Are yours different?
>
>
> Also, do you know if this version of readline actually works on non-US
> locales, or if it's still broken there? (I'd test it myself if I could
> just
> build it :-P)
>
> //Magnus
>
> On Sun, Sep 23, 2007 at 10:03:09PM -0400, Chuck McDevitt wrote:
> > It seems like there isn't any good reason the perl scripts for the
> MSVC
> > build don't support readline
> >
> >
> >
> > Readline for windows is available as part of the GnuWin32 project.
> >
> >
> >
> > http://gnuwin32.sourceforge.net/packages/readline.htm
> >
> >
> >
> > It normally installs to "c:\Program Files\GnuWin32"
> >
> >
> >
> > I'd update the scripts myself, but I'm not a PERL programmer.
> >
> > From what I can see, you'd add another line to config.pl for
> readline,
> > and then add some stuff to mkvcbuild.pm for psql to do something
> like:
> >
> >
> >
> > if ($solution->{options}->{readline})
> >
> > {
> >
> >
> > $psql->AddIncludeDir($solution->{options}->{readline} . '\include');
> >
> >
> > $psql->AddLibrary($solution->{options}->{readline} .
> > '\lib\readline.lib');
> >
> >
> > $psql->AddLibrary($solution->{options}->{readline} .
> > '\lib\history.lib');
> >
> > }
> >
> >
> >
> > And something to solution.pm in the part that builds pg_config.h
that
> > looks something like:
> >
> >
> >
> > if ($self->{options}->{readline})
> >
> > {
> >
> > print O "#define
> > HAVE_LIBREADLINE 1\n";
> >
> > print O "#define
> > HAVE_READLINE_READLINE_H 1\n";
> >
> > print O "#define
> > HAVE_READLINE_HISTORY_H 1\n";
> >
> > print O "#define
> > USE_READLINE 1\n";
> >
> > print O "#define
> > USE_READLINE_STATIC 1\n";
> >
> > }
> >
> > (Not sure about the last line).
> >
> >
> >
> > I don't know if this is a good idea, but I would think this would
> make
> > psql more "user-friendly" on windows.
> >
> >
> >
> > Perhaps someone who understands readline and perl better than me
> might
> > want to take this on?
> >
> >
> >
From | Date | Subject | |
---|---|---|---|
Next Message | Kevin Grittner | 2007-09-24 21:17:58 | Re: [FEATURE REQUEST] Streaming Onlinebackup (Maybe OFFTOPIC) |
Previous Message | Chuck McDevitt | 2007-09-24 18:08:01 | Re: Suggestion for MSVC build |