Author Topic: Compiling Virtual Jaguar v2.12 in Ubuntu 14.04  (Read 757 times)

Offline Saturn

  • Global Moderator
  • Hero Member
  • *
  • Posts: 2546
  • Karma: 17
    • View Profile
    • http://jaysmith2000.ipbhost.com/index.php?s=c827a7b611daaaf555722b332b1b9a2c&act=idx
Compiling Virtual Jaguar v2.12 in Ubuntu 14.04
« on: October 12, 2015, 20:48:01 PM »
The edited version containing only the necessary info after a clean install of Ubuntu 14.04:

[size=140]Virtual Jaguar[/size]
Installing the necessary dependencies, compiling the source and running VJ 2.12

Via Terminal: Ref
sudo apt-get install build-essential checkinstall
sudo apt-get install cvs subversion git-core mercurial
sudo apt-get install qt4-default libqt4-dev qtchooser qt4-designer (QT4 Ref)
Install libsdl1.2-dev via The Ubuntu Software Center (Ref)

Download VJ source (scroll to Downloads) or Direct download of v2.12 and extract into /home directory.

Open virtualjaguar-virtualjaguar.pro and search (line 20) for:
LIBS      += -Lobj -Lsrc/m68000/obj -ljaguarcore -lz -lm68k
Change it to:
LIBS      += -Lobj -Lsrc/m68000/obj -ljaguarcore -lm68k -lz
Quick save and exit.

Compile it via Terminal:
cd virtualjaguar
make

When complete (can take a couple minutes)  navigate to virtualjaguar-src-file.cpp and open it with gedit (or whichever editor) and in my file it's line 255. It says:
   // We can assume we have JST_NONE at this point. :-P
   return false;


Change it to read:
   // We can assume we have JST_NONE at this point. :-P
   // CW - I'm going to assume this is a BJL file that loads/runs at 0x4000
   WriteLog("FILE: Setting up homebrew (BJL)... Run address: %08X, length: %08Xn", 0x4000, jaguarROMSize);
   memcpy(jagMemSpace + 0x4000, buffer, jaguarROMSize);
   delete[] buffer;
   jaguarRunAddress = 0x4000;
   return true;


Then quick save and exit file.cpp

~To run Virtual Jaguar~
Via Terminal:
cd virtualjaguar
./virtualjaguar

Open Jaguar-Configure-General tab
Change the EEPROMs path from:
/home/yourname/.local/share/data//virtualjaguar/eeproms/
to:
/home/yourname/.local/share/data/virtualjaguar/eeproms/

Change the Software path from:
/home/yourname/.local/share/data//virtualjaguar/software/
to:
/home/yourname/.local/share/data/virtualjaguar/software/

Copy ROMs to /home/yourname/.local/share/data/virtualjaguar/software/ (may have to create the directory)
Restart Virtual Jaguar
Play

For a desktop shortcut, navigate to /home/yourname/virtualjaguar/virtualjaguar (3.1 MB executable), right click on it and choose Make Link. Move Link to desktop.

Save States for VJ
Latest Windows versions

Edit- I've attached the modified files. virtualjaguar.pro goes in /home/virtualjaguar, replacing the original and file.cpp goes in /home/virtualjaguar/src, replacing the original.

Another way to run VJ with the Windows executable is to download the latest version here, place it in /home and via Terminal:
wine virtualjaguar.exe
When it loads, click Jaguar-Configure and paste in the paths from above-following same instructions. (may have to create the folder(s) )

Offline Saturn

  • Global Moderator
  • Hero Member
  • *
  • Posts: 2546
  • Karma: 17
    • View Profile
    • http://jaysmith2000.ipbhost.com/index.php?s=c827a7b611daaaf555722b332b1b9a2c&act=idx
Re: Compiling Virtual Jaguar in Ubuntu Linux
« Reply #1 on: October 12, 2015, 21:19:43 PM »
(Leaving the following intact for reference:)

Hi, I've been searching around for info on how to compile the source but have yet to pull it off successfully. Using these threads, I was able to download, install and edit everything (it seemed) but get errors during the process:

