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 |