LGM crashes on startup (on Mac) trying to communicate with the library seems partially successful

Reporter: time-killer-games  |  Status: open  |  Last Modified: June 12, 2019, 08:33:25 PM

terminal contents after crash:

https://pastebin.com/UNVUCZab

btw i successfully built emake and all the dylibs and everything including my java/jdk is 64-bit

The problem is that lateralgm is trying to communicate with make, not gmake. make on mac is deprecated and only supports 32-bit which since i am building for x64 that won't work. we need lgm on mac to communicate with 64-bit gmake

RobertBColton  
The Java version may be too new. LGM's minimum Java version is 1.7. It is also possible that you need to increase the maximum JVM heap size using the command line parameter. Other than that, this might not even be a LateralGM issue since I see JDI crapping out a bunch.
time-killer-games  

@RobertBColton i updated the issue with more details

RobertBColton  

You can alias make in the compiler eys:
https://github.com/enigma-dev/enigma-dev/blob/master/Compilers/MacOSX/gcc.ey
time-killer-games  

ok its giving me less stuff in the errors now but it still crashes
time-killer-games  

how do i set the default platform to sdl? right now its trying to use cocoa which might be the issue idk
RobertBColton  

Make Cocoa represents "None" I think or just delete the "Info" folder altogether.

time-killer-games  

ok after setting the default to SDL im getting this, still crashing:

https://pastebin.com/F7G1mQmg

RobertBColton  

You didn't increase the heap size. Again, the Java version may be too new. Otherwise look at any other tweaks fundies had in #1294.
time-killer-games  

ill try downgrading next, but the max and min heap size no longer appears to be located in settings.ey anymore i have no idea where you guys have moved it to
RobertBColton  

The min and max heap parameters are a command line parameter to Java.
time-killer-games  

anyways that used to be in the settings.ey and i think it should still be for convenience tbh
RobertBColton  

No, it was in settings.ini where it was added by me to the Portable ZIP.
time-killer-games  

ah. yeah well what min and max would you recommend? nothing seems to be working, only crash is getting slightly delayed. Is openjdk or oracle the one we need on mac?
time-killer-games  

i can't figure out how to downgrade without an oracle account and openjdk doesn't seem to have a downgrade option so ill just have to try that a different day
RobertBColton  

Oracle JDK is always recommended on every platform.
https://enigma-dev.org/docs/Wiki/Troubleshoot#OutOfMemoryError
fundies  

whatever nonsense shell your using is missing a bunch of bash commands like which and mkdir. It's not going to work unless you're in a proper bash shell
time-killer-games  

@fundies I'm using the default Mac terminal, the same thing I used when you helped me get it working last year. mkdir seems to work for me last I tried it, or perhaps i remember wrong, Also, more people have complained about me on discord than you from what I can tell, YellowAfterlife even asked if he could block me recently because I was so annoying to him. I think I might go back to using just hangouts soon, if this continues, I think Josh really shouldn't have booted you out, even if it was meant to temporary afaik, I don't believe in god anymore so you don't have to worry about me getting offended by your humor now, at least when it comes to anything religious and i generally am learning to be less touchy. I won't say more on this.
time-killer-games  

@RobertBColton fucking apple replaced instances I typed gmake with make so anyway now that's corrected the original post on this issue now makes proper sense. We already fixed it when you told me how to alias in that file you mentioned. I'm just getting pissed by apple's autocorrect. It makes my macbook feel like a mobile device which i hate.
time-killer-games  

anyway I'm ready to work on this again. I'll do what robert suggested and look at that specific commit he mentioned to me on discord.
fundies  

make[1]: which: Command not found
make[2]: uname: Command not found
make[2]: which: Command not found
make[2]: mkdir: No such file or directory

you need to solve that first

time-killer-games  

@fundies fixed it. I forgot to use gmake instead of make.

Now I'm getting this:

OptionsParser.cpp:215:28: error: out-of-line definition of 'APIyaml' does not
match any declaration in 'OptionsParser'
std::string OptionsParser::APIyaml()

While I'm waiting for a response from you or robert I'm in the process of doing a gmake clean and then gmake all to see if cleaning will fix that issue.

Edit: Nope, that didn't fix it.

fundies  

im guessing you messed up that source file somehow. Or theres more to that error you're omitting
time-killer-games  

@fundies normally i would say your first statement is probably correct, but I've uninstalled enigma and started over several times now and this is one of multiple times i was stopped by this same error at this point in time, at least twice in a row now.

All I'm doing is installing enigma and adding some of the most recent changes from your branch.

I'll check to see what else is mentioned in the terminal later and pastebin the results to you.

fundies  

std::string OptionsParser::APIyaml() takes an argument in the latest sources so either its edited or theres something more to that error that you arent showing
time-killer-games  

Yeah, that's what I'm saying. I don't really know for sure, but I think the issue lies somewhere else in the other contents printed to the terminal. In any case, I just ran gmake clean and gmake all again. I'll post the contents of the terminal once it reaches that error again along with the current contents of my copy of std::string OptionsParser::APIyaml() as separate pastebin's, and hopefully we'll get to the bottom of it.
time-killer-games  

Here's what the terminal printed for gmake all: https://pastebin.com/EG84BhSk
Here's the contents of my current copy of OptionsParser::APIyaml(): https://pastebin.com/9v92Br0Y
(I pasted the entire OptionsParser.cpp just in case)
fundies  

and as i said https://github.com/enigma-dev/enigma-dev/blob/master/CommandLine/emake/OptionsParser.cpp#L216 your line 215 doesnt match at all. youre clearly on edited source
time-killer-games  

Thanks for that. I didn't realize i edited anything, or maybe i copied from a wrong commit. However it happened, that part should be fixed now. Thanks for the help!
time-killer-games  

Ok, so emake built it appears even though building the Cocoa test harness failed but i don't think that makes a difference because i don't think we ever got that working iirc.

now trying to build with emake gives me this:

Last login: Wed May 29 17:01:32 on ttys000 Owners-MacBook-Pro:~ owner$ cd /Users/owner/enigma-dev Owners-MacBook-Pro:enigma-dev owner$ ./emake "/Users/owner/Desktop/Key to Success.gmk" -x gcc -p SDL -c Precise -g OpenGL1 -a OpenAL -w None -e "Paths,Alarms" -o "/Users/owner/Desktop/Key to Success" -r [libprotobuf ERROR google/protobuf/descriptor_database.cc:58] File already exists in database: options.proto [libprotobuf FATAL google/protobuf/descriptor.cc:1370] CHECK failed: GeneratedDatabase()->Add(encoded_file_descriptor, size): libc++abi.dylib: terminating with uncaught exception of type google::protobuf::FatalException: CHECK failed: GeneratedDatabase()->Add(encoded_file_descriptor, size): Abort trap: 6 Owners-MacBook-Pro:enigma-dev owner$

fundies  

looks like libprotocols or protobuf is being linked twice and google dont like it
Please sign in to post comments, or you can view this issue on GitHub.