Previous Thread
Next Thread
Print Thread
Page 26 of 42 1 2 24 25 26 27 28 41 42
Joined: Mar 2015
Posts: 58
Likes: 1
F
Member
Offline
Member
F
Joined: Mar 2015
Posts: 58
Likes: 1
I just rebased my driver (imds2) to today's master branch on GitHub in order to push my changes and I got a bad surprise: my "tiny" project to compile just my driver doesn't work anymore. I guess it has something to do with the recent switch to genie. Basically, I changed my tiny-like makefile to lua script but the same error I got in linking stage a few weeks ago resurfaced:

flopimg.c:(.text+0x2b5f): undefined reference to `pool_free_lib(object_pool*)'
../../../../linux64_gcc/bin/x64/libformats64.a(flopimg.o): In function `floppy_open_internal(void*, io_procs const*, char const*, FloppyFormat const*, int, int, floppy_image_legacy**, int*)':
flopimg.c:(.text+0x2c6b): undefined reference to `pool_alloc_lib(void (*)(char const*))'
... etc ...

When I was using makefiles I included something like:
DRVLIBS = \
$(OBJ)/emu/drivers/emudummy.o \
$(OBJ)/lib/util/opresolv.o

to solve the problem (basing on info gathered on this forum).
But I'm not an expert at all in either genie or lua, so: how do I achieve the same thing in the lua script?

Thanks a lot.

-- F.Ulivi

Joined: Mar 2010
Posts: 153
S
Senior Member
Offline
Senior Member
S
Joined: Mar 2010
Posts: 153
A few questions regarding these compile options posted above:

Quote:
make -j5 TARGET=mess NOWERROR=1 USE_OPENGL=1 avx=1 USE_NETWORK=1 TOOLS=1

1) I assume "USE_OPENGL=1" isn't necessary for linux builds?
2) What does "avx=1" and "USE_NETWORK=1" do for the build?
3) Can someone confirm that it's sufficient to just use: make -j9 TARGET=mess for a build that maximizes the features of an x64 linux/haswell platform?

Thanks. The makefile itself isn't too descriptive about these compile options and I don't believe they're documented anywhere else atm.

Joined: Dec 2006
Posts: 531
M
Senior Member
Offline
Senior Member
M
Joined: Dec 2006
Posts: 531
Originally Posted By Shoegazer
A few questions regarding these compile options posted above:

Quote:
make -j5 TARGET=mess NOWERROR=1 USE_OPENGL=1 avx=1 USE_NETWORK=1 TOOLS=1

1) I assume "USE_OPENGL=1" isn't necessary for linux builds?
2) What does "avx=1" and "USE_NETWORK=1" do for the build?
3) Can someone confirm that it's sufficient to just use: make -j9 TARGET=mess for a build that maximizes the features of an x64 linux/haswell platform?


1) Nope. I don't believe it's necessary for win32 (non-SDL) builds either, now.
2) USE_NETWORK enables use of a tap/tun device (Linux) or pcap (Win32 or OS X) to create a network connection, allowing emulated systems to connect to your local network. Note that pcap can slow MESS down a fair bit when in use. Tap/tun devices do not though, so you should be fine there. I believe it is also now enabled by default. AVX, I think, allows for the binary to be optimised using that set of CPU instructions, only enable it if your CPU supports it.
3) Should do. 64-bit should be auto-detected.


- Barry Rodewald
Joined: Mar 2010
Posts: 153
S
Senior Member
Offline
Senior Member
S
Joined: Mar 2010
Posts: 153
Thanks, Barry. Now that you mention it, AVX is supported with Haswell (and a host of other CPUs). I guess I'll use that one, but I'm not sure if there are any other extensions I should turn on to squeeze out even more performance. It would be great if it could auto-detect the CPU and add the correct extensions automatically, but I'm sure there are reasons it doesn't or can't.

Joined: Aug 2001
Posts: 55
J
JL Offline
Member
Offline
Member
J
Joined: Aug 2001
Posts: 55
Hi,

I know messui is not supported and that qmc2 is recommended, but I have need to compile a new .161 messui. I am using the mame .161 source and the messui .161 source [http://messui.1emulation.com/]


I am unable to create the ui version:

my make command:
make -j7 TOOLS=1 Target=mess OSD=messui PTR64=1

Unsupported value 'winui' for OSD
stack traceback:
[C]: in function 'error'
C:/buildtools/src/mess/scripts/genie.lua:1087: in main chunk
[C]: in upvalue 'builtin_dofile'
[string "premake = { }..."]:67: in function 'dofile'
[string "_WORKING_DIR = os.getcwd()..."]:41: in function '_premake_main'
makefile:665: recipe for target 'build/projects/winui/mess/gmake-mingw64-gcc/Makefile' failed
make: *** [build/projects/winui/mess/gmake-mingw64-gcc/Makefile] Error 1


while unsupported here hoping someone will be kind enough to give me the correct command/syntax. Many thanks!

Last edited by JL; 05/19/15 11:40 PM.
Joined: Aug 2004
Posts: 1,444
Likes: 6
Very Senior Member
Offline
Very Senior Member
Joined: Aug 2004
Posts: 1,444
Likes: 6
I think 'Target' should be 'TARGET'.

Since you specified 'OSD=messui' i don't know why it says 'winui' is unsupported, since you didn't say 'winui'. Unfortunately, the rest of the error message is meaningless.

Also, I haven't tested if TOOLS=1 works, maybe you should leave it out and see if it makes any difference.

If it still doesn't work, I'd suggest to continue this on the official messui forum, as discussion of it is frowned upon here.

Joined: Aug 2001
Posts: 55
J
JL Offline
Member
Offline
Member
J
Joined: Aug 2001
Posts: 55
thanks robbbert
with TARGET in CAPS - I now get "C:/buildtools/src/mess/scripts/genie.lua:1087: Unsupported value 'messui' for OSD"


where is official mess forum?

Last edited by JL; 05/20/15 11:37 AM.
Joined: Jan 2006
Posts: 3,690
Very Senior Member
Offline
Very Senior Member
Joined: Jan 2006
Posts: 3,690
the official MESS forum is the one you are posting into... problem is that messui is not officially supported since a couple of years wink

Joined: Aug 2004
Posts: 1,444
Likes: 6
Very Senior Member
Offline
Very Senior Member
Joined: Aug 2004
Posts: 1,444
Likes: 6
Originally Posted By JL
thanks robbbert
with TARGET in CAPS - I now get "C:/buildtools/src/mess/scripts/genie.lua:1087: Unsupported value 'messui' for OSD"


where is official mess forum?


I assume you mean official messui forum...
http://www.1emulation.com/forums/forum/125-messui/
you'll need to register.

Joined: Aug 2012
Posts: 67
Member
Offline
Member
Joined: Aug 2012
Posts: 67
Getting the following error when I try to build from latest:

Code:
In file included from ../../../../../src/lib/formats/flopimg.c:18:0:
../../../../../src/emu/emu.h:65:22: fatal error: dimemory.h: No such file or directory
 #include "dimemory.h"
                      ^
compilation terminated.
formats.make:1144: recipe for target '../../../../mingw-gcc/obj/x64/Release/src/lib/formats/flopimg.o' failed
make[2]: *** [../../../../mingw-gcc/obj/x64/Release/src/lib/formats/flopimg.o] Error 1
makefile:28: recipe for target 'formats' failed


Any ideas?

Page 26 of 42 1 2 24 25 26 27 28 41 42

Link Copied to Clipboard
Who's Online Now
4 members (Revenant, gspat, R. Belmont, 1 invisible), 32 guests, and 3 robots.
Key: Admin, Global Mod, Mod
ShoutChat
Comment Guidelines: Do post respectful and insightful comments. Don't flame, hate, spam.
Forum Statistics
Forums9
Topics8,960
Posts117,773
Members5,001
Most Online890
Jan 17th, 2020
Forum Host
These forums are hosted by www.retrogamesformac.com
Forum hosted by www.retrogamesformac.com