Rafael Martinez Guerrero wrote:

Hello

I have a problem running initdb 8.0.1. I get this error message when I
try to run this command in my system:

-------------------------------------------------------------------
-bash-2.05b$ /local/opt/postgresql/bin/initdb The program "postgres" is needed by initdb but was not found in the
same directory as
"/local/store/bbking/.postgresql/ver-8.0.1/opt/postgresql/bin/[EMAIL PROTECTED]".
Check your installation.
-------------------------------------------------------------------


strace shows this:
-------------------------------------------------------------------
......
......
getcwd("/", 1024)               = 10
chdir("/local/opt/postgresql/bin")      = 0
lstat64("initdb", {st_mode=S_IFLNK|0777, st_size=82, ...}) = 0
readlink("initdb",
"/local/store/bbking/.postgresql/ver-8.0.1/opt/postgresql/bin/[EMAIL 
PROTECTED]", 1024) = 82
chdir("/local/store/bbking/.postgresql/ver-8.0.1/opt/postgresql/bin") =
0
lstat64("[EMAIL PROTECTED]", {st_mode=S_IFREG|0755, st_size=47506,
...}) = 0
getcwd("/local/store/bbking/.postgresql/ver-8.0.1/opt/postgresql/bin",
1024) = 73
chdir("/")                      = 0
write(2, "The program \"postgres\" is needed"..., 209The program
"postgres" is needed by initdb but was not found in the
same directory as
"/local/store/bbking/.postgresql/ver-8.0.1/opt/postgresql/bin/[EMAIL 
PROTECTED]".
Check your installation.
) = 209
exit_group(1)                           = ?
-------------------------------------------------------------------

Some additional information:
----------------------------
We are running a system for administration of third party software on
UNIX computers (store). With this system we can compile in a master
server versions for different platforms and different versions of the
software for a platform, distribution happens automatic.

This system is well tested and works without a problem. We have been
running the last 8-9 version of postgres in this system without a
problem.

What the system does is to create a symblink to the version for your
machine (among other things).

For example:

If we install the binaries for postgres under /local/opt/postgresql/bin,
initdb in this directory will be a symblink to
"/local/store/bbking/.postgresql/ver-8.0.1/opt/postgresql/bin/[EMAIL PROTECTED] and


/local/opt/postgresql/bin/postgres will we a symblink to
/local/store/bbking/.postgresql/ver-8.0.1/opt/postgresql/bin/[EMAIL PROTECTED]

if we are in a linux machine.

If we run the same version in a solaris machine:
/local/opt/postgresql/bin/initdb -->
/local/store/bbking/.postgresql/ver-8.0.1/opt/postgresql/bin/[EMAIL PROTECTED]

and

/local/opt/postgresql/bin/postgres -->
/local/store/bbking/.postgresql/ver-8.0.1/opt/postgresql/bin/[EMAIL PROTECTED]

Solution to the problem?:
-------------------------

I solution to this problem will be to look for postgres under the same
directory of initdb (/local/opt/postgresql/bin in our example) and not
under the directory of the initdb symblink target.


Any comment to this?
Thanks for your time.




What a very strange arrangement. Why not symlink the install dirs and leave the executable names alone? Mangling the names of the executables is surely a recipe for a hole in the foot - that you've got away with it up to now seems more a matter of luck than good management ;-)

cheers

andrew

---------------------------(end of broadcast)---------------------------
TIP 3: if posting/reading through Usenet, please send an appropriate
     subscribe-nomail command to [EMAIL PROTECTED] so that your
     message can get through to the mailing list cleanly

Reply via email to