Building SheepShaver x86 Linux
Moderators: Cat_7, Ronald P. Regensburg, ClockWise
Compiling form cvs
Hello Shadowfox
My guess would be you don't have the X11 development packages installed.
Cat_7
My guess would be you don't have the X11 development packages installed.
Cat_7
Well, I did get the files downloaded and now I'm trying to compile them. I'm doing this on a AMD 2600 with MDK 10.0 Beta 2. I get the following error message
checking for XF86VidModeQueryExtension in -lXxf86vm... yes
./configure: line 3090: syntax error near unexpected token `1.2.0,'
./configure: line 3090: ` AM_PATH_GTK(1.2.0, '
Anyone know what that means? Is it saying that I'm missing GTK+? Thanks in advance.
checking for XF86VidModeQueryExtension in -lXxf86vm... yes
./configure: line 3090: syntax error near unexpected token `1.2.0,'
./configure: line 3090: ` AM_PATH_GTK(1.2.0, '
Anyone know what that means? Is it saying that I'm missing GTK+? Thanks in advance.
-
- Student Driver
- Posts: 18
- Joined: Sat Feb 07, 2004 8:41 pm
- Contact:
I find Google a must for using and setting up Linux. You can spend hours\days trying to pinpoint a problem (if you don't give up looking).
Make sure Automake is installed as well. I really need a modern book on Linux programming to make sence of everything.
My wish list:
Sams Teach Yourself C for Linux Programming in 21 Days by Erik de Castro Lopo
Sams Teach Yourself Linux Programming in 24 Hours by Warren Gay
Beginning Linux Programming -- by Richard Stones
Linux Programming by Example by Kurt Wall
Make sure Automake is installed as well. I really need a modern book on Linux programming to make sence of everything.
My wish list:
Sams Teach Yourself C for Linux Programming in 21 Days by Erik de Castro Lopo
Sams Teach Yourself Linux Programming in 24 Hours by Warren Gay
Beginning Linux Programming -- by Richard Stones
Linux Programming by Example by Kurt Wall
hmmm...I doubt that you can install *all* the development packages, even if I had unlimited disk space, this will not work without conflicts. I have installed GTK+ 1 and 2 packages along with automake and even after making a clean install of MDK 9.2 I still have the very same problems as I described for MDK 9.1 before.Diffused Mind wrote:Try installing *all* of the development packages for your distribution. If you cant do that, make sure all the GTK+ 1 and 2 packages are installed.
Can someone please elaborate what particular packages are needed in order to sucessfully compile this project?
AFAIK, Gwenole developed this under Mandrake, and I cannot believe that you have to install about 2GB of Software to be able to compile it.
I actually spent several day on Google to tackle the problem, but the longer I searched and considering that I can compile other projects, it seems to be related to this particular project.
This means that the configure script could not -previously- find gtk+ 1.2, regardless of if it is installed or not. In this case AM_PATH_... is a macro that should have been replaced with a path to gtk+. Here are some pointers that may help out (btw, there is no direct answer to this, so welcome to compiling code. This is not a Linux thing, it is a compiling thing):checking for XF86VidModeQueryExtension in -lXxf86vm... yes
./configure: line 3090: syntax error near unexpected token `1.2.0,'
./configure: line 3090: ` AM_PATH_GTK(1.2.0, '
Anyone know what that means? Is it saying that I'm missing GTK+? Thanks in advance.
1) If you found out -after- getting this message that you did not have gtk+ 1.2 installed and then subsequently installed it, you would need to delete config.cache and rerun configure again. To state what is probably obvious, config.cache are cached results of where library whatnot etc is found to be installed or whatever the case may be.
2) A library is generally split between the libraries (lib) and header files (include(s)). eg. /usr/lib /usr/include etc. Forget about header files for now. There are a variety of locations that libraries could possibly be installed. The kind of 'standard' locations could be /lib /usr/lib /usr/local/lib and so on, possibly anywhere in some cases. Generally these libraries are known as shared libraries (as opposed to static). Anyway, for these libraries to be automagically recognised and found by the system they need to be listed in /etc/ld.so.conf After adding a library an entry would be added to ld.so.config and ldconfig would be run to update/recreate a file called /etc/ld.so.cache. This is a very basic explanation and this process would usually be taken care of for you. This is one of the things that set the different distros apart. So if you know that gtk+ is installed in eg. /usr/lib check that there is a line in /etc/ld.so.config with /usr/lib In this example there should be as it is a common location. This is where problems can occur when libraries are installed in non-standard locations and so not picked up. Another way of pointing to libraries is using LD_LIBRARY_PATH but IMO that is more of a temporary thing.
3) Open up the configure script in an editor and search for what it is failing on and try and understand what the script is trying to do. If nothing makes sense now is a good time to start learning more about shell scripting. Bash would be a good start. Bash really rocks. It can only help you in the future
4) The configure script actually generates a Makefile. That is its purpose. Makefile files are required to compile code. Most code has a configure script. Open up the Makefile and have a look at whats going on in there. Here is a way you could bodge things a little and make it point to where your libraries are. Here is an extract from my Makefile for SheepShaver:
Code: Select all
CFLAGS = -g -O2 -I/usr/X11R6/include -I/usr/include/gtk-1.2 -I/usr/include/glib-1.2 -I/usr/lib/glib/include -I/usr/X11R6/include
CXXFLAGS = -g -O2 -I/usr/X11R6/include -I/usr/include/gtk-1.2 -I/usr/include/glib-1.2 -I/usr/lib/glib/include -I/usr/X11R6/include
CPPFLAGS = -I../kpx_cpu/include -I../kpx_cpu/src -DUSE_JIT -I../include -I.
DEFS = -DHAVE_CONFIG_H -D_REENTRANT -DDATADIR=\"$(datadir)/$(APP)\"
LDFLAGS =
LIBS = -lpthread -lSM -lICE -L/usr/X11R6/lib -lX11 -lXext -lXxf86dga -lXxf86vm -L/usr/lib -L/usr/X11R6/lib -lgtk -lgdk -rdynamic -lgmodule
-lglib -ldl -lXi -lXext -lX11 -lm -L/usr/lib -lesd -laudiofile -lm -lasound
Thats it. Hope it helps.
you bet id like a linux for more then the dumb oneMac Emu wrote:I find Google a must for using and setting up Linux. You can spend hours\days trying to pinpoint a problem (if you don't give up looking).
Make sure Automake is installed as well. I really need a modern book on Linux programming to make sence of everything.
My wish list:
Sams Teach Yourself C for Linux Programming in 21 Days by Erik de Castro Lopo
Sams Teach Yourself Linux Programming in 24 Hours by Warren Gay
Beginning Linux Programming -- by Richard Stones
Linux Programming by Example by Kurt Wall
Re: Compiling form cvs
Would anyone know offhand exactly which packages/libraries/whatnot are required to build? I'm sort of poking through gentoo's portage system looking for anything that looks important, but a google search for "X11 development packages" didn't turn up much useful information. Thanks!Cat_7 wrote:Hello Shadowfox
My guess would be you don't have the X11 development packages installed.
Cat_7
It really all depends on how your system is configured, what is installed, what is linked with what etc.Would anyone know offhand exactly which packages/libraries/whatnot are required to build? I'm sort of poking through gentoo's portage system looking for anything that looks important, but a google search for "X11 development packages" didn't turn up much useful information. Thanks!
I think you mean 'what is its (SheepShavers) immediate dependencies'. As there is a configure script you can do a ./configure --help to get an idea, which will tell you gtk+, esd, xfree86 dga, along with the xfree86 dev libraries. It wont tell you the versions it requires though which can lead you into another situation which I described ways to get around above. Maybe someone needs to prompt Gwenole to provide the information?
Still, the approach I took was to look at it from another angle: Basilisk is, if you will, the older brother of SheepShaver and is kind of similar in it what it requires to build. So get the BasiliskII source and build that. BasiliskII has been around for alot longer and is probably more documented in telling you what it needs.
Anwyay, as you (and I) are on Gentoo we are kind of spoiled as we can do a:
Code: Select all
emerge -pv basiliskII
Code: Select all
emerge -v basiliskII
Hope it helps.
I forget to mention that the version of gtk is most definitely gtk+ 1.2.x and that you could do a to find out absolutely all of its dependencies for your system.
Code: Select all
emerge -pev basiliskII
error Scott Holder
Hello me too, I'm having the same problem as Scott holder here in first page.
Haven't seen any remarks on this prob yet though.
Could please anyone be of any help.
The ??? stand for another number think it was 452 or 425 but rest of message was the same, I had to urgently log into xp again.
Thx in advance,
Bassie.
g++ -o SheepShaver obj/main_unix.o obj/prefs.o obj/prefs_items.o obj/prefs_unix.o obj/sys_unix.o obj/rom_patches.o obj/rsrc_patches.o obj/emul_op.o obj/name_registry.o obj/macos_util.o obj/timer.o obj/timer_unix.o obj/xpram.o obj/xpram_unix.o obj/adb.o obj/clip_unix.o obj/sony.o obj/disk.o obj/cdrom.o obj/scsi.o obj/scsi_linux.o obj/video.o obj/video_blit.o obj/video_x.o obj/audio.o obj/audio_oss_esd.o obj/ether.o obj/ether_linux.o obj/serial.o obj/serial_unix.o obj/extfs.o obj/extfs_unix.o obj/about_window_unix.o obj/user_strings.o obj/user_strings_unix.o obj/vm_alloc.o obj/sigsegv.o obj/sshpty.o obj/strlcpy.o obj/sheepshaver_glue.o obj/ppc-cpu.o obj/ppc-decode.o obj/ppc-execute.o -lpthread -lSM -lICE -L/usr/X11R6/lib -lX11 -lXext -lXxf86dga -lXxf86vm
obj/main_unix.o(.text+0x2bb): In function `main':
/home/scott/SheepShaver/src/Unix/main_unix.cpp:432: undefined reference to `PrefsEditor()'
collect2: ld returned 1 exit status
make: *** [SheepShaver] Error 1
Haven't seen any remarks on this prob yet though.
Could please anyone be of any help.
The ??? stand for another number think it was 452 or 425 but rest of message was the same, I had to urgently log into xp again.
Thx in advance,
Bassie.
g++ -o SheepShaver obj/main_unix.o obj/prefs.o obj/prefs_items.o obj/prefs_unix.o obj/sys_unix.o obj/rom_patches.o obj/rsrc_patches.o obj/emul_op.o obj/name_registry.o obj/macos_util.o obj/timer.o obj/timer_unix.o obj/xpram.o obj/xpram_unix.o obj/adb.o obj/clip_unix.o obj/sony.o obj/disk.o obj/cdrom.o obj/scsi.o obj/scsi_linux.o obj/video.o obj/video_blit.o obj/video_x.o obj/audio.o obj/audio_oss_esd.o obj/ether.o obj/ether_linux.o obj/serial.o obj/serial_unix.o obj/extfs.o obj/extfs_unix.o obj/about_window_unix.o obj/user_strings.o obj/user_strings_unix.o obj/vm_alloc.o obj/sigsegv.o obj/sshpty.o obj/strlcpy.o obj/sheepshaver_glue.o obj/ppc-cpu.o obj/ppc-decode.o obj/ppc-execute.o -lpthread -lSM -lICE -L/usr/X11R6/lib -lX11 -lXext -lXxf86dga -lXxf86vm
obj/main_unix.o(.text+0x2bb): In function `main':
/home/scott/SheepShaver/src/Unix/main_unix.cpp:432: undefined reference to `PrefsEditor()'
collect2: ld returned 1 exit status
make: *** [SheepShaver] Error 1
-
- Space Cadet
- Posts: 3
- Joined: Fri Jan 23, 2004 9:47 pm
When I installed gtk+ 1.2 i still got the errors, but after installing gnome-libs the errors went away.Anonymous wrote:NO. If you are getting this error make sure you have gtk+ 1.2 installed. See above.If you are getting this error, make sure you have gnome-libs installed.
gtk+ 1.2 is not part of gnome-libs.
- I wish people would stop posting uninformed and incorrect advice. No wonder newbies get so confused
This means that you installed gtk+ 1.2 through whatever package management your distro uses as a dependency of gnome-libs. So I think *if* your gtk+ *was* installed that it was installed incorrectly. Whatever.When I installed gtk+ 1.2 i still got the errors, but after installing gnome-libs the errors went away.
Here are sources:This means that the configure script could not -previously- find gtk+ 1.2, regardless of if it is installed or not. In this case AM_PATH_... is a macro that should have been replaced with a path to gtk+.checking for XF86VidModeQueryExtension in -lXxf86vm... yes
./configure: line 3090: syntax error near unexpected token `1.2.0,'
./configure: line 3090: ` AM_PATH_GTK(1.2.0, '
Anyone know what that means? Is it saying that I'm missing GTK+? Thanks in advance.
http://ftp.gnome.org/pub/GNOME/desktop/ ... 1.4.tar.gz
http://ftp.gnome.org/pub/GNOME/desktop/ ... .10.tar.gz
If you install gnome-libs through package management it will install gtk+
Mind if I ask what kernel version you're running? I'm on 2.6.2, not sure if that would make a difference, but I emerged everything basilisk depends on, and I'm still getting the same error compiling SheepShaver.Anonymous wrote:Anwyay, as you (and I) are on Gentoo we are kind of spoiled as we can do a:which will tell you what will be merged to satisfy building and installing basiliskII. Of course, doing aCode: Select all
emerge -pv basiliskII
will install basiliskII and leave you in a situation where you have everything you need to build SheepShaver (as I recall ). By the way, emerge search basiliskII gives the url of the home of Gwenole which is kind of a hint.Code: Select all
emerge -v basiliskII
Hope it helps.
Maybe I'll pop 2.4.22 on and see what happens there.
I am using 2.4.22.Mind if I ask what kernel version you're running? I'm on 2.6.2, not sure if that would make a difference, but I emerged everything basilisk depends on, and I'm still getting the same error compiling SheepShaver.
Enhancements aside, the version of the kernel that you are running will not make any difference to building SheepShaver.
I assume that you have done a make clean and removed config.cache?
I think I would do some sanity checks:
Check out the sources again into another directory and start again.
# gtk-config --version # this is part of gtk+ 1.2.
Check the integrity of gtk+ with regards to portage. There are different ways of doing this. Here is the way I do it. I have package epm merged. In case you dont know epm is kind of a gentoo rpm equivalent. qpkg (part of gentoolkit) does similar stuff.
This will show packages with all names that start with gtk+
# epm -q gtk+
You possibly have gtk+ 2.2.x installed so you may see two lines
One of them should read something like gtk+1.2.10-r10
To specifically verify this package as above.
# epm -V gtk+1.2.10-r10 # verify package.
A nice feature of epm is that the following will list the files in a package much like rpm
# epm -ql gtk+... # it treats the first few chars as a wildcard btw, showing all gtk+ packages
maybe also useful to know. To find out what package a file belongs to
# epm -qf /path/to/file
Compile Error
I tried compiling SheepShaver under Slackware 9.1 but I got this error when running Make
g++ -I../kpx_cpu/include -I../kpx_cpu/src -DUSE_JIT -I../include -I. -DHAVE_CONFIG_H -D_REENTRANT -DDATADIR=\"/usr/local/share/SheepShaver\" -g -O2 -I/usr/include/gtk-1.2 -I/usr/include/glib-1.2 -I/usr/lib/glib/include -I/usr/X11R6/include -fomit-frame-pointer -mpreferred-stack-boundary=2 -falign-functions=0 -mmmx -msse -finline-limit=10000 -fno-reorder-blocks -fno-optimize-sibling-calls -c ../kpx_cpu/src/cpu/ppc/ppc-dyngen-ops.cpp -o obj/ppc-dyngen-ops.o
In file included from ../kpx_cpu/src/cpu/ppc/ppc-dyngen-ops.cpp
/usr/lib/gcc-lib/i486-slackware-linux/3.2.3/include/xmmintrin.h: In function
`void _mm_stream_pi(vector int*, vector int)':
/usr/lib/gcc-lib/i486-slackware-linux/3.2.3/include/xmmintrin.h cannot
convert `vector int*' to `long long unsigned int*' for argument `1' to `void
__builtin_ia32_movntq(long long unsigned int*, long long unsigned int)'
make: *** [obj/ppc-dyngen-ops.o] Error
g++ -I../kpx_cpu/include -I../kpx_cpu/src -DUSE_JIT -I../include -I. -DHAVE_CONFIG_H -D_REENTRANT -DDATADIR=\"/usr/local/share/SheepShaver\" -g -O2 -I/usr/include/gtk-1.2 -I/usr/include/glib-1.2 -I/usr/lib/glib/include -I/usr/X11R6/include -fomit-frame-pointer -mpreferred-stack-boundary=2 -falign-functions=0 -mmmx -msse -finline-limit=10000 -fno-reorder-blocks -fno-optimize-sibling-calls -c ../kpx_cpu/src/cpu/ppc/ppc-dyngen-ops.cpp -o obj/ppc-dyngen-ops.o
In file included from ../kpx_cpu/src/cpu/ppc/ppc-dyngen-ops.cpp
/usr/lib/gcc-lib/i486-slackware-linux/3.2.3/include/xmmintrin.h: In function
`void _mm_stream_pi(vector int*, vector int)':
/usr/lib/gcc-lib/i486-slackware-linux/3.2.3/include/xmmintrin.h cannot
convert `vector int*' to `long long unsigned int*' for argument `1' to `void
__builtin_ia32_movntq(long long unsigned int*, long long unsigned int)'
make: *** [obj/ppc-dyngen-ops.o] Error
-
- Student Driver
- Posts: 10
- Joined: Wed Jan 21, 2004 10:26 pm
Thanks for the tip, I also had gtk installed and got the error. After installing lignome and it's dependencies (gtk was NOT one of them) everything went fine.Anonymous wrote: When I installed gtk+ 1.2 i still got the errors, but after installing gnome-libs the errors went away.
And now you wizards, go ahead and tell me off for being a confused newbie...
It is good that it is working for you.
gtk+ 1.2 is a dependency of libgnome. If you install libgnome through package management and gtk+ 1.2 is not installed, it will install it.
It is not clear what error you are referring to. If it is this error:I also had gtk installed and got the error. After installing lignome and it's dependencies (gtk was NOT one of them)
If you had gtk installed it was any or all of the following: not gtk+ 1.2, not installed correctly, gtk2.This means that the configure script could not -previously- find gtk+ 1.2, regardless of if it is installed or not. In this case AM_PATH_... is a macro that should have been replaced with a path to gtk+.checking for XF86VidModeQueryExtension in -lXxf86vm... yes
./configure: line 3090: syntax error near unexpected token `1.2.0,'
./configure: line 3090: ` AM_PATH_GTK(1.2.0, '
gtk+ 1.2 is a dependency of libgnome. If you install libgnome through package management and gtk+ 1.2 is not installed, it will install it.
- javier_garza4
- Tinkerer
- Posts: 68
- Joined: Thu Nov 28, 2002 8:59 pm
- Location: El Paso
-
- Expert User
- Posts: 868
- Joined: Sat Aug 30, 2003 4:15 pm
- Location: UK
- Contact: