Jump to content
IGNORED

Upcoming Virtual Jaguar 2.0.0 release


Shamus

Recommended Posts

Well, other than "people won't be arsed to pad their ROM collections (or won't know how to)", I can't see any reason why not to do it :)

 

P.S. Damn, I just turned off my noisy compiling PC, I'll take a whack at building 352 for Windows tomorrow :)

P.P.S. Shamus, I have managed to compile libcdio (sledgehammer approach FTW), so if your concern is whether it is supported on other platforms, it should be ok on windows :)

Link to comment
Share on other sites

@goldenegg: Unfortunately that makefile uses xcodebuild which is Mac only, so it's a no-go. Someone who wants to take it upon themselves to convert the makefile to use xcode and all that is certainly welcome to do so, but there's no way that we can support it at all. :P

 

Maybe I didn't explain myself properly.

 

Currently, the VJ makefile does the following.

 

qmake virtualjaguar.pro -o makefile-qt

 

The result of this is to create 'makefile-qt.xcodeproj', which we didn't know what to do with. If we use the method as presented in the makefile I provided, maybe the created Xcode project files can actually be used.

Link to comment
Share on other sites

That's what I'm sayin': it's using xcodebuild to build those qmake made makefiles. :) Mac only. :P

 

What I'm going to do is just put a check in the Makefile for MacOS and add a "-spec macx-g++" var to the qmake command line; that should fix the problem. :P

Link to comment
Share on other sites

That's what I'm sayin': it's using xcodebuild to build those qmake made makefiles. :) Mac only. :P

 

What I'm going to do is just put a check in the Makefile for MacOS and add a "-spec macx-g++" var to the qmake command line; that should fix the problem. :P

 

Ahhh, so you wanted to avoid having a different compile path for different operating systems? I was thinking you could just use the Xcode method for Mac systems. The QMC2 source is cross-platform, so i figured it might give an idea on how to handle compiling across the different platforms.

 

Adding "-spec macx-g++" will also address the issue, as well as changing to use static SDL libraries.

 

R352 MACOS BINARY HERE!!!! :)

virtualjaguar-macOS-r352.zip

Link to comment
Share on other sites

Changes are in, please test. Nothing new functionality-wise, just changes to the build system. :P

 

Fails near end of compile.

 

g++ -headerpad_max_install_names -o virtualjaguar.app/Contents/MacOS/virtualjaguar obj/about.o obj/app.o obj/configdialog.o obj/controllertab.o obj/filelistmodel.o obj/filepicker.o obj/filethread.o obj/generaltab.o obj/glwidget.o obj/imagedelegate.o obj/mainwin.o obj/blitter.o obj/cdintf.o obj/cdrom.o obj/crc32.o obj/dac.o obj/dsp.o obj/eeprom.o obj/event.o obj/file.o obj/filedb.o obj/gpu.o obj/jagdasm.o obj/jaguar.o obj/jerry.o obj/joystick.o obj/log.o obj/memory.o obj/mmu.o obj/objectp.o obj/settings.o obj/state.o obj/tom.o obj/universalhdr.o obj/unzip.o obj/wavetable.o obj/moc_about.o obj/moc_configdialog.o obj/moc_controllertab.o obj/moc_filepicker.o obj/moc_filethread.o obj/moc_generaltab.o obj/moc_glwidget.o obj/moc_mainwin.o obj/qrc_virtualjaguar.o   -F/Library/Frameworks -L/Library/Frameworks -lz -Lobj -lmusashi `sdl-config --static-libs` --libs` -framework QtOpenGL -framework QtGui -framework QtCore -framework OpenGL -framework AGL 
/bin/sh: -c: line 0: unexpected EOF while looking for matching ``'
/bin/sh: -c: line 1: syntax error: unexpected end of file
make[1]: *** [virtualjaguar.app/Contents/MacOS/virtualjaguar] Error 2
make: *** [virtualjaguar] Error 2

 

There's an extra --libs' as part of the sdl-config call, causing this failure.

Link to comment
Share on other sites

r356

 

D'oh!

 

It's still adding --libs` to makefile-qt, which results in an error near the end of the compile.

 

EDIT:

 

Just so you can see where the problem is

 

