Pages: « 1 2
  Print  
Author Topic: enigma can't find 'make'  (Read 4180 times)
Offline (Male) Josh @ Dreamland
Reply #15 Posted on: July 05, 2011, 10:16:11 PM

Prince of all Goldfish
Developer
Location: Pittsburgh, PA, USA
Joined: Feb 2008
Posts: 2949

View Profile Email
HaRRi: Make sure you rebuild the DLL. I corrected that dog shit problem in 798; the same revision that introduced it.
As for the exception, that's greek to me.

Dom: I'll have IsmAvatar print the SVN revision number; in the meantime, does a blank game work? A game with just one room? A game with a room and an object with/without a sprite? 799 had a problem with objects that don't have sprites.
Logged
"That is the single most cryptic piece of code I have ever seen." -Master PobbleWobble
"I disapprove of what you say, but I will defend to the death your right to say it." -Evelyn Beatrice Hall, Friends of Voltaire
Offline (Unknown gender) TheExDeus
Reply #16 Posted on: July 06, 2011, 06:12:37 AM

Developer
Joined: Apr 2008
Posts: 1860

View Profile
Ok, I rebuild the dll (I thought Rebuild All did it..) with C::B and now that doesn't show. Thou the exception still happens and so I can't run any project. When I do ENIGMA>Run nothing happens and it trows this into the ENIGMA console:
Quote
Exception in thread "AWT-EventQueue-0" java.lang.NullPointerException
        at org.enigma.EnigmaRunner.compile(EnigmaRunner.java:519)
        at org.enigma.EnigmaRunner.actionPerformed(EnigmaRunner.java:590)
        at javax.swing.AbstractButton.fireActionPerformed(Unknown Source)
        at javax.swing.AbstractButton$Handler.actionPerformed(Unknown Source)
        at javax.swing.DefaultButtonModel.fireActionPerformed(Unknown Source)
        at javax.swing.DefaultButtonModel.setPressed(Unknown Source)
        at javax.swing.AbstractButton.doClick(Unknown Source)
        at javax.swing.plaf.basic.BasicMenuItemUI.doClick(Unknown Source)
        at javax.swing.plaf.basic.BasicMenuItemUI$Handler.mouseReleased(Unknown
Source)
        at java.awt.Component.processMouseEvent(Unknown Source)
        at javax.swing.JComponent.processMouseEvent(Unknown Source)
        at java.awt.Component.processEvent(Unknown Source)
        at java.awt.Container.processEvent(Unknown Source)
        at java.awt.Component.dispatchEventImpl(Unknown Source)
        at java.awt.Container.dispatchEventImpl(Unknown Source)
        at java.awt.Component.dispatchEvent(Unknown Source)
        at java.awt.LightweightDispatcher.retargetMouseEvent(Unknown Source)
        at java.awt.LightweightDispatcher.processMouseEvent(Unknown Source)
        at java.awt.LightweightDispatcher.dispatchEvent(Unknown Source)
        at java.awt.Container.dispatchEventImpl(Unknown Source)
        at java.awt.Window.dispatchEventImpl(Unknown Source)
        at java.awt.Component.dispatchEvent(Unknown Source)
        at java.awt.EventQueue.dispatchEventImpl(Unknown Source)
        at java.awt.EventQueue.access$000(Unknown Source)
        at java.awt.EventQueue$1.run(Unknown Source)
        at java.awt.EventQueue$1.run(Unknown Source)
        at java.security.AccessController.doPrivileged(Native Method)
        at java.security.AccessControlContext$1.doIntersectionPrivilege(Unknown
Source)
        at java.security.AccessControlContext$1.doIntersectionPrivilege(Unknown
Source)
        at java.awt.EventQueue$2.run(Unknown Source)
        at java.awt.EventQueue$2.run(Unknown Source)
        at java.security.AccessController.doPrivileged(Native Method)
        at java.security.AccessControlContext$1.doIntersectionPrivilege(Unknown
Source)
        at java.awt.EventQueue.dispatchEvent(Unknown Source)
        at java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source)
        at java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
        at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
        at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
        at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
        at java.awt.EventDispatchThread.run(Unknown Source)

edit: Also, Java has the funniest error reporting I have ever seen. Just look at that thing. :D
« Last Edit: July 06, 2011, 06:15:16 AM by HaRRiKiRi » Logged
Offline (Unknown gender) Dom83
Reply #17 Posted on: July 06, 2011, 08:44:23 AM
Member
Joined: Aug 2008
Posts: 11

