Hi all,
I am new to newLisp and working through the manual. The example says:
Quote
(1) Put the following files into the same directory: (a) a copy of the newLISP executable; (b) newlisp (or newlisp.exe on Win32); (c) link.lsp; and (d) the program to link with (uppercase.lsp in this example).
On Linux I don't understand the distinction between a) and b). Assuming they are the same and using this directory
$ ls Lisp/newLispCode
link.lsp newlisp uppercase.lsp
I get the following results:
$ newlisp link.lsp
Hi
newLISP v.10.3.3 64-bit on Linux IPv4/6 UTF-8, execute 'newlisp -h' for more info.
> (link "newlisp" "uppercase" "uppercase.lsp")
original newlisp executable:newlisp
new executable:uppercase
source:uppercase.lsp
true
> (exit)
$ chmod 775 uppercase
$ ./uppercase "convert me to uppercase"
newLISP v.10.3.3 64-bit on Linux IPv4/6 UTF-8, execute 'newlisp -h' for more info.
> (last-error)
nil
>
The executable uppercase is 76 bytes larger than newlisp but behaves as if nothing was linked in.
Can anyone point out what I am missing?
Sorry for the confusion. In the manual it should say (now corrected online):
Quote
Put the following files into the same current directory: (a) a copy of the newLISP executable, either newlisp or newlisp.exe on Win32; (b) link.lsp; and (c) the program to link with (uppercase.lsp in this example).
Make sure all three files are either in the current directory, or specify full path-names for all components.
Also, I just found out, the link feature only works with 32-bit versions of newLISP (I will try to fix this for the next version). You are running 64-bit. Perhaps you can compile for 32-bit using the makefile_linux or makefile_linux_utf8 makefile to make for 32-bit:
make -f makefile_linux_utf8
Thanks Lutz,
It is nice to know I'm not crazy. I will watch for the 64 bit fix - no hurry.
The link.lsp problem for 64-bit versions is fixed here:
http://www.newlisp.org/downloads/development/inprogress/
An official development version will be released coming week.
It works! Thank you.