Обсуждение: Building pgtcl on OS X

Поиск
Список
Период
Сортировка

Building pgtcl on OS X

От
Gugs E Lishus
Дата:
Hi Everyone,

So far as I know, there isn't a fully native version of tcl/tk running
under Mac OS X yet (though it's in the works). However, thanks to
XDarwin, we can now run the standard X-Windows version of tcl/tk under
X-Windows on OS X. Woohoo!

PostgreSQL and its standard clients also compile on OS X without a hitch
(and are available in binary form on the internet).

Now it's time to combine the two. What I've done so far is download and
install binaries of PostgreSQL and XDarwin. Then I used fink to
download, compile, and install windowmaker and tcl/tk 8.3.3-2.

Everything works like a charm up to that point. tcl/tk apps runs fine
and postgreSQL runs fine. Getting the two to communicate is the problem.
What I need is the pgtcl library that is the interface between the two.
The source code for pgtcl is part of the standard postgreSQL source
package (under src/interfaces/libpgtcl) and with some massaging of the
Makefile, it will compile successfully.

But the problem is that it creates a libpgtcl.so file, whereas tcl/tk
seems to be looking for libpgtcl.dylib. Can anyone help me with the
final steps here? I don't know much about the difference between .so
files and .dylib files. I think I'm very close to getting this working!
The obvious next step after that would be to get pgAccess working on OS
X, though that's not a personal priority for me right now.

Thanks,
     Gugs

_________________________________________________________
Do You Yahoo!?
Get your free @yahoo.com address at http://mail.yahoo.com


Re: Building pgtcl on OS X

От
Daniel Luke
Дата:
Gugs E Lishus wrote:

> But the problem is that it creates a libpgtcl.so file, whereas tcl/tk
> seems to be looking for libpgtcl.dylib. Can anyone help me with the
> final steps here?


I am by no means an expert on this ... but it sounds like you are
running into one of the 'strange' things about Mac OS X (it doesn't use
the 'normal' dlopen() api).

There are a couple of options ... you can use the dlopen() shim (which
has it's own potential issues), or you can 'fix' the code to use the
native Mac OS X/Darwin dynamic loading stuff (check the apache source
code for a good example of how to do this, or look at the mailing list
archives at www.darwinfo.org).

I hope this helps.