LinuxQuestions.org
Latest LQ Deal: Linux Power User Bundle
Go Back   LinuxQuestions.org > Forums > Linux Forums > Linux - Software > Linux - Games
User Name
Password
Linux - Games This forum is for all discussion relating to gaming in Linux.

Notices


Reply
  Search this Thread
Old 06-03-2004, 12:47 AM   #1
Simon Bridge
LQ Guru
 
Registered: Oct 2003
Location: Waiheke NZ
Distribution: Ubuntu
Posts: 9,211

Rep: Reputation: 198Reputation: 198
Falcon's Eye compile error puzzle (programmers?)


Here's one for the programmers...
Compiling falcons eye, following the instructions, and having some programming experience via university comp-sci (remember the vax?) courses C++ pascal and assembly (vax and -gasp- PDP11) I figured this should be easy... I get the following error:

make[1]: Entering directory `/home/simon/games/Falcon/util'
cc -O -I../include -o tilemap ../win/share/tilemap.c
./tilemap
make[1]: Leaving directory `/home/simon/games/Falcon/util'
gcc -O2 -fomit-frame-pointer -I../include -I/usr/X11/include -c -o tile.o tile.c
../util/makedefs -v
gcc -O2 -fomit-frame-pointer -I../include -I/usr/X11/include -c -o version.o version.c
Loading ...
/usr/bin/ld: cannot find -lXaw
collect2: ld returned 1 exit status
make: *** [Sysunix] Error 1
[root@indigo-prime src]#

I'm doing everything as root, using gcc as the compiler.

As far as I can see, ld cannot find the athena widgets. I can see the lXaw files OK, and redhat says that the athena stuff is up to date. Nonplussed, I don't take RH's word for it and pay a visit to rpmfing... rpm reports that the widgets in my system are in advance of the most advanced ones I get there.

However, in the man paged for ld, I see that ld is expecting .a archives, and, indeed, I have no files called lXaw.a

