Help Monkey-X Studio configuration MAKE not found

Monkey Forums/Monkey Beginners/Help Monkey-X Studio configuration MAKE not found

Hero(Posted 2015) [#1]
Hi,

I just installed the monkey-x studio package and followed the instructions to the best of my abilities in order to get the desktop compiler running.

After installaing mingw and trying to compile, I get the following error:

TRANS monkey compiler V1.85
Parsing...
Semanting...
Translating...
Building...
Der Befehl "make" ist entweder falsch geschrieben oder
konnte nicht gefunden werden.
TRANS FAILED: Error executing 'make CCOPTS=" -O0" OUT="Debug/MonkeyGame"', return code=1
Abnormal program termination.
 Exit code: -1



ImmutableOctet(SKNG)(Posted 2015) [#2]
You'll need to set the 'MINGW_PATH' variable in "config.winnt.txt" (Found in the build folder). It should point to the main directory for MinGW (Not the MinGW binaries folder).


Hero(Posted 2015) [#3]
Thanks. I had it set to the bin directory.

However, now i get an error related to the open al library being incompatible. Also tried reinstalling it using the jungle ide. Installations said "Installation complete".

TRANS monkey compiler V1.85
Parsing...
Semanting...
Translating...
Building...
g++ -O0 -Wno-free-nonheap-object -I../glfw3/include -I../glfw3/src -I../openal/include -I../stb -I../zlib-1.2.8 -I../lpng1610  -c -o build/Debug/main.o ../main.cpp
g++ -Wl,--subsystem,windows -L../openal/libs/Win32 -L../openal/libs/Win64 -o Debug/MonkeyGame build/Debug/context.o build/Debug/init.o build/Debug/input.o build/Debug/monitor.o build/Debug/wgl_context.o build/Debug/win32_init.o build/Debug/win32_monitor.o build/Debug/win32_time.o build/Debug/win32_tls.o build/Debug/win32_window.o build/Debug/window.o build/Debug/winmm_joystick.o build/Debug/stb_vorbis.o build/Debug/stb_image.o build/Debug/main.o -lcomdlg32 -lgdi32 -lopengl32 -lOpenAL32 -lws2_32
C:/TDM-GCC-64/bin/../lib/gcc/x86_64-w64-mingw32/5.1.0/../../../../x86_64-w64-mingw32/bin/ld.exe: skipping incompatible ../openal/libs/Win32/OpenAL32.lib when searching for -lOpenAL32
../openal/libs/Win64/OpenAL32.lib: error adding symbols: File in wrong format
collect2.exe: error: ld returned 1 exit status
Makefile:49: recipe for target 'Debug/MonkeyGame' failed



ImmutableOctet(SKNG)(Posted 2015) [#4]
If the below methods do not work, you might not have a build that's capable of building 32-bit binaries (Or at least ABI compatible binaries). The version hosted on this website (And referenced in the documentation) can be found here. That's an older version of MinGW/TDM-GCC, but it'll likely work.

From the look of it, you're building an x64 binary. You'll want to build for x86. If I'm understanding the output correctly, the version of MinGW you got supports x64 builds, and uses it by default. You have a few choices: If there's a normal x86 binaries-folder ("mw32", "x86", something to that effect), you can use that. Otherwise, you'll have to either edit the make-files in the "targets" directories (And delete your old build-folder, so it gets updated upon rebuilding), or you'll need to get a different version of MinGW.

To edit the make-file(s) to build for x86 instead, you can use "-m32" at the beginning of the "targets/glfw3/template/gcc_winnt/Makefile" (Or similar; depends on the target) file's 'LDFLAGS' variable. This method may or may not work.

Something like this:



Also, the OpenAL library file is separate from the OpenAL DLL. For more information on OpenAL, this thread may help.


Hero(Posted 2015) [#5]
Hi,

Thanks for your support.

Yes, the MinGW installer asked if i wanted to install only 32 bit or 32 and 64 bit support. I choose the later because I want to be able to build both 32 and 64 bit versions in the case that future cpu's drop support for 32 bit executables.

If i understand your answer correctly, the issue is that mingw tries to build a 64 bit binary, and in the process only finds a 32 bit open al library.

So in case i get this right what i need to do is:

a) make sure i also have the 64 bit open al library available
b) find out how i can tell the IDE if i want to build a 32 or a 64 bit version

?


ziggy(Posted 2015) [#6]
@Hero: Best way is to use 32 bits of MinGW. If you want to get it working, modify your config path to point to wherever your Jungle Ide MinGW installation was done and nowhere else, and you should be good to go.


Hero(Posted 2015) [#7]
Hi,

thanks for your advice, but what do I have to do in order to build 64 bit executable aswell?

Is it easier to use the Microsoft compiler? I just want to make sure that my games are future proof..

Thanks


ziggy(Posted 2015) [#8]
I'm not sure Monkey X has built-in support for 64 bits, but it should not be too complicated to tweak it to compile for 64 bits. I haven't tried it myself, so not sure what should be done here. I *think* it's already using 64 bits on MacOs, so it should be very easy to add.


Hero(Posted 2015) [#9]
I see. Thank you. I was under the impression, that Monkey X was already able to build for 32 and 64 bit on the Windows Platform.

So for now i will follow your advice and use the 32 bit only MinGW.

Thanks again for your help in clarifying this for me.


Hero(Posted 2015) [#10]
OK,

so i have another beginner question. I changed the window height and width aswell as the title text in the CONFIG file inside this folder:

C:\Users\Hero\Documents\Monkey X Studio\MonkeyX\MonkeyXPro84c\targets\glfw3\template

But when i build to the GLFW3 target the window is still 640x480 and still has Monkey Game in the title.

#GLFW_USE_MINGW=True

#GLFW_WINDOW_TITLE="_Monkey Game"
#GLFW_WINDOW_WIDTH=1024
#GLFW_WINDOW_HEIGHT=768
#GLFW_WINDOW_SAMPLES=0
#GLFW_WINDOW_RESIZABLE=False
#GLFW_WINDOW_DECORATED=True
#GLFW_WINDOW_FLOATING=False
#GLFW_WINDOW_FULLSCREEN=False



ImmutableOctet(SKNG)(Posted 2015) [#11]
The target-templates' configuration files are for default settings. If you delete your build folder, then it will re-copy the template(s) from the "targets" folder, and you will see the change. For something like this, though, you're better changing these things per-project. The "CONFIG.monkey" file is just another file, it's just auto-imported. So, you can put those preprocessor settings wherever you like. You can also edit your current "CONFIG" file, but it's usually best to make your own file for your project. To do this, just make another file with the contents you posted, then import that file in your build-file. As long as it's at/toward the beginning of your project's import-tree, then it should work. You can even put those settings in your build-file.


Hero(Posted 2015) [#12]
Oh, I see.

Thank you.