By using this site, you agree to our updated Privacy Policy and our Terms of Use. Manage your Cookies Settings.
424,853 Members | 1,541 Online
Bytes IT Community
+ Ask a Question
Need help? Post your question and get tips & solutions from a community of 424,853 IT Pros & Developers. It's quick & easy.

Tcl load command and mac os x

P: n/a
At the time I built Postgresql 7.4.2 I did not have aqua Tcl/Tk
installed.

The Aqua Tcl/Tk version installs in a different location the the apple
supplied Tcl ( apple does not supply Tk). I built with support for Tcl
and it found the apple supplied version and built pgtclsh and libpgtcl.a
and a libpgtcl.so

If I start the "regular" tclsh and try to use the load command I get
load
failures

% load libpgtcl
dyld: tclsh can't open library: libpgtcl (No such file or directory,
errno = 2)

% load /usr/local/pgsql/lib/libpgctl
dyld: tclsh can't open library: /usr/local/pgsql/lib/libpgctl (No such
file or directory, errno = 2)

% load /usr/local/pgsql/lib/libpgtcl
dyld: tclsh can't open library: /usr/local/pgsql/lib/libpgtcl (No such
file or directory, errno = 2)

% load /usr/local/pgsql/lib/libpgtcl.so
dyld: tclsh malformed library: /usr/local/pgsql/lib/libpgtcl.so (not a
Mach-O library file, bad filetype value)

% load /usr/local/pgsql/lib/libpgtcl.a
dyld: tclsh malformed library: /usr/local/pgsql/lib/libpgtcl.a (not a
Mach-O file, bad magic number)

Question 1) Is it possible to dynamically load the postgresql stuff
into an "ordinary" tclsh?
Question 2) Since I have Apple's Tcl and the Aqua Tcl/Tk how do I force
config to use the
aqua version?

Thanks
---------------------------(end of broadcast)---------------------------
TIP 5: Have you checked our extensive FAQ?

http://www.postgresql.org/docs/faqs/FAQ.html

Nov 23 '05 #1
Share this Question
Share on Google+
1 Reply


P: n/a
Jerry,

On Wednesday, Apr 7, 2004, at 08:25 Australia/Sydney, Jerry LeVan wrote:
% load /usr/local/pgsql/lib/libpgtcl.so
dyld: tclsh malformed library: /usr/local/pgsql/lib/libpgtcl.so (not a
Mach-O library file, bad filetype value)
this should do it, however it appears that your library isn't a Mac OS
X shared library, probably you built a MachO bundle instead of a MachO
dylib. You'll have to look at the postgres buildsystem to see why it
doesn't use the information in tclConfig.sh (i.e. TCL_SHLIB_LD) to
build tcl extensions. The link line should use '-dynamiclib' and not
'-bundle', c.f. 'man ld' for details.

also, you really want to use the OSX standard .dylib shared library
extension, so that you can use
[load libpgtcl[info sharedlibextension]]
in cross-platform tcl code.
% load /usr/local/pgsql/lib/libpgtcl.a
dyld: tclsh malformed library: /usr/local/pgsql/lib/libpgtcl.a (not a
Mach-O file, bad magic number)
you cannot load static libraries
Question 2) Since I have Apple's Tcl and the Aqua Tcl/Tk how do I
force config to use the
aqua version?


if postgres has a TEA compliant configure script, use
./configure --with-tcl=/Library/Frameworks/Tcl.framework
--with-tclinclude=/Library/Frameworks/Tcl.framework/Headers

similar issues have come up many many times before on the tcl-mac list,
you may want to consult the list archives...

Cheers,

Daniel

--
** Daniel A. Steffen ** "And now for something completely
** Dept. of Mathematics ** different" Monty Python
** Macquarie University ** <mailto:st*****@maths.mq.edu.au>
** NSW 2109 Australia ** <http://www.maths.mq.edu.au/~steffen/>
---------------------------(end of broadcast)---------------------------
TIP 6: Have you searched our list archives?

http://archives.postgresql.org

Nov 23 '05 #2

This discussion thread is closed

Replies have been disabled for this discussion.