ENIGMA Forums

Outsourcing saves money => Issues Help Desk => Topic started by: Craven on December 24, 2014, 01:00:54 am

Title: Build options appear grayed out on Windows XP [SOLVED]
Post by: Craven on December 24, 2014, 01:00:54 am
The title says everything :eng99: (note: the old title was "I'm a noob and I can't build a project ")

I recently installed the Windows version of ENIGMA on a Windows XP virtual machine over Linux (I can't install it on the Linux machine right now).

When I try to build a project, the options are all greyed out :/. I tried to load gcc.ey, but that didn't do anything. I searched on the forums and  :google:, but didn't find anything about this issue  :ohdear:

(https://38.media.tumblr.com/3abce57ab788348945407ec704295d55/tumblr_nh2ogqLV5F1qhf3azo1_1280.png) (https://38.media.tumblr.com/3abce57ab788348945407ec704295d55/tumblr_nh2ogqLV5F1qhf3azo1_1280.png)

I'm using LateralGM GUI Version: 1.8.6.831.
Title: Re: I'm a noob and I can't build a project
Post by: Goombert on December 24, 2014, 03:04:18 am
Howdy Craven, I would love to see if I can offer any insight, but first I need you to answer a few questions.  :)

Was any error message displayed when you started the program?
Did you install using the Portable ZIP?
Where did you extract the ZIP to, by which I mean the exact file path?

Also, please copy the contents of enigma-dev/output_log.txt to http://www.pastebin.com or http://www.pastie.org and copy the link into your reply.
Title: Re: I'm a noob and I can't build a project
Post by: TheExDeus on December 24, 2014, 10:00:17 am
That grayed out options thing usually means that the .dll (compileEGMf.dll) didn't compile or if it did, then it is out of date. I'll try a fresh install from portable zip.
Title: Re: I'm a noob and I can't build a project
Post by: Craven on December 24, 2014, 04:05:18 pm
Howdy Craven, I would love to see if I can offer any insight, but first I need you to answer a few questions.  :)

Was any error message displayed when you started the program?
Did you install using the Portable ZIP?
Where did you extract the ZIP to, by which I mean the exact file path?

Also, please copy the contents of enigma-dev/output_log.txt to http://www.pastebin.com or http://www.pastie.org and copy the link into your reply.

1.- No, no error message during the whole session.
2.- I used the "ENIGMA Portable.exe" file on the first link http://enigma-dev.org/docs/Wiki/Install:Windows
3.- On my last try, I extracted the content in E:\Idioteces\AAAH\enigma\ (so, all the content is located in E:\Idioteces\AAAH\enigma\ENIGMA).


That grayed out options thing usually means that the .dll (compileEGMf.dll) didn't compile or if it did, then it is out of date. I'll try a fresh install from portable zip.

I installed it yesterday :c It took a lot for installing all the files (It says installing, but I guess is just uncompressing).

====

Thank you both!!  :) :)
Title: Re: I'm a noob and I can't build a project
Post by: egofree on December 24, 2014, 05:32:33 pm
The first time you run Enigma, you have a window which shows some process running. (Window process). You have to wait a little bit that this window closes before you can run a project. Perhaps that's the problem ? This happens only the first time you start Enigma.
Title: Re: I'm a noob and I can't build a project
Post by: Craven on December 24, 2014, 07:43:49 pm
The first time you run Enigma, you have a window which shows some process running. (Window process). You have to wait a little bit that this window closes before you can run a project. Perhaps that's the problem ? This happens only the first time you start Enigma.

I did this and then....

Was any error message displayed when you started the program?

Yes, now I had two errors:


