Where is the link to cygwin?

Started by Richard Sydney-Smithalmost 22 years ago9 messagespatches
Jump to latest
#1Richard Sydney-Smith
richard@ibisaustralia.com

Have been using the W32 port and need to access the cygiwn version again
for a friend with w9X instead of wXP.
Need a version that will run the the Fat32 environment.

thanks muchly

Richard Sydney-Smith

---
Outgoing mail is certified Virus Free.
Checked by AVG anti-virus system (http://www.grisoft.com).
Version: 6.0.772 / Virus Database: 519 - Release Date: 1/10/2004

#2Robert Treat
xzilla@users.sourceforge.net
In reply to: Richard Sydney-Smith (#1)
Re: Where is the link to cygwin?

On Monday 18 October 2004 13:49, Richard Sydney-Smith wrote:

Have been using the W32 port and need to access the cygiwn version again
for a friend with w9X instead of wXP.
Need a version that will run the the Fat32 environment.

http://www.postgresql.org/docs/faqs/text/FAQ_CYGWIN

--
Robert Treat
Build A Brighter Lamp :: Linux Apache {middleware} PostgreSQL

#3Richard Sydney-Smith
richard@ibisaustralia.com
In reply to: Robert Treat (#2)
Re: Where is the link to cygwin?

Reading this through comes an interesting point. With the windows 32
beta coming out an increasing number of people will be trialing
PostgreSQL. Those whoose machines are not up to spec for the W32 project
will want to run CYGWIN version on their ME /98/ NT4 boxes. Yet the
installation for this project is "harder" to run.

Question is it possible to include short cuts to initdb / start server /
stop server in the CYGWIN install package?
Thanks
R

-----Original Message-----
From: Robert Treat [mailto:xzilla@users.sourceforge.net]
Sent: Tuesday, 19 October 2004 9:17 AM
To: Richard Sydney-Smith
Cc: pgsql-cygwin@postgresql.org
Subject: Re: [CYGWIN] Where is the link to cygwin?

On Monday 18 October 2004 13:49, Richard Sydney-Smith wrote:

Have been using the W32 port and need to access the cygiwn version
again for a friend with w9X instead of wXP. Need a version that will
run the the Fat32 environment.

http://www.postgresql.org/docs/faqs/text/FAQ_CYGWIN

--
Robert Treat
Build A Brighter Lamp :: Linux Apache {middleware} PostgreSQL

---
Incoming mail is certified Virus Free.
Checked by AVG anti-virus system (http://www.grisoft.com).
Version: 6.0.772 / Virus Database: 519 - Release Date: 1/10/2004

---
Outgoing mail is certified Virus Free.
Checked by AVG anti-virus system (http://www.grisoft.com).
Version: 6.0.772 / Virus Database: 519 - Release Date: 1/10/2004

#4Reini Urban
rurban@x-ray.at
In reply to: Richard Sydney-Smith (#3)
Re: Where is the link to cygwin?

Richard Sydney-Smith schrieb:

Reading this through comes an interesting point. With the windows 32
beta coming out an increasing number of people will be trialing
PostgreSQL. Those whoose machines are not up to spec for the W32 project
will want to run CYGWIN version on their ME /98/ NT4 boxes. Yet the
installation for this project is "harder" to run.

Question is it possible to include short cuts to initdb / start server /
stop server in the CYGWIN install package?

Yes,
A new initd script will come with 8.0,
which just calls pg_ctl and
adds service install/uninstall args.

-----Original Message-----
From: Robert Treat [mailto:xzilla@users.sourceforge.net]
Sent: Tuesday, 19 October 2004 9:17 AM
To: Richard Sydney-Smith
Cc: pgsql-cygwin@postgresql.org
Subject: Re: [CYGWIN] Where is the link to cygwin?

On Monday 18 October 2004 13:49, Richard Sydney-Smith wrote:

Have been using the W32 port and need to access the cygiwn version
again for a friend with w9X instead of wXP. Need a version that will
run the the Fat32 environment.

http://www.postgresql.org/docs/faqs/text/FAQ_CYGWIN

--
Reini Urban
http://xarch.tu-graz.ac.at/home/rurban/

#5Marek Lewczuk
newsy@lewczuk.com
In reply to: Reini Urban (#4)
Re: Where is the link to cygwin?

Reini Urban wrote:

Richard Sydney-Smith schrieb:

Yes,
A new initd script will come with 8.0,
which just calls pg_ctl and
adds service install/uninstall args.

Reini,
a few days ago you wrote that you are working on plperl patch for cygwin
- how are doing with this ? I also found a bug in "pg_ctl register"
function - it adds a service, but the path to the pg_ctl file is
/usr/local/pgsl/bin/pg_ctl.exe - which is not available in windows....
or "pg_ctl register" will not work on cygwin ?

Regards,

ML

#6Reini Urban
rurban@x-ray.at
In reply to: Marek Lewczuk (#5)
Re: Where is the link to cygwin?

Marek Lewczuk schrieb:

Reini Urban wrote:

Richard Sydney-Smith schrieb:
A new initd script will come with 8.0,
which just calls pg_ctl and
adds service install/uninstall args.

Reini,
a few days ago you wrote that you are working on plperl patch for cygwin
- how are doing with this ?

well, bruce said that it should work now.
I got reproducable crashes with IPC.
But I really think that are problems with our cygserver,
not with postgresql. That's why I'm busy with testing our cygserver,
and a few libtool bugs.

I also found a bug in "pg_ctl register"
function - it adds a service, but the path to the pg_ctl file is
/usr/local/pgsl/bin/pg_ctl.exe - which is not available in windows....
or "pg_ctl register" will not work on cygwin ?

Ah, thanks Marek!

$ psservice config PostgreSQL

PsService v1.01 - local and remote services viewer/controller
Copyright (C) 2001 Mark Russinovich
Sysinternals - www.sysinternals.com

SERVICE_NAME: PostgreSQL
(null)
TYPE : 10 WIN32_OWN_PROCESS
START_TYPE : 2 AUTO_START
ERROR_CONTROL : 1 NORMAL
BINARY_PATH_NAME :
/usr/src/postgresql/postgresql-8.0.0cvs/.inst/usr/sbin/./pg_ctl.exe
runservice -N "PostgreSQL" -D "/usr/share/postgresql/data"
LOAD_ORDER_GROUP :
TAG : 0
DISPLAY_NAME : PostgreSQL
DEPENDENCIES : RPCSS
SERVICE_START_NAME: LocalSystem

We need another patch to pg_ctl to convert the exe path.

cd /usr/src/postgresql/postgresql-8.0.0cvs/src/bin/pg_ctl
patch -p0 < cyg-ctlpaths.patch
make
cp ./pg_ctl.exe /usr/src/postgresql/postgresql-8.0.0cvs/.inst/usr/sbin

$ ./pg_ctl.exe unregister

rurban@reini /usr/src/postgresql/postgresql-8.0.0cvs/.inst/usr/sbin
$ ./pg_ctl.exe register

rurban@reini /usr/src/postgresql/postgresql-8.0.0cvs/.inst/usr/sbin
$ psservice config PostgreSQL

PsService v1.01 - local and remote services viewer/controller
Copyright (C) 2001 Mark Russinovich
Sysinternals - www.sysinternals.com

SERVICE_NAME: PostgreSQL
(null)
TYPE : 10 WIN32_OWN_PROCESS
START_TYPE : 2 AUTO_START
ERROR_CONTROL : 1 NORMAL
BINARY_PATH_NAME :
f:\prog\gnu\cygwin\postgresql\postgresql-8.0.0cvs\.inst\usr\sbin\pg_ctl.
exe runservice -N "PostgreSQL" -D "/usr/share/postgresql/data"
LOAD_ORDER_GROUP :
TAG : 0
DISPLAY_NAME : PostgreSQL
DEPENDENCIES : RPCSS
SERVICE_START_NAME: LocalSystem

--
Reini Urban
http://xarch.tu-graz.ac.at/home/rurban/

Attachments:

cyg-ctlpaths.patchtext/plain; name=cyg-ctlpaths.patchDownload+9-0
#7Bruce Momjian
bruce@momjian.us
In reply to: Reini Urban (#6)
Re: Where is the link to cygwin?

Your patch has been added to the PostgreSQL unapplied patches list at:

http://momjian.postgresql.org/cgi-bin/pgpatches

It will be applied as soon as one of the PostgreSQL committers reviews
and approves it.

---------------------------------------------------------------------------

Reini Urban wrote:

Marek Lewczuk schrieb:

Reini Urban wrote:

Richard Sydney-Smith schrieb:
A new initd script will come with 8.0,
which just calls pg_ctl and
adds service install/uninstall args.

Reini,
a few days ago you wrote that you are working on plperl patch for cygwin
- how are doing with this ?

well, bruce said that it should work now.
I got reproducable crashes with IPC.
But I really think that are problems with our cygserver,
not with postgresql. That's why I'm busy with testing our cygserver,
and a few libtool bugs.

I also found a bug in "pg_ctl register"
function - it adds a service, but the path to the pg_ctl file is
/usr/local/pgsl/bin/pg_ctl.exe - which is not available in windows....
or "pg_ctl register" will not work on cygwin ?

Ah, thanks Marek!

$ psservice config PostgreSQL

PsService v1.01 - local and remote services viewer/controller
Copyright (C) 2001 Mark Russinovich
Sysinternals - www.sysinternals.com

SERVICE_NAME: PostgreSQL
(null)
TYPE : 10 WIN32_OWN_PROCESS
START_TYPE : 2 AUTO_START
ERROR_CONTROL : 1 NORMAL
BINARY_PATH_NAME :
/usr/src/postgresql/postgresql-8.0.0cvs/.inst/usr/sbin/./pg_ctl.exe
runservice -N "PostgreSQL" -D "/usr/share/postgresql/data"
LOAD_ORDER_GROUP :
TAG : 0
DISPLAY_NAME : PostgreSQL
DEPENDENCIES : RPCSS
SERVICE_START_NAME: LocalSystem

We need another patch to pg_ctl to convert the exe path.

cd /usr/src/postgresql/postgresql-8.0.0cvs/src/bin/pg_ctl
patch -p0 < cyg-ctlpaths.patch
make
cp ./pg_ctl.exe /usr/src/postgresql/postgresql-8.0.0cvs/.inst/usr/sbin

$ ./pg_ctl.exe unregister

rurban@reini /usr/src/postgresql/postgresql-8.0.0cvs/.inst/usr/sbin
$ ./pg_ctl.exe register

rurban@reini /usr/src/postgresql/postgresql-8.0.0cvs/.inst/usr/sbin
$ psservice config PostgreSQL

PsService v1.01 - local and remote services viewer/controller
Copyright (C) 2001 Mark Russinovich
Sysinternals - www.sysinternals.com

SERVICE_NAME: PostgreSQL
(null)
TYPE : 10 WIN32_OWN_PROCESS
START_TYPE : 2 AUTO_START
ERROR_CONTROL : 1 NORMAL
BINARY_PATH_NAME :
f:\prog\gnu\cygwin\postgresql\postgresql-8.0.0cvs\.inst\usr\sbin\pg_ctl.
exe runservice -N "PostgreSQL" -D "/usr/share/postgresql/data"
LOAD_ORDER_GROUP :
TAG : 0
DISPLAY_NAME : PostgreSQL
DEPENDENCIES : RPCSS
SERVICE_START_NAME: LocalSystem

--
Reini Urban
http://xarch.tu-graz.ac.at/home/rurban/

Index: pg_ctl.c
===================================================================
RCS file: /projects/cvsroot/pgsql/src/bin/pg_ctl/pg_ctl.c,v
retrieving revision 1.39
diff -u -b -c -r1.39 pg_ctl.c
*** pg_ctl.c	16 Oct 2004 03:10:14 -0000	1.39
--- pg_ctl.c	20 Oct 2004 01:02:56 -0000
***************
*** 22,27 ****
--- 22,28 ----
#include "getopt_long.h"

#if defined(__CYGWIN__)
+ #include <sys/cygwin.h>
#include <windows.h>
#endif

***************
*** 814,819 ****
--- 815,823 ----
{
static char cmdLine[MAXPGPATH];
int			ret;
+ #ifdef __CYGWIN__
+ 	static char buf[MAXPGPATH];
+ #endif
if (registration)
ret = find_my_exec(argv0, cmdLine);
***************
*** 824,829 ****
--- 828,838 ----
write_stderr(_("%s: could not find exe"), progname);
exit(1);
}
+ #ifdef __CYGWIN__
+ 	/* need to convert to windows path */
+ 	cygwin_conv_to_full_win32_path (cmdLine, buf);
+ 	strcpy(cmdLine, buf);
+ #endif

if (registration)
{

---------------------------(end of broadcast)---------------------------
TIP 6: Have you searched our list archives?

http://archives.postgresql.org

-- 
  Bruce Momjian                        |  http://candle.pha.pa.us
  pgman@candle.pha.pa.us               |  (610) 359-1001
  +  If your life is a hard drive,     |  13 Roberts Road
  +  Christ can be your backup.        |  Newtown Square, Pennsylvania 19073
#8Bruce Momjian
bruce@momjian.us
In reply to: Reini Urban (#6)
Re: Where is the link to cygwin?

We just added code to add the *.exe suffix for MinGW and I am hoping
this will fix your register problem on Cygwin too. Would you test a
recent snapshot and let me know if it works?

---------------------------------------------------------------------------

Reini Urban wrote:

Marek Lewczuk schrieb:

Reini Urban wrote:

Richard Sydney-Smith schrieb:
A new initd script will come with 8.0,
which just calls pg_ctl and
adds service install/uninstall args.

Reini,
a few days ago you wrote that you are working on plperl patch for cygwin
- how are doing with this ?

well, bruce said that it should work now.
I got reproducable crashes with IPC.
But I really think that are problems with our cygserver,
not with postgresql. That's why I'm busy with testing our cygserver,
and a few libtool bugs.

I also found a bug in "pg_ctl register"
function - it adds a service, but the path to the pg_ctl file is
/usr/local/pgsl/bin/pg_ctl.exe - which is not available in windows....
or "pg_ctl register" will not work on cygwin ?

Ah, thanks Marek!

$ psservice config PostgreSQL

PsService v1.01 - local and remote services viewer/controller
Copyright (C) 2001 Mark Russinovich
Sysinternals - www.sysinternals.com

SERVICE_NAME: PostgreSQL
(null)
TYPE : 10 WIN32_OWN_PROCESS
START_TYPE : 2 AUTO_START
ERROR_CONTROL : 1 NORMAL
BINARY_PATH_NAME :
/usr/src/postgresql/postgresql-8.0.0cvs/.inst/usr/sbin/./pg_ctl.exe
runservice -N "PostgreSQL" -D "/usr/share/postgresql/data"
LOAD_ORDER_GROUP :
TAG : 0
DISPLAY_NAME : PostgreSQL
DEPENDENCIES : RPCSS
SERVICE_START_NAME: LocalSystem

We need another patch to pg_ctl to convert the exe path.

cd /usr/src/postgresql/postgresql-8.0.0cvs/src/bin/pg_ctl
patch -p0 < cyg-ctlpaths.patch
make
cp ./pg_ctl.exe /usr/src/postgresql/postgresql-8.0.0cvs/.inst/usr/sbin

$ ./pg_ctl.exe unregister

rurban@reini /usr/src/postgresql/postgresql-8.0.0cvs/.inst/usr/sbin
$ ./pg_ctl.exe register

rurban@reini /usr/src/postgresql/postgresql-8.0.0cvs/.inst/usr/sbin
$ psservice config PostgreSQL

PsService v1.01 - local and remote services viewer/controller
Copyright (C) 2001 Mark Russinovich
Sysinternals - www.sysinternals.com

SERVICE_NAME: PostgreSQL
(null)
TYPE : 10 WIN32_OWN_PROCESS
START_TYPE : 2 AUTO_START
ERROR_CONTROL : 1 NORMAL
BINARY_PATH_NAME :
f:\prog\gnu\cygwin\postgresql\postgresql-8.0.0cvs\.inst\usr\sbin\pg_ctl.
exe runservice -N "PostgreSQL" -D "/usr/share/postgresql/data"
LOAD_ORDER_GROUP :
TAG : 0
DISPLAY_NAME : PostgreSQL
DEPENDENCIES : RPCSS
SERVICE_START_NAME: LocalSystem

--
Reini Urban
http://xarch.tu-graz.ac.at/home/rurban/

Index: pg_ctl.c
===================================================================
RCS file: /projects/cvsroot/pgsql/src/bin/pg_ctl/pg_ctl.c,v
retrieving revision 1.39
diff -u -b -c -r1.39 pg_ctl.c
*** pg_ctl.c	16 Oct 2004 03:10:14 -0000	1.39
--- pg_ctl.c	20 Oct 2004 01:02:56 -0000
***************
*** 22,27 ****
--- 22,28 ----
#include "getopt_long.h"

#if defined(__CYGWIN__)
+ #include <sys/cygwin.h>
#include <windows.h>
#endif

***************
*** 814,819 ****
--- 815,823 ----
{
static char cmdLine[MAXPGPATH];
int			ret;
+ #ifdef __CYGWIN__
+ 	static char buf[MAXPGPATH];
+ #endif
if (registration)
ret = find_my_exec(argv0, cmdLine);
***************
*** 824,829 ****
--- 828,838 ----
write_stderr(_("%s: could not find exe"), progname);
exit(1);
}
+ #ifdef __CYGWIN__
+ 	/* need to convert to windows path */
+ 	cygwin_conv_to_full_win32_path (cmdLine, buf);
+ 	strcpy(cmdLine, buf);
+ #endif

if (registration)
{

---------------------------(end of broadcast)---------------------------
TIP 6: Have you searched our list archives?

http://archives.postgresql.org

-- 
  Bruce Momjian                        |  http://candle.pha.pa.us
  pgman@candle.pha.pa.us               |  (610) 359-1001
  +  If your life is a hard drive,     |  13 Roberts Road
  +  Christ can be your backup.        |  Newtown Square, Pennsylvania 19073
#9Marek Lewczuk
newsy@lewczuk.com
In reply to: Bruce Momjian (#8)
Re: [PATCHES] Where is the link to cygwin?

Bruce Momjian wrote:

We just added code to add the *.exe suffix for MinGW and I am hoping
this will fix your register problem on Cygwin too. Would you test a
recent snapshot and let me know if it works?

Latest CVS compilation fails, so I was not able to check pg_ctl.

make[4]: Leaving directory `/usr/src/pgsql/src/backend/parser'
gcc -O2 -Wall -Wmissing-prototypes -Wpointer-arith -Wendif-labels
-fno-strict-al
iasing pg_dump.o common.o pg_dump_sort.o pg_backup_archiver.o
pg_backup_db.o pg_
backup_custom.o pg_backup_files.o pg_backup_null.o pg_backup_tar.o
dumputils.o
../../../src/backend/parser/keywords.o -L../../../src/interfaces/libpq
-lpq -L..
/../../src/port -L/usr/local/lib -lpgport -lz -lreadline -lcrypt -o
pg_dump.exe

../../../src/port/libpgport.a(pgstrcasecmp.o)(.text+0x1b0):pgstrcasecmp.c:
multi
ple definition of `_pg_tolower'
../../../src/interfaces/libpq/libpq.a(dyofs00145.o)(.text+0x0): first
defined he
re
Info: resolving _optarg by linking to __imp__optarg (auto-import)
Info: resolving _optind by linking to __imp__optind (auto-import)
collect2: ld returned 1 exit status
make[3]: *** [pg_dump] Error 1
make[3]: Leaving directory `/usr/src/pgsql/src/bin/pg_dump'
make[2]: *** [all] Error 2
make[2]: Leaving directory `/usr/src/pgsql/src/bin'
make[1]: *** [all] Error 2
make[1]: Leaving directory `/usr/src/pgsql/src'
make: *** [all] Error 2

Best regards
ML