|
Joined: Mar 2015
Posts: 65 Likes: 1
Member
|
Member
Joined: Mar 2015
Posts: 65 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 Likes: 1
Senior Member
|
Senior Member
Joined: Mar 2010
Posts: 153 Likes: 1 |
A few questions regarding these compile options posted above: 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: 534
Senior Member
|
Senior Member
Joined: Dec 2006
Posts: 534 |
A few questions regarding these compile options posted above: 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 Likes: 1
Senior Member
|
Senior Member
Joined: Mar 2010
Posts: 153 Likes: 1 |
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
Member
|
Member
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,458 Likes: 9
Very Senior Member
|
Very Senior Member
Joined: Aug 2004
Posts: 1,458 Likes: 9 |
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
Member
|
Member
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
|
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 
|
|
|
|
Joined: Aug 2004
Posts: 1,458 Likes: 9
Very Senior Member
|
Very Senior Member
Joined: Aug 2004
Posts: 1,458 Likes: 9 |
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: 74
Member
|
Member
Joined: Aug 2012
Posts: 74 |
Getting the following error when I try to build from latest: 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?
|
|
|
Forums9
Topics9,189
Posts120,324
Members5,044
|
Most Online1,283 Dec 21st, 2022
|
|
These forums are sponsored by Superior Solitaire, an ad-free card game collection for macOS and iOS. Download it today!
|
|
|
|