Download VJ source (scroll to Downloads) or Direct download of v2.12
Info for editing files in VJ package
2007 post of how-to compile VJ

And following the steps on these two pages to the best of my ability:
Compiling Easy How To
Compiling Software

If anyone has info on this or better familiarity with Linux, your help would be appreciated 8)

************************************************************************************

Here's the output of changing directories to virtualjaguar, typing make in Terminal and letting it play out without editing any files (since line 19, or actually 20, is different apparently than it was in the 2012 version that was used in the guide here):

From Terminal:
Code: [Select]
Ubuntu14@Ubuntu14-HP-Pavilion-g7-Notebook-PC:~$ cd virtualjaguar
Ubuntu14@Ubuntu14-HP-Pavilion-g7-Notebook-PC:~/virtualjaguar$ make
-e *** Preparing to compile Virtual Jaguar...
-e *** Making Customized UAE 68K Core...
make[1]: Entering directory `/home/Ubuntu14/virtualjaguar/src/m68000'
-e *** Compiling build68k.c ...
-e *** Generating cpudefs.c...
-e *** Generating gencpu...
-e *** Generating cpuemu.c...
-e *** Compiling obj/cpustbl.c...
/bin/sh: 1: sdl-config: not found
-e *** Compiling obj/cpudefs.c...
/bin/sh: 1: sdl-config: not found
-e *** Compiling obj/cpuemu.c...
/bin/sh: 1: sdl-config: not found
-e *** Compiling cpuextra.c...
/bin/sh: 1: sdl-config: not found
-e *** Compiling readcpu.c...
/bin/sh: 1: sdl-config: not found
-e *** Compiling m68kinterface.c...
/bin/sh: 1: sdl-config: not found
-e *** Compiling m68kdasm.c...
/bin/sh: 1: sdl-config: not found
ar: creating obj/libm68k.a
Done!
make[1]: Leaving directory `/home/Ubuntu14/virtualjaguar/src/m68000'
-e *** Making Virtual Jaguar core...
make[1]: Entering directory `/home/Ubuntu14/virtualjaguar'
-e *** Compiling src/blitter.cpp...
/bin/sh: 1: sdl-config: not found
src/blitter.cpp:3590:2: warning: #warning srcdreadd is not properly initialized! [-Wcpp]
 #warning srcdreadd is not properly initialized!
  ^
-e *** Compiling src/cdintf.cpp...
/bin/sh: 1: sdl-config: not found
src/cdintf.cpp:93:2: warning: #warning "!!! FIX !!! CDIntfReadBlock not implemented!" [-Wcpp]
 #warning "!!! FIX !!! CDIntfReadBlock not implemented!"
  ^
src/cdintf.cpp:101:2: warning: #warning "!!! FIX !!! CDIntfGetNumSessions not implemented!" [-Wcpp]
 #warning "!!! FIX !!! CDIntfGetNumSessions not implemented!"
  ^
src/cdintf.cpp:109:2: warning: #warning "!!! FIX !!! CDIntfSelectDrive not implemented!" [-Wcpp]
 #warning "!!! FIX !!! CDIntfSelectDrive not implemented!"
  ^
src/cdintf.cpp:116:2: warning: #warning "!!! FIX !!! CDIntfGetCurrentDrive not implemented!" [-Wcpp]
 #warning "!!! FIX !!! CDIntfGetCurrentDrive not implemented!"
  ^
src/cdintf.cpp:124:2: warning: #warning "!!! FIX !!! CDIntfGetDriveName driveNum is currently ignored!" [-Wcpp]
 #warning "!!! FIX !!! CDIntfGetDriveName driveNum is currently ignored!"
  ^
src/cdintf.cpp:139:2: warning: #warning "!!! FIX !!! CDIntfGetSessionInfo not implemented!" [-Wcpp]
 #warning "!!! FIX !!! CDIntfGetSessionInfo not implemented!"
  ^
src/cdintf.cpp:147:2: warning: #warning "!!! FIX !!! CDIntfTrackInfo not implemented!" [-Wcpp]
 #warning "!!! FIX !!! CDIntfTrackInfo not implemented!"
  ^
-e *** Compiling src/cdrom.cpp...
/bin/sh: 1: sdl-config: not found
src/cdrom.cpp:356:39: warning: trigraph ??) ignored, use -trigraphs to enable [-Wtrigraphs]
    WriteLog("CDROM: Reading DS_DATA (???), cdCmd=$%04Xn", cdCmd);
 ^
-e *** Compiling src/crc32.cpp...
/bin/sh: 1: sdl-config: not found
-e *** Compiling src/dac.cpp...
/bin/sh: 1: sdl-config: not found
src/dac.cpp:45:17: fatal error: SDL.h: No such file or directory
 #include "SDL.h"
                 ^
compilation terminated.
make[1]: *** [obj/dac.o] Error 1
make[1]: Leaving directory `/home/Ubuntu14/virtualjaguar'
make: *** [obj/libjaguarcore.a] Error 2
Ubuntu14@Ubuntu14-HP-Pavilion-g7-Notebook-PC:~/virtualjaguar$