View Profile Email

Whether there is just a room, room+object, room+object+sprite, it always says :

« Last Edit: July 06, 2011, 08:59:12 AM by Dom83 » Logged
Offline (Unknown gender) Dom83
Reply #18 Posted on: July 06, 2011, 09:06:14 AM
Member
Joined: Aug 2008
Posts: 11

View Profile Email
Wait !  I got it to work !
I did not write the ".exe" at the end of the filename, I did and it works now.... 8|  I'm so used to let softwares write extension themselve in the filename.  I never thought this error could come from here....
Logged
Offline (Male) Josh @ Dreamland
Reply #19 Posted on: July 06, 2011, 11:43:29 AM

Prince of all Goldfish
Developer
Location: Pittsburgh, PA, USA
Joined: Feb 2008
Posts: 2949

View Profile Email
I thought Ism fixed that... ;__;
My word.

Anyway, glad that's working now. We'll try to work some of the kinks that plagued you out of the system. Both of us have a big to-do, but this will probably end up queued up, seeing as it keeps causing major issue.
Logged
"That is the single most cryptic piece of code I have ever seen." -Master PobbleWobble
"I disapprove of what you say, but I will defend to the death your right to say it." -Evelyn Beatrice Hall, Friends of Voltaire
Offline (Female) IsmAvatar
Reply #20 Posted on: July 06, 2011, 04:50:47 PM

LateralGM Developer
LGM Developer
Location: Pennsylvania/USA
Joined: Apr 2008
Posts: 877

View Profile Email
I already print the SVN revision number - but only if svnkit is installed.
As for the NPE, I'm still taking a look
As for the .exe, yeah, spec2...
Logged
Offline (Unknown gender) TheExDeus
Reply #21 Posted on: July 07, 2011, 06:23:59 AM

Developer
Joined: Apr 2008
Posts: 1860

View Profile
Fixed it. The problem was a badly generated gcc.ey file. It missed several parts like:
Quote
Build-Extension: .exe
Run-Output: $tempfile
Run-Program: $game
Run-Params:
And some other parts as well (I actually didn't compare, I just glanced at it and seeing that something is missing I just deleted it). Also, its weird that I actually deleted it and regenerated before, but that was before I recompiled compileEGMf.dll, after that I forgot. So after recompiling the dll I had to delete the .ey and regenerate it. After that it worked. Just something to remember for future reference (because the java error was quite useless (for me at least)) .
Logged
Offline (Female) IsmAvatar
Reply #22 Posted on: July 07, 2011, 03:40:41 PM

LateralGM Developer
LGM Developer
Location: Pennsylvania/USA
Joined: Apr 2008
Posts: 877

View Profile Email
Nevermind about spec2 then. Spec2's not going to fix a bad ey file.

As for the java error/NPE, it's not informative to you because it's not meant to be. It's an uncaught exception generated by a problem that I didn't anticipate. It's informative, however, to the programmer who's trying to help you - namely me, because I can look up the stack trace and find out what I programmed incorrectly.

In particular, the error and the first line of the stack trace
at org.enigma.EnigmaRunner.compile(EnigmaRunner.java:519)
tells me the problem is a null somewhere in the following line of code:
if (!es.selCompiler.outputexe.equals("$tempfile")) //$NON-NLS-1$
which means that one of the following is null:
EnigmaRunner.es
EnigmaSettings.selCompiler
TargetHandler.outputexe

It can't be es because just a couple lines up I try to access it, so it would have reported an NPE sooner.
It can't be selCompiler because a couple lines up I do a null check on it and fail out.
Which leaves outputexe.

outputexe is populated in TargetHandler.findCompilers, this line of code:
ps.outputexe = node.getMC("Run-output",null); //$NON-NLS-1$

Where "node.getMC" fetches the value of the desired key from the yaml file, defaulting to the second argument if none is found. Obviously, I wasn't expecting to not find a value, because I was expecting Run-output to always exist.

So there's your problem.

When you see a stack trace, give it to me and I'll tell you what's wrong. It's usually a sign that I'm doing something wrong and either need to fix it or need to display a better error message. In this case, it's the latter.
Logged
Offline (Unknown gender) TheExDeus
Reply #23 Posted on: July 07, 2011, 04:10:05 PM

Developer
Joined: Apr 2008
Posts: 1860

View Profile
Thank your for the explanation.
Logged
Pages: « 1 2
  Print