This is the mail archive of the
cygwin-xfree@cygwin.com
mailing list for the Cygwin XFree86 project.
Re: Ported X11 soft from Solaris
- From: Benjamin Riefenstahl <Benjamin dot Riefenstahl at epost dot de>
- To: cygwin-xfree at cygwin dot com
- Date: 26 Oct 2002 14:13:25 +0200
- Subject: Re: Ported X11 soft from Solaris
- References: <3DBA534D.D045D8E9@enseeiht.fr>
- Reply-to: cygwin-xfree at cygwin dot com
Hi Max,
Max Buvry <Max.Buvry@enseeiht.fr> writes:
> LIB = -lSM -lXpm -lXaw -lXmu -lXt -lX11 -lXext -lm -lc -lpq
Don't specify the C runtime libraries, they are implied and adding
them here can only do harm. IOW drop "-lm -lc".
> CFLAGS = -I/usr/include/ -I/usr/X11R6/include/
Same with C runtime header directories. Drop "-I/usr/include".
> [. . .]
>
> $ make
> gcc -O -c -g -Wall -I/usr/include/ -I/usr/X11R6/include/
> gestion_scores.c
> cc1: warning: changing search order for system directory "/usr/include"
> cc1: warning: as it has already been specified as a non-system
> directory
The compiler is irritated because you specified the redundant
"-I/usr/include" in your CFLAGS above.
> gcc -L/usr/X11R6/lib -L/usr/lib -o Tetris dep_horiz.o interface_X.o
> main.o boutons.o tetris.o Scale.o gestion_scores.o rotation.o
> colorer.o lignes_pleines.o -lSM -lXpm -lXaw -lXmu -lXt -lX11 -lXext
> -lm -lc -lpq
The next warnings are because the linker examines the libraries from
left to right *once* only, therefore the order of your "-l" options
matters.
> /usr/X11R6/lib/libXaw.a(Pixmap.o)(.text+0x1d4b):Pixmap.c: undefined
> reference to `_XpmReadFileToPixmap'
Says that libXaw.a reference a symbol that is probably in libXpm.a.
So you need to have -lXaw *before* -lXpm.
> /usr/X11R6/lib/libXt.a(Shell.o)(.text+0x3536):Shell.c: undefined
> reference to `_SmcCloseConnection'
> /usr/X11R6/lib/libXt.a(Shell.o)(.text+0x3617):Shell.c: undefined
> reference to `_SmcModifyCallbacks'
> /usr/X11R6/lib/libXt.a(Shell.o)(.text+0x3626):Shell.c: undefined
> reference to `_SmcClientID'
> /usr/X11R6/lib/libXt.a(Shell.o)(.text+0x3686):Shell.c: undefined
> reference to `_SmcOpenConnection
Similar problems with -lXt and -lSM, I guess.
so long, benny