After editing virtualjaguar.pro, but line 20 instead of 19 as it's the closest/nearest match to what Chilly Willy described (as far as I can tell) I get this:

From Terminal:
Code: [Select]
Ubuntu14@Ubuntu14-HP-Pavilion-g7-Notebook-PC:~$ cd virtualjaguar
Ubuntu14@Ubuntu14-HP-Pavilion-g7-Notebook-PC:~/virtualjaguar$ make
-e *** Preparing to compile Virtual Jaguar...
-e *** Making Customized UAE 68K Core...
make[1]: Entering directory `/home/Ubuntu14/virtualjaguar/src/m68000'
-e *** Compiling build68k.c ...
-e *** Generating cpudefs.c...
-e *** Generating gencpu...
-e *** Generating cpuemu.c...
-e *** Compiling obj/cpustbl.c...
/bin/sh: 1: sdl-config: not found
-e *** Compiling obj/cpudefs.c...
/bin/sh: 1: sdl-config: not found
-e *** Compiling obj/cpuemu.c...
/bin/sh: 1: sdl-config: not found
-e *** Compiling cpuextra.c...
/bin/sh: 1: sdl-config: not found
-e *** Compiling readcpu.c...
/bin/sh: 1: sdl-config: not found
-e *** Compiling m68kinterface.c...
/bin/sh: 1: sdl-config: not found
-e *** Compiling m68kdasm.c...
/bin/sh: 1: sdl-config: not found
ar: creating obj/libm68k.a
Done!
make[1]: Leaving directory `/home/Ubuntu14/virtualjaguar/src/m68000'
-e *** Making Virtual Jaguar core...
make[1]: Entering directory `/home/Ubuntu14/virtualjaguar'
-e *** Compiling src/blitter.cpp...
/bin/sh: 1: sdl-config: not found
src/blitter.cpp:3590:2: warning: #warning srcdreadd is not properly initialized! [-Wcpp]
 #warning srcdreadd is not properly initialized!
  ^
-e *** Compiling src/cdintf.cpp...
/bin/sh: 1: sdl-config: not found
src/cdintf.cpp:93:2: warning: #warning "!!! FIX !!! CDIntfReadBlock not implemented!" [-Wcpp]
 #warning "!!! FIX !!! CDIntfReadBlock not implemented!"
  ^
src/cdintf.cpp:101:2: warning: #warning "!!! FIX !!! CDIntfGetNumSessions not implemented!" [-Wcpp]
 #warning "!!! FIX !!! CDIntfGetNumSessions not implemented!"
  ^
src/cdintf.cpp:109:2: warning: #warning "!!! FIX !!! CDIntfSelectDrive not implemented!" [-Wcpp]
 #warning "!!! FIX !!! CDIntfSelectDrive not implemented!"
  ^
src/cdintf.cpp:116:2: warning: #warning "!!! FIX !!! CDIntfGetCurrentDrive not implemented!" [-Wcpp]
 #warning "!!! FIX !!! CDIntfGetCurrentDrive not implemented!"
  ^
src/cdintf.cpp:124:2: warning: #warning "!!! FIX !!! CDIntfGetDriveName driveNum is currently ignored!" [-Wcpp]
 #warning "!!! FIX !!! CDIntfGetDriveName driveNum is currently ignored!"
  ^
src/cdintf.cpp:139:2: warning: #warning "!!! FIX !!! CDIntfGetSessionInfo not implemented!" [-Wcpp]
 #warning "!!! FIX !!! CDIntfGetSessionInfo not implemented!"
  ^
src/cdintf.cpp:147:2: warning: #warning "!!! FIX !!! CDIntfTrackInfo not implemented!" [-Wcpp]
 #warning "!!! FIX !!! CDIntfTrackInfo not implemented!"
  ^
-e *** Compiling src/cdrom.cpp...
/bin/sh: 1: sdl-config: not found
src/cdrom.cpp:356:39: warning: trigraph ??) ignored, use -trigraphs to enable [-Wtrigraphs]
    WriteLog("CDROM: Reading DS_DATA (???), cdCmd=$%04Xn", cdCmd);
 ^
-e *** Compiling src/crc32.cpp...
/bin/sh: 1: sdl-config: not found
-e *** Compiling src/dac.cpp...
/bin/sh: 1: sdl-config: not found
src/dac.cpp:45:17: fatal error: SDL.h: No such file or directory
 #include "SDL.h"
                 ^
compilation terminated.
make[1]: *** [obj/dac.o] Error 1
make[1]: Leaving directory `/home/Ubuntu14/virtualjaguar'
make: *** [obj/libjaguarcore.a] Error 2
Ubuntu14@Ubuntu14-HP-Pavilion-g7-Notebook-PC:~/virtualjaguar$

