sbc@informatics.wustl.edu (Steve Cousins) (09/28/90)
Help! After a full week of trying, I'm still not able to get Andrew to build under SunOS 4.1 (and as of yesterday, neither had tom@icase.edu, who has also been posting to this list about this). We have one report of it building on a Sun 4/260 under 4.1, from cameron@cs.flinders.oz.au, but using his config files, we had no success. We tried re-building the exact code that worked on SunOS 4.0.3 previously with the same config parameters, and that failed. We tried loading andrew from scratch from the tapes on wuarchive, including applying the paches 1-6. We also thought it might be the compiler, but couldn't get it to work using either bundled cc from Sun or gcc. Cameron mentioned that he had to get fresh copies of config/ImakeMacros.d and config/andrew.rls from ITC, and the only thing I have left to try is to get these files from him and see if they have an impact on the compile. Does anyone have any other suggestions? Should the install/upgrade of ANY software be this hard? Thanks Steve Cousins sbc@informatics.wustl.edu Medical Informatics Lab. 314-362-4322 Washington University
jis@mtgzx.att.com (J Mukerji) (09/29/90)
Ahh.. my favorite subject for the week! I have finally been able to build Andrew PL6 and PL7 under SunOS4.1, with a little finagling. The stuff in atk/ness/doc failed to build because nessrun coredumped in PL7 and for a slightly different reason in PL6. So I temporarily hacked the Imakefile in atk/ness to avoid building atk/ness/doc at all. The rest built and installed fine. But then the fun began. (1) First, when I tried to crank up runapp it crashed, I mean the whole darned workstation went south on a panic trap. I saved the core and am waiting for expert advice from our friendly Sun PAL. In my opinion nothing that a mere application does should cause the kernel to go south. this happens in about 50% of my attempts to start up an Andrew application out of my .xinitrc file, and about 25% of the time when starting an Andrew application from an xterm window. It never happens when starting an Andrew application from gdb. (2) Next Ez under certain circumstances started to core dump. In particular this happens when you try to create a new window using ^X2. Took a look at what is happening using gdb. It seems to be crapping out at some inoccuous assignment statement in frame_InitializeObject. (3) Messages failed to come up. That one seems to be trapping at some inoccuous assignment statement in site.c, which compiles and works fine on 4.0.3. All this leads me to start suspecting the sanity of the 4.1 C compiler/loader. Will continue investigating and keep you all posted. Jishnu Mukerji, jis@mtgzx.att.com, +1 201 957 5986, AT&T Bell Laboratories, MT 3K-423, 200 Laurel Ave., Middletown NJ 07748
wjh+@ANDREW.CMU.EDU (Fred Hansen) (09/29/90)
Excerpts from internet.info-andrew: 28-Sep-90 Re: Still no luck trying to.. J Mukerji@mtgzx.att.com (1627+0) > The stuff in atk/ness/doc failed to build because nessrun coredumped in > PL7 and for a slightly different reason in PL6. So I temporarily hacked > the Imakefile in atk/ness to avoid building atk/ness/doc at all. The > rest built and installed fine. But then the fun began. > (1) First, when I tried to crank up runapp it crashed, This is not too surprising because nessrun now uses runapp, so if runapp is going to die, so will nessrun. This is not a bug in ness (as far as I can see) but a reflection of the fact that ness/doc is the first time in the build process where runapp actually gets executed. Fred Hansen
pive@BANRUC01.BITNET (10/01/90)
Hmm... sounds familiar to me. I tried to install Andrew PL7 on SS1+ sunos4.1 if I tried to compile andrew with RESOLVER_ENV defined, I couldn't build the system (if RESOLVLIB is empty, then some symbols aren't defined, if RESOLVLIB = /usr/lib/resolvlib.a then dofix fails in atkams/messages/lib...). So I tried to install andrew with RESOLVER_ENV undefined: building was succesfull except in atk/ness/doc where I got a core dump. But when I started testing the new release, some applications won't work (e.g. messages, vui, cui, ness, console and maybe some others) ez worked fine with some insets I tried (clock, zip, raster). I even tried to build the system with RESOLVER_ENV undefined and with CDEBUGFLAGS=-g but with the same result. Can someone HELP me please ???????????????? (or have I to abandon andrew ?) Thanx P. Verhaeghe University of Antwerp, RUCA Algebra / Geometry Groenenborgerlaan 171 B-2020 Antwerpen, Belgium Tel: +32 3 2180308 Fax: +32 3 2180217 Telex: RUCABI 33362 E-mail: pive@banruc01.bitnet (or pive@ccu.uia.ac.be)
gk5g+@ANDREW.CMU.EDU (Gary Keim) (10/04/90)
There is a bug with Ness on Suns due to yacc differences among platforms. Keep the resolver turned on. Remove references to RESOLVLIB in: andrew/atk/help/src/Imakefile andrew/atk/console/cmd/Imakefile andrew/atkams/messages/lib/Imakefile Add these lines to you andrew/config/site.mcr file: CDEBUGFLAGS = -g -Bstatic MAKEDOFLAGS = -g -d ${BASEDIR}/lib -b ${BASEDIR}/bin Go to the root of the Andrew sources and rebuild. % imake -I. -I./config -Timake.tmpl -s Makefile -DTOPDIR=. % make World If anyone can tell me if the -Bstatic compiler flag is necessary, and why, I'd be very appreciative. Gary Keim ATK Group
mayer@gmdzi.gmd.de (Hans Mayer) (10/04/90)
From article <4b2Zzam00VsWM5Kkhn@andrew.cmu.edu>, by gk5g+@ANDREW.CMU.EDU (Gary Keim): > [...some lines deleted] > If anyone can tell me if the -Bstatic compiler flag is necessary, and > why, I'd be very appreciative. From the manual: -Bbinding Specify whether bindings of libraries for linking are static or dynamic, indicating whether libraries are non-shared or shared, respectively. As Andrew uses its own dynamic loading you'll get into great trouble if another dynamic loader gets in your way. - Hans -- Hans J. Mayer, mayer@gmdzi.gmd.de (or mayer@ddagmd11.BITNET) German National Research Center for Computer Science (GMD)
wjh+@ANDREW.CMU.EDU (Fred Hansen) (10/05/90)
Excerpts from internet.info-andrew: 29-Sep-90 Re: Still no luck trying to.. Fred Hansen (725+0) > Excerpts from internet.info-andrew: 28-Sep-90 Re: Still no luck trying > to.. J Mukerji@mtgzx.att.com (1627+0) >> The stuff in atk/ness/doc failed to build because nessrun coredumped in >> PL7 and for a slightly different reason in PL6. So I temporarily hacked >> the Imakefile in atk/ness to avoid building atk/ness/doc at all. The >> rest built and installed fine. But then the fun began. >> (1) First, when I tried to crank up runapp it crashed, > This is not too surprising because nessrun now uses runapp, so if runapp > is going to die, so will nessrun. This is not a bug in ness (as far as > I can see) but a reflection of the fact that ness/doc is the first time > in the build process where runapp actually gets executed. > Fred Hansen Although a true statement, my comment is sort of silly. The real problem turns out to be that /usr/lib/yaccpar differs on different machines so the state saving code in Ness cannot do recursive compilations. A recursive compilation is required in present.n, the ness program that is run as part of the build process. One workaround is to install the Ness documents without processing them. Another workaround is to comment out two lines in present.n so they become: -- printline("sorting index") -- index := sort_records_per_flags("", base(index), "fd") I'll be working on a fix to the yaccpar problem and will release it in a forthcoming patch. Fred Hansen
wjh+@ANDREW.CMU.EDU (Fred Hansen) (10/05/90)
Excerpts from mail: 4-Oct-90 Re: Still no luck trying to.. => Info-Andrew@andrew.cm (1486+0) > Another workaround is to comment out two lines in present.n so they become: > -- printline("sorting index") > -- index := sort_records_per_flags("", base(index), "fd") Nope. The truth is Ness will not compile at all on these platforms until I fix the problem. Sigh. Fred Hansen
pive@BANRUC01.BITNET (10/05/90)
Excerpts from software: 3-Oct-90 Re: Still no luck tryingto.. Gary Keim@andrew.cmu.edu (649) > There is a bug with Ness on Suns due to yacc differences amongplatforms. > Keep the resolver turned on. > Remove references to RESOLVLIB in: > andrew/atk/help/src/Imakefile > andrew/atk/console/cmd/Imakefile > andrew/atkams/messages/lib/Imakefile > Add these lines to you andrew/config/site.mcr file: > CDEBUGFLAGS = -g -Bstatic > MAKEDOFLAGS = -g -d ${BASEDIR}/lib -b ${BASEDIR}/bin > Go to the root of the Andrew sources and rebuild. > % imake -I. -I./config -Timake.tmpl -s Makefile -DTOPDIR=. > % make World I did this, first with RESOLVLIB empty but then this happens: cc -c -I. -I/usr/andrew/include/ams -g -Bstatic-I/usr/andrew/include/atk -I/usr/andrew/include -I//usr/include/X11 stubs.c /usr/andrew/bin/makedo -g -d /usr/andrew/lib -b /usr/andrew/bin -o amsn.do amsn.o stubs.o /usr/andrew/lib/libcui.a /usr/andrew/lib/libcuin.a /usr/andrew/lib/libmssrv.a /usr/andrew/lib/libeli.a /usr/andrew/lib/librxp.a /usr/andrew/lib/libmsshr.a /usr/andrew/lib/libmail.a/usr/andrew/lib/liberrors.a /usr/andrew/lib/libutil.a dofix: Undefined: _res_search dofix: Undefined: _dn_skipname dofix: Undefined: _dn_skipname dofix: Undefined: _dn_expand .... doload: Errors while processing doindex: indexing amsn.do ...doload: Undefined symbol: _res_search doload: Undefined symbol: _dn_skipname doload: Undefined symbol: _dn_expand doload: Undefined symbol: __res doload: Undefined symbol: _res_init doload: Errors while processing doindex: NULL entrypoint from amsn.do...program terminated! *** Error code 1 make: Fatal error: Command failed for target `amsn.do' Current working directory/home/share/src/X11R4/contrib/toolkits/andrew/atkams/mes sages/lib next I defined RESOLVLIB = /usr/lib/libresolv.a but... cc -c -I. -I/usr/andrew/include/ams -g -Bstatic-I/usr/andrew/include/atk -I/usr/andrew/include -I//usr/include/X11 stubs.c /usr/andrew/bin/makedo -g -d /usr/andrew/lib -b /usr/andrew/bin -o amsn.do amsn.o stubs.o /usr/andrew/lib/libcui.a /usr/andrew/lib/libcuin.a /usr/andrew/lib/libmssrv.a /usr/andrew/lib/libeli.a /usr/andrew/lib/librxp.a /usr/andrew/lib/libmsshr.a /usr/andrew/lib/libmail.a/usr/andrew/lib/liberrors.a /usr/andrew/lib/libutil.a /usr/lib/libresolv.a dofix: Relocatable symbol value (send.o = 675216, type 4) dofix: Relocatable symbol value (send.o = 675216, type 4) dofix: Relocatable symbol value (send.o = 675216, type 4) dofix: Relocatable symbol value (send.o = 675216, type 4) dofix: Relocatable symbol value (_MS_PrefetchMessage = 202968, type 4) dofix: Relocatable symbol value (_MS_PrefetchMessage = 202968, type 4) dofix: Relocatable symbol value (_amsn__CUI_RewriteHeaderLine = 3028, type 4) dofix: Relocatable symbol value (_MS_GetSearchPathEntry = 107312, type 4) dofix: Relocatable symbol value (_MS_PrefetchMessage = 202968, type 4) dofix: Relocatable symbol value (_MS_PrefetchMessage = 202968, type 4) dofix: Relocatable symbol value (_amsn__CUI_RewriteHeaderLine = 3028, type 4) dofix: Relocatable symbol value (/usr/lib/libresolv.a.L309 = 827966, type 6) dofix: Relocatable symbol value (/usr/lib/libresolv.a.L309 = 827966, type 6) dofix: Relocatable symbol value (_MS_PrefetchMessage = 202968, type 4) ... dofix: Relocatable symbol value (_eliyybgin = 792892, type 6) doload: Errors while processing doindex: indexing amsn.do ...Segmentation fault (core dumped) *** Error code 11 make: Fatal error: Command failed for target `amsn.do' Current working directory/home/share/src/X11R4/contrib/toolkits/andrew/atkams/mes sages/lib but then I tried to undefine RESOLVER_ENV and RESOLVLIBempty... cc -g -Bstatic -I/usr/andrew/include/atk -I/usr/andrew/include-I//usr/include/X11 -o cuin cui.o cuifns.o unixmach.o morprntf.o /usr/andrew/lib/libcui.a /usr/andrew/lib/libcuin.a /usr/andrew/lib/libmssrv.a /usr/andrew/lib/libmsshr.a /usr/andrew/lib/libeli.a /usr/andrew/lib/librxp.a /usr/andrew/lib/libmail.a/usr/andrew/lib/liberrors.a /usr/andrew/lib/libmalloc.a/usr/andrew/lib/libutil.a Undefined _dn_expand _res_init __res _dn_skipname _res_search /lib/libc.a(stricmp.o): _strnicmp: multiply defined *** Error code 2 make: Fatal error: Command failed for target `cuin' Current working directory/home/share/src/X11R4/contrib/toolkits/andrew/ams/msclie nts/cui Please can someone give me another hint? (configuration: SS1+ sunos4.1X11R4PL14 andrewPL7) Thanks P. Verhaeghe University of Antwerp, RUCA Algebra / Geometry Groenenborgerlaan 171 B-2020 Antwerpen, Belgium Tel: +32 3 2180308 Fax: +32 3 2180217 Telex: RUCABI 33362 E-mail: pive@banruc01.bitnet (or pive@ccu.uia.ac.be)
chet@GNU.INS.CWRU.EDU (Chet Ramey) (10/05/90)
> Although a true statement, my comment is sort of silly. The real > problem turns out to be that /usr/lib/yaccpar differs on different > machines so the state saving code in Ness cannot do recursive > compilations. A recursive compilation is required in present.n, the > ness program that is run as part of the build process. I ran into the problem of yacc not generating reentrant parsers when fixing several recursive parsing problems with bash (the Gnu Bourne-Again SHell). This is a generic problem with the version of yacc present in the System V.3 release. Vendors that have simply picked up this version of yacc, like Sun for SunOS 4.x, have the same problem. Some vendors, HP for instance, have fixed their versions and made yacc reentrant once again. 4.2 BSD and 4.3 BSD yaccs do not have this problem. Bison does not have this problem. I haven't yet checked out byacc (I use Bison), but it may well allow recursive parses too. Chet Ramey -- Chet Ramey ``As I recall, Doug was keen on boxing. But Network Services Group when he learned to walk, he took up puttin' Case Western Reserve University the boot in the groin.'' chet@ins.CWRU.Edu
guy@auspex.auspex.com (Guy Harris) (10/13/90)
>As Andrew uses its own dynamic loading you'll get into great trouble if >another dynamic loader gets in your way. Gee, I've been able to run Andrew applications linked dynamically not only against "libc" but against "libX11" as well. The two dynamic loaders don't have to get in each other's way (although a version of the "class" dynamic loader for 4.1 that uses "dlopen()", "dlsym()", etc. would be useful - and would probably get you 99% or more of the way towards one for System V Release 4, and obviate the need to crack ELF files).
gk5g+@ANDREW.CMU.EDU (Gary Keim) (10/24/90)
Excerpts from internet.info-andrew: 5-Oct-90 Re: Still no luck trying to.. pive%BANRUC01.BITNET@vma (4797+0) > but then I tried to undefine RESOLVER_ENV and RESOLVLIB empty... > cc -g -Bstatic -I/usr/andrew/include/atk -I/usr/andrew/include > -I//usr/include/X11 -o cuin cui.o cuifns.o unixmach.o > morprntf.o /usr/andrew/lib/libcui.a /usr/andrew/lib/libcuin.a > /usr/andrew/lib/libmssrv.a /usr/andrew/lib/libmsshr.a > /usr/andrew/lib/libeli.a /usr/andrew/lib/librxp.a > /usr/andrew/lib/libmail.a /usr/andrew/lib/liberrors.a > /usr/andrew/lib/libmalloc.a /usr/andrew/lib/libutil.a > Undefined > _dn_expand > _res_init > __res > _dn_skipname > _res_search > /lib/libc.a(stricmp.o): _strnicmp: multiply defined > *** Error code 2 > make: Fatal error: Command failed for target `cuin' I have no idea what the problem is with linking against libresolv.a under SunOS4.1. Some people can do it, other can't. The failure with makedo reporting that there are "relocatable symbols" is beyond me. It's a mystery. The above problem I can handle. Undefine RESOLVER_ENV in site.h. In site.mcr set RESOLVLIB to the empty string. Clean the Andrew tree (make Clean). Start the build process over. It appears from the errors above that the libmail.a used was the one linked against libresolv.a. If this problem reccurs, find out what module has the undefined symbols by running nm(1). Gary Keim ATK Group
pive@BANRUC01.BITNET (10/24/90)
Still problems... This is what I did (configuration: SS1+ sunos 4.1 X11R4.14-andrew.7): cd ..../andrew make Clean imake -I. -I./config -Timake.tmpl -s Makefile -DTOPDIR=. make Makefiles vi andrew/atk/ness/Makefile (hacked it is so make doesn't make demos) make dependInstall with the following site.* files: /* Empty site.h file. Use this file to hold all */ /* your site's changes to allsys.h and system.h. */ #define CONTRIB_ENV 1 #define MK_BASIC_UTILS 1 #define MK_AUX_UTILS 1 #define MK_AUX_INSETS 1 #define MK_AUTHORING 1 #undef LINKINSTALL_ENV #undef RESOLVER_ENV /* Empty site.mcr file. Use this file to hold all */ /* your site's changes to allsys.mcr and system.mcr. */ XUTILDIR = /usr/bin/X11 /*RESOLVLIB = /usr/lib/libresolv.a*/ CDEBUGFLAGS=-g -Bstatic MAKEDOFLAGS = -g -d ${BASEDIR}/lib -b ${BASEDIR}/bin but this is what I get: cc -g -Bstatic -I/usr/andrew/include/atk -I/usr/andrew/include-I//usr/include/X11 -o cuin cui.o cuifns.o unixmach.o morprntf.o /usr/andrew/lib/libcui.a /usr/andrew/lib/libcuin.a /usr/andrew/lib/libmssrv.a /usr/andrew/lib/libmsshr.a /usr/andrew/lib/libeli.a /usr/andrew/lib/librxp.a /usr/andrew/lib/libmail.a/usr/andrew/lib/liberrors.a /usr/andrew/lib/libmalloc.a/usr/andrew/lib/libutil.a ld: /lib/libc.a(stricmp.o): _strnicmp: multiply defined *** Error code 2 make: Fatal error: Command failed for target `cuin' Current working directory/home/share/src/X11R4/contrib/toolkits/andrew/ams/msclients/ cui I used nm in *.o files end _strnicmp is defined in cui.o and cuifns.o, butsince I don't know how to fix this problem, can someone help met please? Thank you P. Verhaeghe University of Antwerp, RUCA Algebra / Geometry Groenenborgerlaan 171 B-2020 Antwerpen, Belgium Tel: +32 3 2180308 Fax: +32 3 2180217 Telex: RUCABI 33362 E-mail: pive@banruc01.bitnet (or pive@ccu.uia.ac.be)
ghoti+@ANDREW.CMU.EDU (Adam Stoller) (10/24/90)
I have no idea what the strnicmp function in your libc is supposed to do
- but looking at the function in ams/msclients/cui/cuifns.c - it appears
to be one of several of the attempts in the toolkit to do a
case-insensitive string comparison.
If your system's strnicmp function does this too - and accepts three
arguments: char *s1, char *s2, int len -- then I suggest you try
commenting out the function in cuifns.c -- something like:
#ifndef SS1_ENV /* I don't know what your sys-flags are - this is ONLY
an EXAMPLE */
strnicmp(s1, s2, len)
char *s1, *s2;
int len;
{
.....
}
#endif
And then try to recompile.
IF THIS WORKS -- send mail to info-andrew-bugs@andrew.cmu.edu to let
them know (a) that it is needed, and (b) what sys-type flag needs to be
used. (Alternatively, on this end - a different function name could be
used - especially if the function already exists in libutil.a -- i.e.
lc_strncmp)
IF THIS DOES NOT WORK -- post again with an update of the problems.
Hope this helps....
--fish