Re: [Clorb-devel] clorb-0.2 on CMUCL and CLISP
Status: Alpha
Brought to you by:
lenst
|
From: Brad C. <cha...@ar...> - 2000-06-30 20:43:20
|
[..snip...server traces from cmu cl...]
> This is from make-string. It must be LEN that is -1. And it must be
> the operation name it is trying to unmarshal. I can't figure out why
> the length is -1.
>
> What kind of machine and OS are you running on?
I'm running this on FreeBSD 3.3 and with CMU CL 18b and clisp
2000-03-06.
> Could you try and load the "test-marshal.lisp" and see if it
produces any
> errors?
test-marshal.lisp loads fine and tests with zero errors. This inspired
me to try out the other tests, and the only one which fails is
test-intern.lisp (this is the cmu cl output, but it also fails on
clisp with similar output):
* (load "test-intern.lisp")
; Loading #p"/usr/home/chapmanb/clorb-0.2/test-intern.lisp".
Warning: This variable is undefined:
*R
Warning: This function is undefined:
INTERNALIZE
;;; In test case Test hello
;;;! Exception
Error in function PCL::FIND-CLASS-FROM-CELL: No class named:
IREPOSITORY.
;;; ------------- Test Internalize finished -----------------
;;; 1 tests executed with 1 errors
Could the problem be due to sockets? (since that seems to be a
sticking point with the clisp server). The error didn't really seem
like it, but I am also still working on getting Dan Barlow's socket
code working on FreeBSD, so I am using whatever socket capabilities
cmu cl has. Just a random idea because I'm not positive where to go.
To talk myself out of that, if Eric has this problem as well, this may
not be the case.
Onward to clisp:
> Eric Marsden:
>
>> bc> [7]> (run-hello :file "hw.ior")
>> bc>
>> bc> *** - UNIX error 49 (EADDRNOTAVAIL): Can't assign requested
address
>>
>> it looks like you already have something running on the port
specified
>> in clorb-options.lisp (maybe simply CLORB in another lisp
instance?).
Lennart:
> I think that that would usually give another error code.
> I wonder what that error code means. It is probably not the same as
> "address already in use". Could you try to find a description of this
> error. The man-pages socket(2), bind(2) and listen(2) might contain
> something. The Linux man-pages doesn't (they say "SVr4 documents
> additional EADDRNOTAVAIL, EADDRINUSE, and ENOSR general error
> conditions").
Okay, I double checked that port and nothing is running on it. For
fun, I modified the port to ones that I've used previously (for
python programming, tho), and added Eric's fixes for defining the
*host* without relieving the errors :-<.
The FreeBSD bind man page has the following to say about
EADDNOTAVAIL:
[EADDRNOTAVAIL]
The specified address is not available from the local
machine.
and I guess if it was the problem Eric mentioned, I would see an error
like:
[EADDRINUSE]
The specified address is already in use.
Of course, now I don't have any idea what kind of problems cause an
address not to be available :-<.
Eric:
>> The hello example works fine for me with CLISP (the
>> InterfaceRepository has to know about the IDL:Hello/World interface
>> first).
Lennart:
> An alternative is to load the hello-idl.lisp file before running
> run-hello. That allows the hello servant to provide the client with
an
> InterfaceDef object for the Hello:World interface.
>
> With (clorb::load-ir) and the above file, it should be possible to
run
> the example without an InterfaceRepository.
The (clorb::load-ir) method is what I've been using to try and get
this working (I'm following almost exactly the information in the
README). So if this way works fine for both of you on Solaris and
Linux, then there must be a problem with clisp and FreeBSD sockets? Is
the best route now to go to the clisp list and see what I can find out
there?
I really appreciate both of you helping me with these problems. If
there is anything else at all I can try, I would be happy to do so.
Thanks again!
Brad
|