zget auto compile works, but manual doesn't?

Strictly for discussing ZSNES development and for submitting code. You can also join us on IRC at irc.libera.chat in #zsnes.
Please, no requests here.

Moderator: ZSNES Mods

Post Reply
EmuGuru
New Member
Posts: 8
Joined: Sun Feb 04, 2007 1:42 am
Location: Muncie, IN
Contact:

zget auto compile works, but manual doesn't?

Post by EmuGuru »

Code: Select all

C:\code\zsnes\src>make -f makefile.ms PLATFORM=win32 clean

C:\code\zsnes\src>make -f makefile.ms PLATFORM=win32
g++ -O3 -s -o parsegen.exe parsegen.cpp -lz
g++: installation problem, cannot exec `cc1plus': No such file or directory
make: *** [parsegen.exe] Error 1

Interesting.... sooo.... I try this, using the same little installation of MinGW...

Code: Select all

C:\code\zget>zget
Welcome to ZGet v4.2

Found GCC in "c:\MinGW". checking for validity...
Found ZSNES MinGW compiler in "c:\MinGW\" !!
Would you like to be able to make DOS builds of ZSNES? (y/N): n
Update ZSNES source? (y/N): y
Update to a particular revision? (y/N): n
At revision 4569.
Download/Update ZSNES documentation? (y/N): n
Create/Update changelog.txt? (y/N): n
Compile for you? (y/N): y
Clean out object files from previous ZSNES builds first? (y/N): y

Note: Answering yes to the following question can make the compile
      process take an hour (1 GHz CPU) or more depending on your PC.

Use release grade optimization? (y/N): n
Optimize ZSNES build for your CPU's architecture? (y/N): y
CPU Architecture detected as: "athlon-xp"
g++ -O3 -s -o parsegen.exe parsegen.cpp -lz
gcc -O3 -march=athlon-xp -ffast-math -fomit-frame-pointer -fno-unroll-loops -Wall -Wno-unused -I. -D__WIN32__ -o chips/dsp1emu.obj -c chips/dsp1emu.c
nasm -O1  -f win32 -D__WIN32__ -o chips/fxemu2.obj chips/fxemu2.asm
objfix chips/fxemu2.obj
nasm -O1  -f win32 -D__WIN32__ -o chips/sfxproc.obj chips/sfxproc.asm
objfix chips/sfxproc.obj
nasm -O1  -f win32 -D__WIN32__ -o chips/fxemu2b.obj chips/fxemu2b.asm objfix chips/fxemu2b.obj

etc....


So, anyone know why it works fine when called from zget but not manually? I have tried reinstalling the MinGW several times, tested a couple different versions of g++, nothing, it all crashes when using manual commands, and it all works using zget... oh and yes, i made sure the darn thing is in my path. Anyway, any insight would help a lot, thanks :)
Last edited by EmuGuru on Sun Feb 04, 2007 2:58 am, edited 1 time in total.
Deathlike2
ZSNES Developer
ZSNES Developer
Posts: 6747
Joined: Tue Dec 28, 2004 6:47 am

Post by Deathlike2 »

It's simple, you need to set the proper path for MinGW. (eg. C:\MinGW\bin)
Continuing [url=http://slickproductions.org/forum/index.php?board=13.0]FF4[/url] Research...
EmuGuru
New Member
Posts: 8
Joined: Sun Feb 04, 2007 1:42 am
Location: Muncie, IN
Contact:

Post by EmuGuru »

Deathlike2 wrote:It's simple, you need to set the proper path for MinGW. (eg. C:\MinGW\bin)
bah! it's there, perfect and all, otherwise, g++ wouldn't throw me an error about installation, it would simply say "command or file not found" for make and g++. that was my first thought too, this is driving me nuts!

Code: Select all

C:\code>path
PATH=C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Program Files\ATI Technologies\ATI.ACE\Core-Static;C:\Applications\Coding\svn-win32-1.4.3\bin;C:\MinGW\bin
C:\code>
Deathlike2
ZSNES Developer
ZSNES Developer
Posts: 6747
Joined: Tue Dec 28, 2004 6:47 am

Post by Deathlike2 »

You put it in at the front, not at the back. Your issue is occuring simply because there is a cutoff point when the path gets ridiculously too long.
Continuing [url=http://slickproductions.org/forum/index.php?board=13.0]FF4[/url] Research...
EmuGuru
New Member
Posts: 8
Joined: Sun Feb 04, 2007 1:42 am
Location: Muncie, IN
Contact:

Post by EmuGuru »

Well, that does make some sense, I've had other "path" dependent apps fail because of long paths, so I fixed that issue, and inadvertantly removed the ati shit, been meaning to for a while, anyway, then i get this.... what is so strange is that it works fine inside of zget, which should be calling the exact same line as me.... weird. in linux I know there is a .conf file that can be checked to make sure that cc1plus is in the internal path of MinGW, but i don't know about the win32 port of MinGW.

Code: Select all

C:\code>path
PATH=C:\MinGW\bin;C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem

C:\code>cd zsnes\src

C:\code\zsnes\src>make -f makefile.ms PLATFORM=win32
g++ -O3 -s -o parsegen.exe parsegen.cpp -lz
g++: installation problem, cannot exec `cc1plus': No such file or directory
make: *** [parsegen.exe] Error 1