What gives? (Should I be compiling backwards? The notes say this shouldn't be required.)

Simon
 
Old 06-21-2004, 10:05 PM   #2
xdan779
LQ Newbie
 
Registered: Jun 2004
Location: Chicago
Distribution: Slackware
Posts: 15

Rep: Reputation: 0
Sounds like you might be missing the development libraries for X11, make sure you have xfree86-devel package installed.
 
Old 06-29-2004, 07:39 PM   #3
Simon Bridge
LQ Guru
 
Registered: Oct 2003
Location: Waiheke NZ
Distribution: Ubuntu
Posts: 9,211

Original Poster
Rep: Reputation: 198Reputation: 198
Nope - xfree86-devel already installed and up to date says rpm.
See the puzzlement?

Simon
 
Old 06-29-2004, 08:20 PM   #4
LavaDevil94
LQ Guru
 
Registered: Jul 2003
Distribution: Gentoo 2004.2: Who needs exmmpkg when you have emerge?
Posts: 1,795

Rep: Reputation: 47
Try searching for xaw in the RPM package database, and install the development version.

PS: Unless you're installing it, it's generally not a good idea to compile as root.
 
Old 06-30-2004, 08:18 PM   #5
Simon Bridge
LQ Guru
 
Registered: Oct 2003
Location: Waiheke NZ
Distribution: Ubuntu
Posts: 9,211

Original Poster
Rep: Reputation: 198Reputation: 198
LavaDevil:

Searched xaw on rpmfind, got: Xaw3d-devel-1.5-18.i386.rpm and associated rpms.
These are very small (1-200k), I guess it is possible that FE uses the 3D library.

Otherwise - nothing for the ordinary athena widgets showed up.
I googled "xaw devel" and got a lot of discussion about neXtaw, and the xfree86 sites all in the first 40. Where /should/ I be looking?
MIT? If so, which bit?

I'll go try a few other things... Simon
 
Old 06-30-2004, 08:36 PM   #6
Simon Bridge
LQ Guru
 
Registered: Oct 2003
Location: Waiheke NZ
Distribution: Ubuntu
Posts: 9,211

Original Poster
Rep: Reputation: 198Reputation: 198
Xaw3d-devel already installed. Xfree86-devel already installed - perusing other discussions about this package suggests that this should include the required bits for xaw too. So what am I missing?

I've posted this to the FalconsEye user forum, no reply as yet.

An obvious thing is that I've muffed the config stage in some subtle way - but removing and re-writing the files just gets the same thing.

I could post the relevant bits fo the config files - the bits I changed - so an experienced eye could peruse them to see if I've missed anything??

Otherwise: what should I try?

Simon
 
Old 07-02-2004, 02:53 PM   #7
The_Nerd
Member
 
Registered: Aug 2002
Distribution: Debian
Posts: 540

Rep: Reputation: 32
Try editing the makefile and adding this to the CFLAGS:

"-L/usr/X11R6/lib"

Hope that helps.
 
Old 07-02-2004, 10:46 PM   #8
Simon Bridge
LQ Guru
 
Registered: Oct 2003
Location: Waiheke NZ
Distribution: Ubuntu
Posts: 9,211

Original Poster
Rep: Reputation: 198Reputation: 198
Quote:
Originally posted by The_Nerd
Try editing the makefile and adding this to the CFLAGS:

"-L/usr/X11R6/lib"

Hope that helps.
Which makefile?
Never mind - I'll go through all of them and make the change... I'll let you know how it turns out.
 
Old 07-02-2004, 11:55 PM   #9
Simon Bridge
LQ Guru
 
Registered: Oct 2003
Location: Waiheke NZ
Distribution: Ubuntu
Posts: 9,211

Original Poster
Rep: Reputation: 198Reputation: 198
Found three makefiles with the CFLAGS entries...

I note that there is an attempt to link to directories that do not exist like /usr/X11/include ...
However, the list now includes -L/usr/X11R6/lib at the end, and I still get:

[root@indigo-prime Falcon]# make all
( cd src ; make )
make[1]: Entering directory `/home/simon/games/Falcon/src'
Loading ...
/usr/bin/ld: cannot find -lXaw
collect2: ld returned 1 exit status
make[1]: *** [Sysunix] Error 1
make[1]: Leaving directory `/home/simon/games/Falcon/src'
make: *** [nethack] Error 2

The flags from the src makefile are:

# flags for Linux
# compile normally
CFLAGS = -O2 -fomit-frame-pointer -I../include -I/usr/X11/include -L/usr/X11R6/lib
LFLAGS = -L/usr/X11/lib
# OR compile backwards compatible a.out format
# CFLAGS = -O2 -b i486-linuxaout -fomit-frame-pointer -I../include -I/usr/X11/include
# LFLAGS = -b i486-linuxaout -L/usr/X11/lib

Note that grep cannot find lXaw either.
I see that lXaw or Xaw but there is a file called libXaw.a ... should I create a symbolic link in this directory called lXaw.a pointing to libXaw.a? Or are these different files??
I see that unused links (like -l/usr/X11R6/include, if I add this) just generate an error.
But used links that are not there (like the -l/usr/X11R6/lib) do not!

Looking at the above, is there anything else wot should be included.
 
Old 07-03-2004, 12:46 AM   #10
Simon Bridge
LQ Guru
 
Registered: Oct 2003
Location: Waiheke NZ
Distribution: Ubuntu
Posts: 9,211

Original Poster
Rep: Reputation: 198Reputation: 198
ld cannot find -lXaw

Putting the symbolic links in (see last post) did not help - same error message.

The part of the src makefile which mentions -lXaw is:

# libraries for X11
# If USE_XPM is defined in config.h, you will also need -lXpm here.
WINX11LIB = -lXaw -lXmu -lXext -lXt -lX11
# WINX11LIB = -lXaw -lXmu -lXt -lX11
# WINX11LIB = -lXaw -lXmu -lXext -lXt -lXpm -lX11 -lm
# WINX11LIB = -lXaw -lXmu -lXpm -lXext -lXt -lX11 -lSM -lICE -lm # BSD/OS 2.0

/usr/X11R6/lib has all these files, only with lib instead of l (i.e. libXaw instead of lXaw)
Editing the line to point to -libXaw etc still didn't work - error message just "ld cannot find -linXaw"

Simon
 
Old 07-04-2004, 08:01 PM   #11
Simon Bridge
LQ Guru
 
Registered: Oct 2003
Location: Waiheke NZ
Distribution: Ubuntu
Posts: 9,211

Original Poster
Rep: Reputation: 198Reputation: 198
[SDL Error] No available audio device

The flags should be added at the beginning of the CFLAGS list or to the LFLAGS list in the src makefile.

OK - compile process is now uninterrupted.
I find a script file in /usr/games/nethack and link to it from my home directory.

[simon@indigo-prime games]$ link /usr/games/nethack falcon
bash: falcon: command not found
[simon@indigo-prime games]$ ./falcon
......................bad md5 secret-cookie obtained from Arts::TmpGlobalComm - replacing it

Oh bother! And this just repeats.
The cookie lives in /tmp/mcop-simon/
It continues to be bad, despite being "replaced".

/usr/games/lib/nethackdir/jtp_log.txt lists an error message:
[jtp_sdl.c/jtp_SDLEnterGraphicMode/Check1] ERROR: Could not initialize SDL audio device
[SDL Error] No available audio device

but but but - I /have/ a soundcard /and/ sdl libs. What gives?
...
apropos SDL leads me to the Elightened Sound Daemon and esdloop (notice eSDLoop), though this is to do with sound it is not helpful.

the src makefile mentions SDL for jtp - says it should be in the path.

sdl-config is in the path (sdl-config --cflags works for eg.)
but - there are no man or info files for sdl-config or sdl<anything> though sdl-config --help shows the same usage as esd-config.
 
Old 07-05-2004, 08:16 PM   #12
Simon Bridge
LQ Guru
 
Registered: Oct 2003
Location: Waiheke NZ
Distribution: Ubuntu
Posts: 9,211

Original Poster
Rep: Reputation: 198Reputation: 198
Smile SDL device missing - recommendations?

The whole thing now goes - because I switched the sound off in /usr/games/lib/nethackdir/config/jtp_opts.txt

I *have* sdl-config et al but apparently no SDL device. (suspect all sound devices are ESD)

Also need timidity and mpg123...

Now my only trouble that the game hangs when I fall through a trapdoor.
I remember something about that in the Falcon's Eye mailing list.

It seems I'm the only one replying to myself here - I'm keeping up the solutions so anyone else with this problem will see how I did it.
Hint: Google + mailing list + post good questions.
Simon
 
  


Reply


Thread Tools Search this Thread
Search this Thread:

Advanced Search

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is Off
HTML code is Off



Similar Threads
Thread Thread Starter Forum Replies Last Post
puzzle about g++ compile options for inline assembly program markbeth Programming 2 09-20-2004 04:30 AM
All-Seeing Eye PhuckFonix Linux - Software 2 08-08-2004 10:33 AM
Falcon's Eye / Nethack not starting hallamigo Linux - Games 0 05-31-2004 03:19 PM
compile error: #error unknown processor family kmack2001 Linux - Newbie 0 02-14-2004 11:52 AM
Alsa compile error, and a WINE error scheidel21 Linux - Software 1 12-08-2003 08:16 PM

LinuxQuestions.org > Forums > Linux Forums > Linux - Software > Linux - Games

All times are GMT -5. The time now is 12:27 AM.

Main Menu
Advertisement
My LQ
Write for LQ
LinuxQuestions.org is looking for people interested in writing Editorials, Articles, Reviews, and more. If you'd like to contribute content, let us know.
Main Menu
Syndicate
RSS1  Latest Threads
RSS1  LQ News
Twitter: @linuxquestions
Facebook: linuxquestions Google+: linuxquestions
Open Source Consulting | Domain Registration