LIBS          = $(SUBLIBS) -F/Library/Frameworks -L/Library/Frameworks -lz -Lobj -lmusashi `sdl-config --static-libs` --libs` -framework QtOpenGL -framework QtGui -framework QtCore -framework OpenGL -framework AGL 

 

Look at where it references sdl-config

Link to comment
Share on other sites

Look at the virtualjaguar.pro file. Near the top should be a "LIBS +=" variable. Is there a `sdl-config --libs` in that line? If so, then you should delete your virtualjaguar.pro file and update from svn again to pull a fresh copy.

 

There is a second "LIBS +=" line down below, but those are enclosed in braces and not what I'm looking at here. :)

Link to comment
Share on other sites

Look at the virtualjaguar.pro file. Near the top should be a "LIBS +=" variable. Is there a `sdl-config --libs` in that line? If so, then you should delete your virtualjaguar.pro file and update from svn again to pull a fresh copy.

 

There is a second "LIBS +=" line down below, but those are enclosed in braces and not what I'm looking at here. :)

 

I've been pulling clean copies from SVN instead of updating. Here's what's in my virtualjaguar.pro.

 

LIBS      += -lz -Lobj -ljaguarcore -lmusashi

 

and further down we have

 

macx       { LIBS += `sdl-config --static-libs` }

Link to comment
Share on other sites

@goldenegg: What happens if you change

macx       { LIBS += `sdl-config --static-libs` }

to

macx       { LIBS += $$quote(`sdl-config --static-libs`) }

?

 

If that doesn't work, post your makefile-qt that it generates. :)

Edited by Shamus
Link to comment
Share on other sites

@goldenegg: What happens if you change

macx       { LIBS += `sdl-config --static-libs` }

to

macx       { LIBS += $$quote(`sdl-config --static-libs`) }

?

 

If that doesn't work, post your makefile-qt that it generates. :)

 

Now it's even more interesting :)

 

LIBS          = $(SUBLIBS) -F/Library/Frameworks -L/Library/Frameworks -lz -Lobj -ljaguarcore -lmusashi `sdl-config\ --static-libs` `sdl-config --libs` -framework QtOpenGL -framework QtGui -framework QtCore -framework OpenGL -framework AGL 

makefile-qt.zip

Link to comment
Share on other sites

P.P.S. Shamus, I have managed to compile libcdio (sledgehammer approach FTW), so if your concern is whether it is supported on other platforms, it should be ok on windows :)

 

 

How the heck did you get libcdio to compile????

I tried everything, more to the point....how did you get libiconv to compile so you could try to compile libcdio??????

 

If I could have got those to compile I would have been compiling, or not and just helping Shamus find problems :P, VJ for a while.

 

Thanks for the great work ggn and of course Shamus :D

 

Ricardo

Link to comment
Share on other sites

P.P.S. Shamus, I have managed to compile libcdio (sledgehammer approach FTW), so if your concern is whether it is supported on other platforms, it should be ok on windows :)

 

 

How the heck did you get libcdio to compile????

I tried everything, more to the point....how did you get libiconv to compile so you could try to compile libcdio??????

 

If I could have got those to compile I would have been compiling, or not and just helping Shamus find problems :P, VJ for a while.

 

Thanks for the great work ggn and of course Shamus :D

 

Ricardo

 

 

How did I get libcdio to compile? Well, doesn't ./configure && make && make install work for you???

 

 

 

No?

 

 

 

 

Well, it didn't work for me either :P

 

I didn't try to be orthological or provide a neat, clean, readable patch to the source in order for it to compile. Instead I threw crap at it till it compiled (there, I just gave you an insight how we make things work over at Reboot industries :P).

 

To be more precise (and I guess more useful ;)), I downloaded v0.82 of libcdio, hit ./configure && make, and waited till it exploded. (I know it would, as I have compiled it in the past, but I remember I had to do something to make it work). It decided to explode in rock.c and util.c where it just couldn't find reference to HAVE_S_ISSOCK and HAVE_S_ISLNK. I searched the source tree for them, and sure enough they were defined in cdio/rock.h. Including that file didn't seem to have any damn effect, although it should (it had nice #ifdefs and all). Next step was to copy/paste the definitions in the 2 .c files, #ifdefs included. But nnnooooooooooo! It still wouldn't compile!

 

So, I applied the old sledgehammer approach: I just removed the #ifdefs. So, inside the 2 .c files there is now the following snippet of code:

 

//#include <cdio/rock.h>
//#if !defined(HAVE_S_ISSOCK) && !defined(S_ISSOCK)
#define S_ISSOCK(st_mode) ((((st_mode)) & 0170000) == (0140000))
//#endif

//#if !defined(HAVE_S_ISLNK) && !defined(S_ISLNK)
#define S_ISLNK(st_mode) ((((st_mode)) & 0170000) == (0010000))
//#endif

 

Miraculously enough, that seemed to do the trick :). So a make install later, and everything was sorted :).

 

 

 

If you still can't make this work, I might be persuaded to archive up my whole msys/mingw folder and upload it somewhere, so you (and other people) will have an environment to compile vj for windows...

Link to comment
Share on other sites

@ggn: I know this is going above and beyond the call of duty, but would you mind telling the libcdio guys about your troubles building on win32? If their goal really *is* to be cross-platform, I'm sure they'd like to know about your problems in getting it to build. :)

Link to comment
Share on other sites

Just tried 356 - Pretty cool, however the cart should be a skunkboard, not an alpine for Beebris :P

 

I'd still like an option to load something to a given address (either rom, or ram) outside of the "Insert Cart" button, just to make testing easier (Load/Run address from user)

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...