C:\code\zsnes\src>
Clements
Randomness
Posts: 1172
Joined: Wed Jul 28, 2004 4:01 pm
Location: UK
Contact:

Post by Clements »

I use zget's MinGW bundle installed at C:\MinGW.

I am easily able to compile a fresh ZSNES by creating and executing a bat file in the src directory with the contents:

Code: Select all

set path=C:\MinGW\bin
make -f makefile.ms PLATFORM=win32 clean
make -f makefile.ms PLATFORM=win32
EmuGuru
New Member
Posts: 8
Joined: Sun Feb 04, 2007 1:42 am
Location: Muncie, IN
Contact:

Post by EmuGuru »

As do I, using the ZGet's bundle for MinGW is much simpler to me than setting it all up myself. When in Linux, I like actually setting the stuff up properly, but in Windows, I don't particularly like messing with it. At any rate, I am currently using ZGet to re-get the MinGW bundle, I will test again, and I like that .bat file ^_^ I was using one very similar to that one... till this morning grrrrr lol

edit::
Ok, I re downloaded and installed the mingw bundle using zget, still, it compiles fine in zget, not manually though, i'm gonna be ticked if it's something really simple lol
EmuGuru
New Member
Posts: 8
Joined: Sun Feb 04, 2007 1:42 am
Location: Muncie, IN
Contact:

Post by EmuGuru »

Here's something interesting, I might have fixed the problem temporarily, but still not permanently. changing the path from

Code: Select all

C:\MinGW\bin;
to

Code: Select all

C:\MinGW\bin;C:\MinGW\libexec\gcc\mingw32\3.4.5;
allows zsnes to compile just fine it seems (well other than the fact that right now, the dsp code is getting worked on). Still, it seems to me that this is a cheating way to make it work, since the libexec should be found by g++ to begin with, anyone know if there is a config file in the win32 version of MinGW that sets this variable? or is it hardcoded into the .exe's?
Last edited by EmuGuru on Sun Feb 04, 2007 5:49 pm, edited 1 time in total.
Deathlike2
ZSNES Developer
ZSNES Developer
Posts: 6747
Joined: Tue Dec 28, 2004 6:47 am

Post by Deathlike2 »

Do you happen to use Vista? That is the only thing you have failed to mention (the OS).
Continuing [url=http://slickproductions.org/forum/index.php?board=13.0]FF4[/url] Research...
EmuGuru
New Member
Posts: 8
Joined: Sun Feb 04, 2007 1:42 am
Location: Muncie, IN
Contact:

Post by EmuGuru »

Sorry, yes, and no. I do run Vista, but currently I quad boot

Windows Vista
Windows XP Pro
Mandrake Linux 10.1
SimplyMEPIS 6.0.1

I use Vista as my main system, but also use Windows XP Pro. I am trying to compile in XP and Vista, and both throw the same error.
EmuGuru
New Member
Posts: 8
Joined: Sun Feb 04, 2007 1:42 am
Location: Muncie, IN
Contact:

Post by EmuGuru »

Update: fyi for anyone who cares, the mentioned path above is working like a charm. I am compiling like normal now with both the paths set, weird. anyway thanks for the time and info guys.
franpa
Gecko snack
Posts: 2374
Joined: Sun Aug 21, 2005 11:06 am
Location: Australia, QLD
Contact:

Post by franpa »

EmuGuru wrote:Here's something interesting, I might have fixed the problem temporarily, but still not permanently. changing the path from

C:\MinGW\bin;C:\MinGW\libexec\gcc\mingw32\3.4.5;

to

C:\MinGW\bin;C:\MinGW\libexec\gcc\mingw32\3.4.5;

allows zsnes to compile just fine it seems (well other than the fact that right now, the dsp code is getting worked on). Still, it seems to me that this is a cheating way to make it work, since the libexec should be found by g++ to begin with, anyone know if there is a config file in the win32 version of MinGW that sets this variable? or is it hardcoded into the .exe's?
so changing it to what it already was fixed it? theres no difference at all between the 2.
Core i7 920 @ 2.66GHZ | ASUS P6T Motherboard | 8GB DDR3 1600 RAM | Gigabyte Geforce 760 4GB | Windows 10 Pro x64
EmuGuru
New Member
Posts: 8
Joined: Sun Feb 04, 2007 1:42 am
Location: Muncie, IN
Contact:

Post by EmuGuru »

oops, sorry, it was

Code: Select all

C:\MinGW\bin;
to

Code: Select all

C:\MinGW\bin;C:\MinGW\libexec\gcc\mingw32\3.4.5;
Post Reply