From owner-freebsd-questions Wed Aug 15 7:23:15 2001 Delivered-To: freebsd-questions@freebsd.org Received: from guru.mired.org (okc-27-141-144.mmcable.com [24.27.141.144]) by hub.freebsd.org (Postfix) with SMTP id 9E8BC37B411 for ; Wed, 15 Aug 2001 07:23:10 -0700 (PDT) (envelope-from mwm@mired.org) Received: (qmail 90624 invoked by uid 100); 15 Aug 2001 14:23:09 -0000 From: Mike Meyer MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Message-ID: <15226.34253.458785.129050@guru.mired.org> Date: Wed, 15 Aug 2001 09:23:09 -0500 To: "Karel J. Bosschaart" Cc: questions@FreeBSD.ORG Subject: Re: Applixware 5.0 on recent FreeBSD version In-Reply-To: <20010815160734.A39919@wop21.wop.wtb.tue.nl> References: <69300995@toto.iv> <15226.22699.145222.587526@guru.mired.org> <20010815160734.A39919@wop21.wop.wtb.tue.nl> X-Mailer: VM 6.90 under 21.1 (patch 14) "Cuyahoga Valley" XEmacs Lucid X-face: "5Mnwy%?j>IIV\)A=):rjWL~NB2aH[}Yq8Z=u~vJ`"(,&SiLvbbz2W`;h9L,Yg`+vb1>RG% *h+%X^n0EZd>TM8_IB;a8F?(Fb"lw'IgCoyM.[Lg#r\ Sender: owner-freebsd-questions@FreeBSD.ORG Precedence: bulk List-ID: List-Archive: (Web Archive) List-Help: (List Instructions) List-Subscribe: List-Unsubscribe: X-Loop: FreeBSD.ORG Karel J. Bosschaart types: > On Wed, Aug 15, 2001 at 06:10:35AM -0500, Mike Meyer wrote: > > Karel J. Bosschaart types: > > > I thought it came up in the list before but couldn't find anything in > > > the archive. Also, I'm pretty sure I had it running a while ago on an > > > older FreeBSD version. > > You need to install the 3x compatability libraries. If you have source > > installed, you can install them by going to > > /usr/src/lib/compat/compat3x.i386 and doing "make install". If you are > > tracking -stable, add "COMPAT3X=yes" to /etc/make.conf so they will be > > updated with the system. > Another poster already mentioned the same, but thank you anyway :-). Sigh. Yeah, I just looked past the answers. > It works fine on one machine, but on another machine it gave me trouble > with gtk/glib versions. Version 1.2.10 is installed (and lots of ports > depending on it), but Applixware expects 1.2.8. I forced Applixware to > install anyway, but now it does not start complaining about 'Undefined > symbol "getresuid"'. Hmmm, I guess there must be some way to work around, > but for now I'm happy it runs on at least one machine :-). The 1.2.8 and 1.2.10 is immaterial. What matters is what versions of the unix libraries you had when you built the gtk/glib port. FreeBSD put getresuid in libc_r, which applix isn't loading. So if your FreeBSD has getresuid, the port config will find that version, try and use it - and fail for applix. If the system doesn't have it, the port config builds it's own in, and that works fine. The solution I use is to compile this little C function. It returns a failure, which causes gtk/glib to do the same thing it does if getresuid isn't there. Others prefer C++ so they can drop the paramenter names, but that makes the object slightly larger. /* * Fail a getresuid call so that clients will use it properly. * * compile as cc -shared -fPIC -DPIC -o getresuid.so getresuid.c */ #include int getresuid(uid_t *a, uid_t *b, uid_t *c) { return 1 ; } Next install the resulting getresuid.so somewhere reasonable - like /usr/local/lib. Then change the applix shell script to define the environment variable LD_PRELOAD to be the name of the .so file before it starts the applix binary. http://www.mired.org/home/mwm/ Independent WWW/Perforce/FreeBSD/Unix consultant, email for more information. To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-questions" in the body of the message