[In the message "[sqlite] --prefix" on May 29, 13:11, "Smith1, Robert E" writes:] > Hi, > > I am trying to install sqlite3 on Sun Solaris 2.8. I am not root so I > cannot install to /usr/local. I start configure with > --prefix=/ptmp/usr/local to try to get it to install to a different > directory.
This is the correct syntax for what you are trying to do. > But I get the same > > error: > > /ptmp/bld/> make install > > tclsh ../sqlite-3.3.17/tclinstaller.tcl 3.3 > > can't create directory "/usr/local/lib/tcl8.4/sqlite3": read-only file > system > > while executing > > "file mkdir $LIBDIR/sqlite3" > > (file "../sqlite-3.3.17/tclinstaller.tcl" line 15) > > *** Error code 1 > > make: Fatal error: Command failed for target `tcl_install' I have not done this myself but I think I know what the problem is. Your sqlite installation is correctly figuring out the prefix and is being installed in the right place. There is an additional piece of software that is being installed, though. It is tclsqlite extension to tcl. This is probably a shared library and a tcl loader, which reacts to the "package require tclsqlite" command in tcl. The question is, where are those being installed. Since they are being used by tcl and not by sqlite, they get installed where tcl can see them. Since you are probably using system wide tclsh and not the one (not) installed in /ptmp/usr/local, the system wide one is trying to install the extension where it will find it. That is most likely its own library area. The hint is: > can't create directory "/usr/local/lib/tcl8.4/sqlite3": read-only file Try running: which tclsh and you will probably find that it is /usr/local/bin/tclsh8.4 or something like that. > Is my syntax for --prefix correct and is that supposed to correct the > above error? So what is the solution here? You can run: make -k install and it will install everyting that it can, excluding tcl extension. If you want to run tclsqlite from tcl, you can by hand copy the shared library which would be placed in: $LIBDIR/sqlite3 somewhere you can write, /ptmp/usr/local/lib perhaps. Before you run "make -k install", run "make -n install" and save the output, since it will tell you what it was planning to do with tclsqlite files. When in the future you want to use tclsqlite from tclsh, instead of: package require tclsqlite you would have to try something like load /ptmp/usr/local/lib/libtclsqlite3.so I am sure there are other solutions, but this might get you moving. > Robert Nikola ----------------------------------------------------------------------------- To unsubscribe, send email to [EMAIL PROTECTED] -----------------------------------------------------------------------------