The original line (20) in my virtualjaguar.pro reads:
LIBS      += -Lobj -Lsrc/m68000/obj -ljaguarcore -lz -lm68k

so I changed it to:
LIBS      += -Lobj -Lsrc/m68000/obj -ljaguarcore -lm68k -lz

considering the -lz still has to be after "it in the link order or it doesn't link." And considering that would be the only change still needing to be made, even though this appears to be an updated version and the text in the line between the two already doesn't match anyway.

Tons of errors in there and no idea what's needed or should be changed to make it work.


***************************************************************************************


Edit- The INSTALL file inside states to run make btw. Unlike ./compile as it says here.

After installing libsdl1.2-dev via The Ubuntu Software Center it went a lot better:

From Terminal:
Code: [Select]
Ubuntu14@Ubuntu14-HP-Pavilion-g7-Notebook-PC:~/virtualjaguar$ make
-e *** Preparing to compile Virtual Jaguar...
-e *** Making Customized UAE 68K Core...
make[1]: Entering directory `/home/Ubuntu14/virtualjaguar/src/m68000'
-e *** Compiling build68k.c ...
-e *** Generating cpudefs.c...
-e *** Generating gencpu...
-e *** Generating cpuemu.c...
-e *** Compiling obj/cpustbl.c...
-e *** Compiling obj/cpudefs.c...
-e *** Compiling obj/cpuemu.c...
-e *** Compiling cpuextra.c...
-e *** Compiling readcpu.c...
-e *** Compiling m68kinterface.c...
-e *** Compiling m68kdasm.c...
ar: creating obj/libm68k.a
Done!
make[1]: Leaving directory `/home/Ubuntu14/virtualjaguar/src/m68000'
-e *** Making Virtual Jaguar core...
make[1]: Entering directory `/home/Ubuntu14/virtualjaguar'
-e *** Compiling src/blitter.cpp...
src/blitter.cpp:3590:2: warning: #warning srcdreadd is not properly initialized! [-Wcpp]
 #warning srcdreadd is not properly initialized!
  ^
-e *** Compiling src/cdintf.cpp...
src/cdintf.cpp:93:2: warning: #warning "!!! FIX !!! CDIntfReadBlock not implemented!" [-Wcpp]
 #warning "!!! FIX !!! CDIntfReadBlock not implemented!"
  ^
src/cdintf.cpp:101:2: warning: #warning "!!! FIX !!! CDIntfGetNumSessions not implemented!" [-Wcpp]
 #warning "!!! FIX !!! CDIntfGetNumSessions not implemented!"
  ^
src/cdintf.cpp:109:2: warning: #warning "!!! FIX !!! CDIntfSelectDrive not implemented!" [-Wcpp]
 #warning "!!! FIX !!! CDIntfSelectDrive not implemented!"
  ^
src/cdintf.cpp:116:2: warning: #warning "!!! FIX !!! CDIntfGetCurrentDrive not implemented!" [-Wcpp]
 #warning "!!! FIX !!! CDIntfGetCurrentDrive not implemented!"
  ^
src/cdintf.cpp:124:2: warning: #warning "!!! FIX !!! CDIntfGetDriveName driveNum is currently ignored!" [-Wcpp]
 #warning "!!! FIX !!! CDIntfGetDriveName driveNum is currently ignored!"
  ^
src/cdintf.cpp:139:2: warning: #warning "!!! FIX !!! CDIntfGetSessionInfo not implemented!" [-Wcpp]
 #warning "!!! FIX !!! CDIntfGetSessionInfo not implemented!"
  ^
src/cdintf.cpp:147:2: warning: #warning "!!! FIX !!! CDIntfTrackInfo not implemented!" [-Wcpp]
 #warning "!!! FIX !!! CDIntfTrackInfo not implemented!"
  ^
-e *** Compiling src/cdrom.cpp...
src/cdrom.cpp:356:39: warning: trigraph ??) ignored, use -trigraphs to enable [-Wtrigraphs]
    WriteLog("CDROM: Reading DS_DATA (???), cdCmd=$%04Xn", cdCmd);
 ^
-e *** Compiling src/crc32.cpp...
-e *** Compiling src/dac.cpp...
-e *** Compiling src/dsp.cpp...
src/dsp.cpp:806:2: warning: #warning "!!! DSP IRQs that go to the 68K have to be routed thru TOM !!! FIX !!!" [-Wcpp]
 #warning "!!! DSP IRQs that go to the 68K have to be routed thru TOM !!! FIX !!!"
  ^
src/dsp.cpp:1189:43: warning: missing terminating ' character [enabled by default]
 #warning !!! No checking done to see if we're using pipelined DSP or not !!!
                                           ^
src/dsp.cpp:1189:2: warning: #warning !!! No checking done to see if we're using pipelined DSP or not !!! [-Wcpp]
 #warning !!! No checking done to see if we're using pipelined DSP or not !!!
  ^
-e *** Compiling src/eeprom.cpp...
src/eeprom.cpp: In function void ReadEEPROMFromFile(FILE*, uint16_t*):
src/eeprom.cpp:144:29: warning: ignoring return value of size_t fread(void*, size_t, size_t, FILE*), declared with attribute warn_unused_result [-Wunused-result]
  fread(buffer, 1, 128, file);
                             ^
-e *** Compiling src/event.cpp...
-e *** Compiling src/file.cpp...
src/file.cpp:48:2: warning: #warning "!!! FIX !!! Should have sanity checking for ROM size to prevent buffer overflow!" [-Wcpp]
 #warning "!!! FIX !!! Should have sanity checking for ROM size to prevent buffer overflow!"
  ^
src/file.cpp:357:2: warning: #warning "!!! FIX !!! Should have sanity checking for ROM size to prevent buffer overflow!" [-Wcpp]
 #warning "!!! FIX !!! Should have sanity checking for ROM size to prevent buffer overflow!"
  ^
src/file.cpp:382:2: warning: #warning "!!! Checking for image by extension can be fooled !!!" [-Wcpp]
 #warning "!!! Checking for image by extension can be fooled !!!"
  ^
-e *** Compiling src/filedb.cpp...
-e *** Compiling src/gpu.cpp...
src/gpu.cpp:2024:2: warning: #warning "!!! Alignment issues, need to find definitive final word on this !!!" [-Wcpp]
 #warning "!!! Alignment issues, need to find definitive final word on this !!!"
  ^
-e *** Compiling src/jagbios.cpp...
-e *** Compiling src/jagbios2.cpp...
-e *** Compiling src/jagcdbios.cpp...
-e *** Compiling src/jagdevcdbios.cpp...
-e *** Compiling src/jagstub1bios.cpp...
-e *** Compiling src/jagstub2bios.cpp...
-e *** Compiling src/jagdasm.cpp...
-e *** Compiling src/jaguar.cpp...
src/jaguar.cpp:472:49: warning: missing terminating ' character [enabled by default]
 this crap which is currently scattered over Hell's Half Acre(tm).
                                                 ^
-e *** Compiling src/jerry.cpp...
-e *** Compiling src/joystick.cpp...
src/joystick.cpp:90:2: warning: #warning "No bounds checking done in JoystickReadByte!" [-Wcpp]
 #warning "No bounds checking done in JoystickReadByte!"
  ^
src/joystick.cpp:164:2: warning: #warning "No bounds checking done for JoystickWriteWord!" [-Wcpp]
 #warning "No bounds checking done for JoystickWriteWord!"
  ^
-e *** Compiling src/log.cpp...
-e *** Compiling src/memory.cpp...
src/memory.cpp:134:53: warning: trigraph ??) ignored, use -trigraphs to enable [-Wtrigraphs]
 #warning "Need to separate out this stuff (or do we???)"
 ^
src/memory.cpp:134:2: warning: #warning "Need to separate out this stuff (or do we???)" [-Wcpp]
 #warning "Need to separate out this stuff (or do we???)"
  ^
-e *** Compiling src/mmu.cpp...
-e *** Compiling src/op.cpp...
src/op.cpp:441:2: warning: #warning "Need to fix this so that when an GPU object IRQ happens, we can pick up OP processing where we left off. !!! FIX !!!" [-Wcpp]
 #warning "Need to fix this so that when an GPU object IRQ happens, we can pick up OP processing where we left off. !!! FIX !!!"
  ^
src/op.cpp:444:2: warning: #warning "!!! NEED TO HANDLE MULTIPLE FIELDS PROPERLY !!!" [-Wcpp]
 #warning "!!! NEED TO HANDLE MULTIPLE FIELDS PROPERLY !!!"
  ^
src/op.cpp:633:2: warning: #warning "!!! Link address is not linked properly for all object types !!!" [-Wcpp]
 #warning "!!! Link address is not linked properly for all object types !!!"
  ^
src/op.cpp:634:2: warning: #warning "!!! Only BITMAP is properly handled !!!" [-Wcpp]
 #warning "!!! Only BITMAP is properly handled !!!"
  ^
src/op.cpp:778:2: warning: #warning "Need to fix OP GPU IRQ handling! !!! FIX !!!" [-Wcpp]
 #warning "Need to fix OP GPU IRQ handling! !!! FIX !!!"
  ^
src/op.cpp:796:2: warning: #warning "!!! Possibly bad CC handling in OP (missing 1 bit) !!!" [-Wcpp]
 #warning "!!! Possibly bad CC handling in OP (missing 1 bit) !!!"
  ^
src/op.cpp:826:2: warning: #warning "Unhandled condition code causes emulator to crash... !!! FIX !!!" [-Wcpp]
 #warning "Unhandled condition code causes emulator to crash... !!! FIX !!!"
  ^
src/op.cpp:868:2: warning: #warning "Better would be to count how many actual cycles it used and bail out/reenter to properly simulate an overloaded OP... !!! FIX !!!" [-Wcpp]
 #warning "Better would be to count how many actual cycles it used and bail out/reenter to properly simulate an overloaded OP... !!! FIX !!!"
  ^
src/op.cpp:923:2: warning: #warning "!!! Need to investigate iwidth == 0 behavior on real hardware !!!" [-Wcpp]
 #warning "!!! Need to investigate iwidth == 0 behavior on real hardware !!!"
  ^
-e *** Compiling src/settings.cpp...
-e *** Compiling src/state.cpp...
-e *** Compiling src/tom.cpp...
src/tom.cpp:568:2: warning: #warning "This is not endian-safe. !!! FIX !!!" [-Wcpp]
 #warning "This is not endian-safe. !!! FIX !!!"
  ^
src/tom.cpp:644:2: warning: #warning "Used in only one place (and for debug purposes): OBJECTP.CPP !!! FIX !!!" [-Wcpp]
 #warning "Used in only one place (and for debug purposes): OBJECTP.CPP !!! FIX !!!"
  ^
src/tom.cpp:861:2: warning: #warning "!!! Need to handle multiple fields properly !!!" [-Wcpp]
 #warning "!!! Need to handle multiple fields properly !!!"
  ^
src/tom.cpp:994:2: warning: #warning "The following doesn't put BORDER color on the sides... !!! FIX !!!" [-Wcpp]
 #warning "The following doesn't put BORDER color on the sides... !!! FIX !!!"
  ^
src/tom.cpp:1620:2: warning: #warning "!!! Watch out for unaligned writes here !!! FIX !!!" [-Wcpp]
 #warning "!!! Watch out for unaligned writes here !!! FIX !!!"
  ^
src/tom.cpp:1628:2: warning: #warning "Actually, we should check to see if the Enable bit of VMODE is set before doing this... !!! FIX !!!" [-Wcpp]
 #warning "Actually, we should check to see if the Enable bit of VMODE is set before doing this... !!! FIX !!!"
  ^
src/tom.cpp:1708:2: warning: #warning "!!! Need to get rid of this dependency !!!" [-Wcpp]
 #warning "!!! Need to get rid of this dependency !!!"
  ^
src/tom.cpp:1718:2: warning: #warning "!!! TOM: ResizeScreen commented out !!!" [-Wcpp]
 #warning "!!! TOM: ResizeScreen commented out !!!"
  ^
-e *** Compiling src/universalhdr.cpp...
-e *** Compiling src/unzip.cpp...
src/unzip.cpp: In function bool GetZIPHeader(FILE*, ZipFileEntry&):
src/unzip.cpp:63:47: warning: ignoring return value of size_t fread(void*, size_t, size_t, FILE*), declared with attribute warn_unused_result [-Wunused-result]
   fread(ze.filename, 1, ze.filenameLength, fp);
                                               ^
-e *** Compiling src/wavetable.cpp...
ar: creating obj/libjaguarcore.a
Done!
make[1]: Leaving directory `/home/Ubuntu14/virtualjaguar'
-e *** Libraries successfully made.
-e *** Creating Qt makefile...
qmake: could not exec '/usr/lib/i386-linux-gnu/qt4/bin/qmake': No such file or directory
make: *** [makefile-qt] Error 1
Ubuntu14@Ubuntu14-HP-Pavilion-g7-Notebook-PC:~/virtualjaguar$
Only one error 8)

