[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]

Re: Problems with undefined reference errors



On 12 Jun 2003, Bill Baker wrote:

>> I suggest reinstalling Red Hat Linux 9 from scratch, and not 
>> replacing any core system components with homebrew builds, as 
>> that is a likely source of problem.
>
>I see you are using XFree86-4.3.0-2.

That is what is shipped and supported in Red Hat Linux 9, yes.

>As I said before, I am using XFree86-4.3.0-3, built on a RH8
>system for my Athlon processor from source RPMs.

No, that is not what you said, quote:

>Date: 12 Jun 2003 14:02:25 -0400
>From: Bill Baker <bill_chris earthlink net>
>To: xfree86-list redhat com, xfree86 XFree86 Org
>Reply-To: xfree86-list redhat com
>Content-Type: text/plain
>Subject: Problems with undefined reference errors
>
>Ever since I upgraded to Red Hat 9, I have been having problems
>compiling programs.  I tried searching the web, but have had no 

You clearly state that you've upgraded to Red Hat [Linux] 9 here.
There are no significant differences between XFree86 4.3.0-2 and 
4.3.0-3 except a few minor driver bug fixes and other trivial 
stuff.  I also have a Red Hat Linux 8.0 machine here with XFree86 
4.3.0 installed on it:

[mharris devel XFree86-4.3.0]$ cat /etc/redhat-release
Red Hat Linux release 8.0 (Psyche)
[mharris devel XFree86-4.3.0]$ rpm -q XFree86 XFree86-devel gcc
XFree86-4.3.0-3
XFree86-devel-4.3.0-3
gcc-3.2-7
[mharris devel XFree86-4.3.0]$ gcc -Wall -I /usr/X11R6/include -L /usr/X11R6/lib -lX11 -lXtst -o foo foo.c
[mharris devel XFree86-4.3.0]$ file foo
foo: ELF 32-bit LSB executable, Intel 80386, version 1 (SYSV), dynamically
linked (uses shared libs), not stripped
[mharris devel XFree86-4.3.0]$ ldd foo
        libX11.so.6 => /usr/X11R6/lib/libX11.so.6 (0x40028000)
        libXtst.so.6 => /usr/X11R6/lib/libXtst.so.6 (0x40108000)
        libc.so.6 => /lib/i686/libc.so.6 (0x42000000)
        libdl.so.2 => /lib/libdl.so.2 (0x4010d000)
        libXext.so.6 => /usr/X11R6/lib/libXext.so.6 (0x40110000)
        /lib/ld-linux.so.2 => /lib/ld-linux.so.2 (0x40000000)
[mharris devel XFree86-4.3.0]$ cat foo.c
#include <X11/extensions/XTest.h>
#include <X11/keysym.h>

int main(void)
{
        Display* disp = XOpenDisplay(NULL);
        if (disp == NULL) return 1;
        XTestFakeKeyEvent(disp, XKeysymToKeycode(disp, XK_Num_Lock),
True,CurrentTime);
        XTestFakeKeyEvent(disp, XKeysymToKeycode(disp, XK_Num_Lock),
False,CurrentTime );
        XCloseDisplay(disp);
        return 0;
}



>I could try installing the 4.3.0-2 binaries from the RH9 CD to
>see if that works.  I just wondered if there was anything else I
>could do, short of doing that.

Red Hat Linux 9 binaries generally will not install on Red Hat 
Linux 8.0 without recompilation, and even then, some require spec 
file editing prior to rebuilding, and many of them have other 
dependancies on packages from Red Hat Linux 9 also.  XFree86 is 
one of these kind of packages.  You need to install rebuilt 
freetype, glut, fontconfig, expat, and possibly other packages 
from RHL 9 on RHL8 prior to rebuilding XFree86, and then 
uninstall Xft prior to installing XFree86 4.3.0.  This is how my 
above RHL 8.0 system with XFree86 4.3.0-3 is installed, as well 
as with the new kernel required for DRM to work.


>There was no reason to treat me like I'm stupid.

I wasn't.  I read your statements as implications that something 
is drastically broken in Red Hat Linux 9 that prevents X11 
applications from compiling properly.  That is simply not true, 
and I have merely stated a few things you were doing wrong, and 
stated that I am able to compile your program without 
modification on both stock Red Hat Linux 9, and Red Hat Linux 8.0 
with XFree86 4.3.0-3 and have no problems, even without adding 
the missing headers.

You've said you were using RHL 9 in your original mail, and the C 
compiler you said you used, is the one from RHL 9 as well.  Now 
you say you're using RHL 8.0, which only confuses things.  Have 
you also manually rebuild the gcc rpms from RHL 9 and installed 
them on RHL 8.0?

I'm not sure what exactly you're running, but I'm sure that the
problem isn't something caused by Red Hat Linux provided
packages.  ;o)

Again, my suggestion is to back up your data, install Red Hat 
Linux 9, don't modify anything or install homebrew packages, and 
try to compile the program.  It will work, trust me.  ;o)  And I 
mean you no disrespect.  I'm just trying to show you that it does 
really work.


-- 
Mike A. Harris






[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]