kevin@kosman.UUCP (Kevin O'Gorman) (11/16/87)
I just tried to compile umoria, and can do that just fine, but it fails to link because of four undefined symbols in io.c: saveterm cbreak nocbreak resetterm These appear to be function calls, and I can kind of guess what they ought to do, but I'm not sure. What gives? I'm running on an AT&T UNIX PC (3b1), and I guess that makes me as USG as you can get. I'm not at all sure I know how to write the four routines. HELP???
nic@marque.mu.edu (Nic Bernstein) (11/17/87)
In article <345@kosman.UUCP> kevin@kosman.UUCP (Kevin O'Gorman) writes: >I just tried to compile umoria, and can do that just fine, but it fails to >link because of four undefined symbols in io.c: > >saveterm >cbreak >nocbreak >resetterm > >These appear to be function calls, and I can kind of guess what they ought >to do, but I'm not sure. What gives? > >I'm running on an AT&T UNIX PC (3b1), and I guess that makes me as USG as >you can get. I'm not at all sure I know how to write the four routines. > >HELP??? Sounds like you have the "ccs" script that runs the shared library and changes the original "cc" to "c-complier". If so you are trying to load "curses" functions and you don't have them in your "tam" library which is what the shared library uses. If this is true just change the makefile to say: CC=c-compiler That should fix it up. Or you could also rename "cc" to save it and re-rename "c-compiler" back to "cc" (these should be in /bin). If this isn't the problem then either your "curses" library is damaged or you may have changed the makefile to not include "-lcurses" and "-ltermlib" in the final link phase. ("libtermlib" and "libtermcap" are linked on this system so either will do) We have successfully gotten umoria up on both a 3B1 and PC7300 running 3.51 and I am amazed that there were so little adjustments necessary. Normally code of this size requires some fiddling but this thing compiled and ran right out of the box! My congratulations to the authors. By the way, "moria" has been all the rage (off VMS systems) aroung here for years and it is quite a feather to have it running at last on Unix. This simulation makes almost anything I have seem so far in a D&D type game, tame by comparison. Try running wizard mode and print out a few level maps. Also be sure and see how complete the "monster" info is. - Nic
bill@bcsfse.UUCP (Bill Sears) (11/20/87)
In article <345@kosman.UUCP> kevin@kosman.UUCP (Kevin O'Gorman) writes: >I just tried to compile umoria, and can do that just fine, but it fails to >link because of four undefined symbols in io.c: > >saveterm >cbreak >nocbreak >resetterm > >These appear to be function calls, and I can kind of guess what they ought >to do, but I'm not sure. What gives? > >I'm running on an AT&T UNIX PC (3b1), and I guess that makes me as USG as >you can get. I'm not at all sure I know how to write the four routines. > >HELP??? I have the same problem. I'm running a Megadata Model 7 with Unix SYSV. I have looked through libcurses.a (that's where the calls are on the system at work) but they're not there. I tried writing some of my own with ioctl calls using ICANON and various other things but I can't seem to get the correct combination. Another problem I am having is that I keep getting the error message Illegal Row = -12, Col = -9 or something like that (this is from memory). Why might there be negative number being passed to move (wmove(stdscr))? I have looked through my source and can't find anything wrong. I have seen the same source working on other systems. I get all the way through the character selection phase and when it asks me to enter my character name it says, Enter character name [Press <rTURN> when finished] or ^sic^ Enter character name [Press ?x52?.>2?=+x:@-! ^garbage^ Can anyone see a possible reason for this? Then after I enter my characters name and press RETURN, I get the stats block and the TOWN LEVEL message, but that's it. None of the town gets displayed and I start getting the illegal row and column message like above. -- Bill Sears ...!uw-beaver!ssc-vax!voodoo!bcsfse!bill FSE development project All I ask of life is a constant and exaggerated sense of my own importance.
allbery@ncoast.UUCP (Brandon Allbery) (11/21/87)
As quoted from <345@kosman.UUCP> by kevin@kosman.UUCP (Kevin O'Gorman): +--------------- | saveterm, cbreak, nocbreak, resetterm | | I'm running on an AT&T UNIX PC (3b1), and I guess that makes me as USG as | you can get. I'm not at all sure I know how to write the four routines. +--------------- You're not as USG as you can get; the UNIX PC runs CTIX from Convergent Technologies.... Sounds like you didn't install the Curses/Terminfo Development Package. The functions in question are terminfo functions, as opposed to termcap ones. Alas, the default curses on the 3B1 uses termcap rather than terminfo (I find terminfo to be much cleaner). You probably need to be at the 3.5 release or later to get this; it comes with the 3.5 and 3.51 development systems. -- Brandon S. Allbery necntc!ncoast!allbery@harvard.harvard.edu {hoptoad,harvard!necntc,{sun,cbosgd}!mandrill!hal,uunet!hnsurg3}!ncoast!allbery Moderator of comp.sources.misc
kevin@kosman.UUCP (Kevin O'Gorman) (11/26/87)
In article <5719@ncoast.UUCP> allbery@ncoast.UUCP (Brandon Allbery) writes: |As quoted from <345@kosman.UUCP> by kevin@kosman.UUCP (Kevin O'Gorman): |+--------------- || saveterm, cbreak, nocbreak, resetterm || || I'm running on an AT&T UNIX PC (3b1), and I guess that makes me as USG as || you can get. I'm not at all sure I know how to write the four routines. |+--------------- | |You're not as USG as you can get; the UNIX PC runs CTIX from Convergent |Technologies.... | |Sounds like you didn't install the Curses/Terminfo Development Package. The |functions in question are terminfo functions, as opposed to termcap ones. |Alas, the default curses on the 3B1 uses termcap rather than terminfo (I find |terminfo to be much cleaner). You probably need to be at the 3.5 release or |later to get this; it comes with the 3.5 and 3.51 development systems. Nope. I tried this solution, and MORIA still refused to link. I eventually stuck some extra stuff into CFLAGS in the Makefile: -Dsaveterm=savetty -Dresetterm=resetty \ -Dcbreak=crmode -Dnocbreak=nocrmode and this fixed the problem. Moria runs just fine now. I dunno what those other calls are, but it isn't terminfo, at least as I got it from AT&T. -- Kevin O'Gorman ( kevin@kosman ) Vital Computer Systems, Oxnard, CA 93035