beh@caen.engin.umich.edu (Bob Hruska) (03/28/89)
I've got Manx 3.6a and I'm trying to compile the source to vt100 2.8, but it chokes every time on vt100.c and init.c with the following error: init.c:24: ERROR 49: multiply defined symbol: ConsoleDevice (the same for vt100.c) Now, this should be a pretty straightforward problem to look for/fix, but I cannot find it! All the rest of the files compile fine. Am I missing something here? If someone has the source that will compile by simply running make and not changing a thing, I'm interested... By the way, Tony, is 2.9 going to be out soon enough that I am wasting my time with this? -- Bob Hruska University of Michigan Computer Aided Engineering Network (CAEN) INTERNET: beh@caen.engin.umich.edu UUCP: {umix|ucbvax|uunet}!caen.engin.umich.edu!beh
lfk@uts.amdahl.com (Lynn Kerby) (03/29/89)
In article <424a49e8.1285f@maize.engin.umich.edu> beh@caen.engin.umich.edu (Bob Hruska) writes: > >I've got Manx 3.6a and I'm trying to compile the source to vt100 2.8, >but it chokes every time on vt100.c and init.c with the following error: > >init.c:24: ERROR 49: multiply defined symbol: ConsoleDevice > >(the same for vt100.c) > [other stuff deleted] >Bob Hruska University of Michigan Computer Aided Engineering Network (CAEN) > >INTERNET: beh@caen.engin.umich.edu > UUCP: {umix|ucbvax|uunet}!caen.engin.umich.edu!beh The problem appears to be a bad definition in the MANX 3.6 functions.h file. I went through all the RKM stuff and the Autodocs and cannot find a function called ConsoleDevice. I just commented out that line in functions.h and everything worked fine. -- Lynn Kerby - Amdahl Corporation Sunnyvale, CA ...amdahl!lfk lfk@uts.amdahl.com Disclaimer: Any and all opinions expressed herein are my own and do not necessarily represent the views of anyone, especially my employer.
acs@pccuts.pcc.amdahl.com (Tony Sumrall) (03/29/89)
In article <424a49e8.1285f@maize.engin.umich.edu> beh@caen.engin.umich.edu (Bob Hruska) writes: > >I've got Manx 3.6a and I'm trying to compile the source to vt100 2.8, >but it chokes every time on vt100.c and init.c with the following error: > >init.c:24: ERROR 49: multiply defined symbol: ConsoleDevice > >(the same for vt100.c) The problem lies in how Manx chose to define ConsoleDevice. The way that they did it makes it unusable but it's required if you wanna use RawKeyConvert() (I think that's the routine that requires it). What you need to do is to edit functions.h and either 1) comment out the definition and use the one that's in vt100 -- or -- 2) fix the definition in functions.h and comment out the one in vt100. >By the way, Tony, is 2.9 going to be out soon enough that I am wasting my >time with this? Nope, it won't be out for a while yet (like, several months). Sorry for the delay. I wanted to get it out around 09/88 but work and all has gotten in the way. >Bob Hruska University of Michigan Computer Aided Engineering Network (CAEN) > >INTERNET: beh@caen.engin.umich.edu > UUCP: {umix|ucbvax|uunet}!caen.engin.umich.edu!beh -- Tony Sumrall acs@pccuts.pcc.amdahl.com <=> amdahl!pccuts!acs [ Opinions expressed herein are the author's and should not be construed to reflect the views of Amdahl Corp. ]
ddave@pnet02.cts.com (David Donley) (03/31/89)
Just delete all the 2nd references to Console what ever out of the files. May be confusing, because I think he has it in a seperate include file, so just remove it from the main file. Call the Bug Eyes BBS at (213) 372-4494 ddave@pnet02.CTS.COM ddave@pnet.gryphon.COM killer!gryphon!pnet02!ddave
hull@hao.ucar.edu (Howard Hull) (04/01/89)
In article <11G0Ye8rZ=10101gm52@amdahl.uts.amdahl.com> lfk@tde.uts.amdahl.com (Lynn Kerby) writes: >In article <424a49e8.1285f@maize.engin.umich.edu> beh@caen.engin.umich.edu (Bob Hruska) writes: > > > >I've got Manx 3.6a and I'm trying to compile the source to vt100 2.8, > >but it chokes every time on vt100.c and init.c with the following error: > > > >init.c:24: ERROR 49: multiply defined symbol: ConsoleDevice > > > >(the same for vt100.c) > > >[other stuff deleted] > >Bob Hruska University of Michigan Computer Aided Engineering Network (CAEN) > > > >INTERNET: beh@caen.engin.umich.edu > > UUCP: {umix|ucbvax|uunet}!caen.engin.umich.edu!beh > >The problem appears to be a bad definition in the MANX 3.6 functions.h file. >I went through all the RKM stuff and the Autodocs and cannot find a function >called ConsoleDevice. I just commented out that line in functions.h and >everything worked fine. > I sympathize, but I never like to touch the original includes. For instance, just because you can't find a referenced function, you cannot necessarily conclude that there won't be one by that name in some future software release. Since you have the Autodocs, you also have the CBM Native Developer include files and library tags in machine readable form; did you check those as well to see if there was any reference to ConsoleDevice anywhere in there? I gather that you did. However, placing the name of a reserved function in a type list is a good way to keep people from assigning that name to one of their globally-linked functions. Manx may have done this for some reason of their own making as well. Some sweet day you may discover the reason... [In checking some of the subsequent replies to this article, I did see a note by Tony Sumerall explaining how Manx had used this tag in connection with the RawKeyConvert implementation they provide with the Aztec C 3.6a release.] Is this a reserved item, S. Walton or CATS? Perhaps a better way to handle this is to copy the sys:include/functions.h file to your local source directory and change your #include <functions.h> references to #include "functions.h" in this program (only) so that you can then edit the local functions.h to your heart's content... Howard Hull hull@hao.ucar.edu
acs@pccuts.pcc.amdahl.com (Tony Sumrall) (04/01/89)
Just for clarification: Manx mis-defines ConsoleDevice as a function. It is NOT a function it's (struct Device *) -- at least it comes out of the io_Device field of a IOStdReq struct and is used by Manx's RawKeyConvert() interface routine as a base pointer of some sort (probably a DeviceProc). That's why I suggest either fixing the definition in your Manx functions.h file or removing its definition from said file entirely. -- Tony Sumrall acs@pccuts.pcc.amdahl.com <=> amdahl!pccuts!acs [ Opinions expressed herein are the author's and should not be construed to reflect the views of Amdahl Corp. ]