What's new

Post multiple linux versions?

watermark86

New member
I can never get complex progs like this to compile correctly, and I'm sure I'm not alone.

I would like a nogui linux version, but I can't get it to compile. And I'm sure there is a reason why the linux version has no command line args. What if there were multiple linux versions made availible to fit needs such as this...atleast until the linux version did support commandline args?

(If someone doesnt mind posting the nogui binary, that would be awesome)
 

ciruZ

New member
Please tell us where to compilation fails. I guess it's a problem with your system, for example you're missing headerfiles or something like this.
Yes, a terminal interface exists, it's called mupen64_nogui.
 
OP
W

watermark86

New member
The only linux box I have is my knoppmyth box (newest version, R5A26). My primitive guess is knoppmyth is missing some gtk dev package. I'm pretty sure gtk2 is installed because the binary supplied on the main site runs fine. If you need anything else, just say so.

Code:
$ ./configure
Found a working C compiler (gcc).
Checking SDL...
Found SDL version 1.2.8.
Checking GTK 1.2...
*** Couldn't find gtk-config.
Checking GTK 2...
Package gtk+-2.0 was not found in the pkg-config search path.
Perhaps you should add the directory containing `gtk+-2.0.pc'
to the PKG_CONFIG_PATH environment variable
No package 'gtk+-2.0' found
Package gtk+-2.0 was not found in the pkg-config search path.
Perhaps you should add the directory containing `gtk+-2.0.pc'
to the PKG_CONFIG_PATH environment variable
No package 'gtk+-2.0' found
./config.temp: line 3: syntax error near unexpected token `('
./config.temp: line 3: `int main(int argc, char *argv[]) { if (gtk_init_check(&argc,&argv) == FALSE) { printf( "gtk_init_check() failed"); return 1; } return 0; }'
*** Couldn't find a working GTK library!
 

ciruZ

New member
Don't use the configure-Script, it's broken. Just skip it. You could have found that using search function, too ;).
 

Hacktarux

Emulator Developer
Moderator
Maybe the configure script has some problems but in this case i doubt compilation will work. I think watermark86 is right, the system is missing the development headers...
 
OP
W

watermark86

New member
Ok, I figured it out, but I had to edit the Makefile. It detects the version of gtk 1.2/2.0 incorrectly. I forced it to think I had gtk1.2, which I do. And I had to grab "libgtk1.2-dev" from apt-get.

What I changed:
There is something wrong with the line "ifneq ("$(shell grep GTK2 config.h)","\#define GTK2_SUPPORT 1")". It incorrectly detects gtk2. If you have gtk1.2, comment out that if!= statment (and else endif) and the gtk2 code.

A easy way to find out what version of gtk you have, "$ gtk-config --version". I think that command may fail if you dont have gtk installed at all or if you have 2.0...but it returns 1.2.10 on my system.

If you want anything else, let me know.
 
Last edited:
OP
W

watermark86

New member
I'm wondering if I should open a new thread for this...as this is far from my thread title....

I have a new error. This results in a black screen filling my TV and then disappearing. Heres the output below. This rom is known working, and does the same for a MarioKart as well. I saw a post before that someone fixed this prob by running as root, but this did no good here. And why does it say it's using two sound plugins?

Code:
$ /usr/local/bin/mupen64/mupen64_nogui --fullscreen /myth/games/n64/roms/Mario64.zip
Mupen64 version : 0.5
file found
byteswaping rom...
rom byteswaped
rom loaded succesfully
loading rom : 100%
80 37 12 40
ClockRate=f
Version:1444
CRC: 635a2bff 8b022326
name: SUPER MARIO 64      
Manufacturer: Nintendo
Cartridge_ID: 4d53
Country : United States
size: 4096
PC= 80246000
md5 code:20B854B239203BAF6C961B850A4A51A2
eeprom type:0
Goodname:Super Mario 64 (U) [!]
16kb eeprom=0
emulation mode:
     1. interpreter
     2. dynamic recompiler (default)
     3. pure interpreter
memory initialized
  Choose your gfx plugin : 
1 - Mupen64 software gfx plugin (very unstable beta) (/usr/local/bin/mupen64/plugins/mupen64_soft_gfx.so)
2 - glN64 v0.4.1 (/usr/local/bin/mupen64/plugins/glN64.so)
  Choose your audio plugin : 
1 - dummy audio plugin (/usr/local/bin/mupen64/plugins/dummyaudio.so)
2 - mupen64 audio plugin (/usr/local/bin/mupen64/plugins/mupen64_audio.so)
3 - JttL's SDL plugin 1.3 (/usr/local/bin/mupen64/plugins/jttl_audio.so)
  Choose your input plugin : 
1 - Mupen64 basic input plugin (/usr/local/bin/mupen64/plugins/mupen64_input.so)
2 - blight's SDL input plugin 0.0.10 (/usr/local/bin/mupen64/plugins/blight_input.so)
  Choose your RSP plugin : 
1 - Hacktarux/Azimer hle rsp plugin (/usr/local/bin/mupen64/plugins/mupen64_hle_rsp_azimer.so)


Selected Plugins: 2 - glN64 v0.4.1, 3 - JttL's SDL plugin 1.3, 1 - dummy audio plugin, 1 - Hacktarux/Azimer hle rsp plugin
[blight's SDL input plugin]: version 0.0.10 initialized.
[glN64]: (II) Initializing SDL video subsystem...
[glN64]: (II) Getting video info...
[glN64]: (II) Setting video mode 640x480...
(II) JttL's sound plugin version 1.3
(II) Initializing SDL audio subsystem...
(II) Allocating memory for audio buffer: 65536 bytes.
demarrage r4300
dynamic recompiler
Fatal signal: Segmentation Fault (SDL Parachute Deployed)
 

ciruZ

New member
Hacktarux said:
Maybe the configure script has some problems but in this case i doubt compilation will work. I think watermark86 is right, the system is missing the development headers...
You're actually right. I just saw that he used the configure script and didn't read the rest.

watermark86: Have you compiled Mupen64 for multiuser or singleuser mode? Multiuser is known to be broken. Also, send us a backtrace.
 

Hacktarux

Emulator Developer
Moderator
watermark86 said:
Ok, I figured it out, but I had to edit the Makefile. It detects the version of gtk 1.2/2.0 incorrectly. I forced it to think I had gtk1.2, which I do. And I had to grab "libgtk1.2-dev" from apt-get.

What I changed:
There is something wrong with the line "ifneq ("$(shell grep GTK2 config.h)","\#define GTK2_SUPPORT 1")". It incorrectly detects gtk2. If you have gtk1.2, comment out that if!= statment (and else endif) and the gtk2 code.

A easy way to find out what version of gtk you have, "$ gtk-config --version". I think that command may fail if you dont have gtk installed at all or if you have 2.0...but it returns 1.2.10 on my system.

If you want anything else, let me know.

The script is using gtk-config to detect gtk1.2 and then it's compiling a small program that uses gtk1.2 to see if the dev files are installed. Of course if you installed the dev package after you run the script and edited the makefile, the script couldn't find gtk...

For gtk2 you can't use gtk-config, you have to use pkg-config instead. If nothing is found it falls to gtk2 by default. As it seems you didn't have any dev package installed, it was configuring mupen64 to use gtk2.
 

Top