(https://38.media.tumblr.com/ab57063edbe6e803c77f5857cc0801ef/tumblr_nh44cryzX31qhf3azo1_1280.png) (https://38.media.tumblr.com/ab57063edbe6e803c77f5857cc0801ef/tumblr_nh44cryzX31qhf3azo1_1280.png)



The Log file : http://pastebin.com/dWgqubW2

Apparently, I have problems with the environment variables... I'll try to fix it by myself, but I accept suggestions.


Thank you so much and I wish you a merry Xmas!!!!!!
Title: Re: I'm a noob and I can't build a project
Post by: Goombert on December 24, 2014, 09:08:17 pm
Oh no I know what's wrong Craven, and I can tell you how to fix it, I forgot we have to patch the compiler config for XP because ProgramData was added in Vista.

Open this file and change the following line.
https://github.com/enigma-dev/enigma-dev/blob/master/settings.ey#L49

Make it the following.
Code: (YAML) [Select]
        Default-Windows: "C:/ProgramData/ENIGMA/"Also make sure the ProgramData folder exists on C: or whatever root drive you have, if it does not, please create it, the ENIGMA folder inside of it as well.

After you change that go ahead and launch enigma.exe again and everything should work.

I followed the same steps that fixed ENIGMA on XP from the following topics.
http://enigma-dev.org/forums/index.php?topic=2118.msg20928#msg20928
http://enigma-dev.org/forums/index.php?topic=2135.msg21104#msg21104
Title: Re: I'm a noob and I can't build a project
Post by: Craven on December 25, 2014, 12:48:51 am
@Robert B Colton

Thank you, you're an awesome human being *0*. It worked!

Now I have another problem, but I guess I should open a new thread for it (when I try to build the game -Catch The Clown- I get errors likes Unknown function or script `draw_sprite' or Unknown function or script `make_color_rgb'...something with libraries/DLLs maybe?).
Title: Re: I'm a noob and I can't build a project
Post by: Goombert on December 25, 2014, 12:52:41 am
Wow that's really weird, can you check to make sure that compileEGMf.dll exists?

If it does not open git-bash.exe and enter the command "rebuildcompiler" and let it finish before starting enigma.exe and trying to build again.

If it still does not work, try building another game such as this one because I know it works on the latest version.
http://enigma-dev.org/edc/games.php?game=68

Also, you did make sure that C:/ was replaced with your root drive didn't you? What is your root drive on that Virtual Machine? Usually most of the time the main hard drive is C: but sometimes it's D: and sometimes something else.
Title: Re: I'm a noob and I can't build a project
Post by: Craven on December 25, 2014, 12:59:17 am
Wow that's really weird, can you check to make sure that compileEGMf.dll exists?

If it does not open git-bash.exe and enter the command "rebuildcompiler" and let it finish before starting enigma.exe and trying to build again.

If it still does not work, try building another game such as this one because I know it works on the latest version.
http://enigma-dev.org/edc/games.php?game=68

Also, you did make sure that C:/ was replaced with your root drive didn't you? What is your root drive on that Virtual Machine? Usually most of the time the main hard drive is C: but sometimes it's D: and sometimes something else.

That dll exists, but I'm rebuilding just in case (it's happening right now).
When you talk about C:\ drive... with root do you mean the root of the OS? (where the boot files and Windows folder is located) or the drive of ENIGMA? (I installed ENIGMA on a secondary drive: DRIVE E:\).
Title: Re: I'm a noob and I can't build a project
Post by: Goombert on December 25, 2014, 01:01:53 am
Oh well that's your problem right there I can guarantee it. Try copying the ENIGMA folder off E: and all to the desktop on C:
Title: Re: I'm a noob and I can't build a project
Post by: Craven on December 25, 2014, 01:17:09 am
Oh well that's your problem right there I can guarantee it. Try copying the ENIGMA folder off E: and all to the desktop on C:

It didn't work, I run Enigma.exe from C:\Documents and Settings\~USERNAME~\Escritorio\ENIGMA and the compiler still doesn't know what "make_color_rgb" is. Maybe it is deprecated? (I don't program with game maker since 3 years ago, so I don't remember too much about the language).

=EDIT=

These is all the functions listed by lateralGM: http://pastebin.com/CSiFbM8x

=EDIT 2=

By the way, Mario Isometric compilation fails because of "place_meeting" is an unknown function.
Title: Re: I'm a noob and I can't build a project
Post by: Goombert on December 25, 2014, 01:34:03 am
Wow that's really weird, so make_color_rgb does not appear in the function list at all? When I type it in I get the correct results, and no it is not deprecated we implement the function in our graphics system.

Code: [Select]
make_color : inline int make_color(unsigned char r, unsigned char g, unsigned char b);
make_color_hsv : int make_color_hsv(int hue, int saturation, int value);
make_color_rgb : int make_color_rgb(unsigned char red, unsigned char green, unsigned char blue);
make_color_rgba : int make_color_rgba(unsigned char red, unsigned char green, unsigned char blue, unsigned char alpha);

Since we fixed the error messages can you paste a new copy of enigma-dev/output_log.txt? Compile or attempt to compile the game first and then close LateralGM before you copy the output_log.txt too, that will give me the full compiler output.

Again this is super strange we've never had an issue like this where only some functions are missing.
Title: Re: I'm a noob and I can't build a project
Post by: Craven on December 25, 2014, 01:39:22 am
I guess I could try using it from a windows 7 machine I have, but I must admit I'm kinda intrigued about why is failing xD.

This is my log... http://pastebin.com/JjaZUPKL
Title: Re: I'm a noob and I can't build a project
Post by: Goombert on December 25, 2014, 01:46:06 am
Craven did you update settings.ey? It's still loading the old value.
Code: [Select]
ERROR! Failed to create make directory, path not found: "%PROGRAMDATA%/ENIGMA/"
Make directory is: "%PROGRAMDATA%/ENIGMA/"
Setting up IDE editables...
%e-yaml
---
treat-literals-as: 0
inherit-equivalence-from: 0
make-directory: "C:/ProgramData/ENIGMA/"

Copy and paste the contents of settings.ey so I can see if you updated it properly. Also make sure that you create the C:/ProgramData/ENIGMA path space if the folders do not exist.
Title: Re: I'm a noob and I can't build a project
Post by: Craven on December 25, 2014, 01:58:45 am
Craven did you update settings.ey? It's still loading the old value.

...

Copy and paste the contents of settings.ey so I can see if you updated it properly. Also make sure that you create the C:/ProgramData/ENIGMA path space if the folders do not exist.


Yeah... I was looking at that, this is my settings.ey: http://pastebin.com/KrT3RVrf

I searched the string "%PROGRAMDATA%" recursively in all the files inside enigma-dev with findstr /spin /c:"%PROGRAMDATA%" * . This is the result:

Code: [Select]
CommandLine\programs\emake\main.cpp:1152:    "make-directory: \"%PROGRAMDATA%/ENIGMA/\"\n"
CompilerSource\settings-parse\parse_ide_settings.cpp:146:  make_directory = "%PROGRAMDATA%/ENIGMA/";
output_log.txt:69:ERROR! Failed to create make directory, path not found: "%PROGRAMDATA%/ENIGMA/"
output_log.txt:70:Make directory is: "%PROGRAMDATA%/ENIGMA/"

Maybe those hardcoded cpp have something to do with this?
Title: Re: I'm a noob and I can't build a project
Post by: Goombert on December 25, 2014, 02:05:09 am
Yes it does, because this setting is not honored cross-platform sorlok disabled it but it looks like he also disabled the settings file altogether.

Just change it manually in the file
CompilerSource\settings-parse\parse_ide_settings.cpp:146:  make_directory = "%PROGRAMDATA%/ENIGMA/";

You won't need the CLI, so just change that one line then launch ENIGMA again and then everything should finally work.
Title: Re: I'm a noob and I can't build a project
Post by: Craven on December 25, 2014, 02:18:28 am
I think it did the trick, now is compiling and taking a lot of time, so I guess it isn't halting anymore. Thank you so much, I couldn't figure out this so fast as you did.  :D :D :D
Title: Re: I'm a noob and I can't build a project
Post by: Goombert on December 25, 2014, 02:27:12 am
Excellent, it's taking longer than expected because this is your first setup and it has to at least compile the whole engine once. You won't have to go through that again unless you change any of the source files or download an updated portable ZIP. At any rate I am glad we got this resolved, if you have any other issues let us know!  (Y)
Title: Re: I'm a noob and I can't build a project
Post by: egofree on December 25, 2014, 04:51:13 am
For the progress window, i wonder if we should not make it a modal window. I think new enigma users are sometimes confused by the first setup and don't see that some processes are running. With a modal window, it would be clearer.
Title: Re: I'm a noob and I can't build a project
Post by: Goombert on December 25, 2014, 06:00:47 am
egofree, you must have not seen my GitHub issues, I am actually planning something similar, I would like feedback, you should post on the tracker.
https://github.com/IsmAvatar/LateralGM/issues/150

Though do not get hasty and try finishing this feature, it requires a lot of work in the plugin and should be thoroughly discussed first, plus we have more important things to do. Also this is what that vertical splitter you asked about was really hiding.
Title: Re: I'm a noob and I can't build a project
Post by: Josh @ Dreamland on December 25, 2014, 09:30:42 am
Well, that's a little scary. I might ask you to explain the rationale behind that hard coding, later, Robert.
Title: Re: Build options appear grayed out on Windows XP [SOLVED]
Post by: Craven on December 25, 2014, 10:04:46 am
I changed the title in the hope of it will be more useful this way for other users in the future. Thanks again for everything!
Title: Re: Build options appear grayed out on Windows XP [SOLVED]
Post by: TheExDeus on December 25, 2014, 11:59:54 am
Josh, it was not hard-coded before and I personally liked it that way, but sorlok changed it because of some crosscompiling stuff or because of mac/linux which made him change it every time he opened LGM or something. He didn't like it so he removed it. I vote for bringing it back, but making it an LGM option that is saved, so you must do it only once. I think now it is saved in EGM (or if GMK is loaded then it goes back to default) which caused the problems he was having.
Title: Re: Build options appear grayed out on Windows XP [SOLVED]
Post by: Josh @ Dreamland on December 25, 2014, 03:41:36 pm
I don't understand the difference between hard-coding it and changing it in the config files, except for the former requires recompilation and so is less desirable. What is the difference in behavior? If it's a problem with differentiate between host platform and target platform when choosing settings. If that's the case, we need to update the configuration file's schema to support both behaviors. We should also find a way to override settings in a way that gitignore can help prevent being committed, if his changes are not good for everyone.
Title: Re: Build options appear grayed out on Windows XP [SOLVED]
Post by: Goombert on December 25, 2014, 03:43:33 pm
Quote from: TheExDeus
Josh, it was not hard-coded before and I personally liked it that way, but sorlok changed it because of some crosscompiling stuff or because of mac/linux which made him change it every time he opened LGM or something.
Yes, but it was more so because my first implementation was a little obnoxious and made it hard to share EGM's because if you put one up on the EDC it will have the Windows default make-dir stored in it and when someone opens any EGM on Mac or Linux or vice versa they automatically have to go and change it before they can build and they may not know what it is, this is clearly not user friendly and sorlok was correct.
https://github.com/enigma-dev/enigma-dev/issues/805

Quote from: TheExDeus
I vote for bringing it back, but making it an LGM option that is saved, so you must do it only once.
I had actually considered doing that as well and making it a global compiler preference, currently ENIGMA has no implementation/system for global compiler preferences.

Quote from: JoshDreamland
What is the difference in behavior? If it's a problem with differentiate between host platform and target platform when choosing settings. If that's the case, we need to update the configuration file's schema to support both behaviors.
Actually, I have already updated our eyaml specification to allow defaults for specific platforms.
https://github.com/enigma-dev/enigma-dev/blob/master/settings.ey#L49

Quote from: JoshDreamland
We should also find a way to override settings in a way that gitignore can help prevent being committed, if his changes are not good for everyone.
I actually agreed to merging this because after I had added make-dir as a setting to the compiler TheExDeus specifically had problems with sharing EGM's and it made the EGM sort of unusable on the site for sharing.

The whole reason I implemented make-dir as a setting originally was to be like the Qt Framework IDE where when you open a project and if no compiler settings are detected it will ask you to configure the defaults and save them, which can change based on platform, such as where to output the project to. Perhaps we could just undo sorloks pull request and store Default-Windows as Default-Windows in the EGM instead of simply storing Default-Windows, Default-Mac, and Default-Linux all as the same variable so that the ENIGMA settings remembers what the user had selected on each platform instead of using the same on all platforms. So in other words, if you entered the setting on Linux and open the EGM on Windows it will show the default make-dir instead of the one you saved on/for Linux.

If you want to do it that way, someone just needs to undo sorlok's pull request and then make a few slight modifications to the plugin.
Title: Re: Build options appear grayed out on Windows XP [SOLVED]
Post by: TheExDeus on December 25, 2014, 06:17:37 pm
It seems the problem was just that make-dir was saved in EGM. That is not a project specific thing, but the environments. It's like saving the LGM theme in EGM. I think we just need to make it how it was before, but not save it inside EGM, but instead save it in LGM/ENIGMA specific config.