Re: Suggestion for MSVC build

Поиск
Список
Период
Сортировка
От Chuck McDevitt
Тема Re: Suggestion for MSVC build
Дата
Msg-id EB48EBF3B239E948AC1E3F3780CF8F8802A1B4A8@MI8NYCMAIL02.Mi8.com
обсуждение исходный текст
Ответ на Re: Suggestion for MSVC build  (Magnus Hagander <magnus@hagander.net>)
Список 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@hagander.net]
> Sent: Monday, September 24, 2007 1:30 AM
> To: Chuck McDevitt
> Cc: pgsql-hackers@postgresql.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?
> >
> >
> >



В списке pgsql-hackers по дате отправления:

Предыдущее
От: "Chuck McDevitt"
Дата:
Сообщение: Re: Suggestion for MSVC build
Следующее
От: "Kevin Grittner"
Дата:
Сообщение: Re: [FEATURE REQUEST] Streaming Onlinebackup (Maybe OFFTOPIC)