Offline Saturn

  • Global Moderator
  • Hero Member
  • *
  • Posts: 2546
  • Karma: 17
    • View Profile
    • http://jaysmith2000.ipbhost.com/index.php?s=c827a7b611daaaf555722b332b1b9a2c&act=idx
Re: Compiling Virtual Jaguar in Ubuntu Linux
« Reply #2 on: October 12, 2015, 21:55:26 PM »
Ha, got it :)

Now navigate to virtualjaguar-src-file.cpp and open it with gedit (or whichever editor) and in my file it's line 255. It says:
   // We can assume we have JST_NONE at this point. :-P
   return false;


Change it to read:
   // We can assume we have JST_NONE at this point. :-P
   // CW - I'm going to assume this is a BJL file that loads/runs at 0x4000
   WriteLog("FILE: Setting up homebrew (BJL)... Run address: %08X, length: %08Xn", 0x4000, jaguarROMSize);
   memcpy(jagMemSpace + 0x4000, buffer, jaguarROMSize);
   delete[] buffer;
   jaguarRunAddress = 0x4000;
   return true;


Then quick save and exit file.cpp

~To run Virtual Jaguar~
From Terminal:
Ubuntu14@Ubuntu14-HP-Pavilion-g7-Notebook-PC:~$ cd virtualjaguar
Ubuntu14@Ubuntu14-HP-Pavilion-g7-Notebook-PC:~/virtualjaguar$ ./virtualjaguar