Pages: « 1 2 3
  Print  
Author Topic: Android  (Read 8163 times)
Offline (Unknown gender) daz
Reply #30 Posted on: September 01, 2014, 11:48:51 PM
Contributor
Joined: Jul 2010
Posts: 167

View Profile
Thanks, we got quite close to getting it to generate an Android binary.

Anyway for anyone curious...
Code: [Select]
c:/androidtoolchain/bin/../lib/gcc/arm-linux-androideabi/4.6/../../../../arm-linux-androideabi/bin/ld.exe: fatal error: C:/Users/Matt/AppData/Local/Temp/egm7307289762881344537.exe C:/ProgramData/ENIGMA/.eobjs/Windows/Android/Run/libEGMstd.o: open: Invalid argument
Linker be failing. This is modified in my attempt to fix things... normally it would output as a .so in the ENIGMA directory, but hey who knows where it might be failing.

Anyway, the only two arguments passed to LD from what I can see are the temp file which will be the finalized binary, and the object file. Both the object file and the temp file exist so I'm not entirely sure what might be the problem. I have a hunch the linker might not realize we're trying to build a dynamic library instead of an executable and the error is just vague, but that's just a guess. If on the other hand it doesn't like ".eobjs" for some reason we're in for real trouble...
Logged
Offline (Male) Rusky
Reply #31 Posted on: September 02, 2014, 09:05:52 AM

Resident Troll
Joined: Feb 2008
Posts: 955
MSN Messenger - rpjohnst@gmail.com
View Profile WWW Email
I'd double check the file types. .eobjs is highly unlikely to be a problem, but missing dynamic library flags, bad file types for the exe or object files, or not having enough information in the exe to link with anything could all be issues as well.
Logged
Offline (Unknown gender) daz
Reply #32 Posted on: September 05, 2014, 07:09:19 PM
Contributor
Joined: Jul 2010
Posts: 167

View Profile
Well my current guess is LD is being given two parameters and it doesn't like it (the .exe and .o are given at the same time). From running file sniffing tools, when compiling for Windows this situation literally never arises (unless it's well hidden). It's trying to create a file named "C:/Users/Matt/AppData/Local/Temp/egm7307289762881344537.exe C:/ProgramData/ENIGMA/.eobjs/Windows/Android/Run/libEGMstd.o" it seems, where as the .o should be passed to the next call of LD I think. It's weird.
Logged
Offline (Male) Josh @ Dreamland
Reply #33 Posted on: September 08, 2014, 10:37:40 AM

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

View Profile Email
It seems that to work around problems of the C:/Documents and Settings/John Doe/My Documents/My Games/super cool game/game.exe ilk, ld just takes EVERYTHING after -o to be the output name. So that's one issue.

I can't tell from what you told me over IRC if it's finding all the objects correctly or not. It'd help to have a dump of the OBJECTS variable.
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) daz
Reply #34 Posted on: September 10, 2014, 05:31:44 PM
Contributor
Joined: Jul 2010
Posts: 167

View Profile
I have no idea what I'm doing, so the next time you're on IRC and have some free time we can see if we can progress any farther.
Logged
Pages: « 1 2 3
  Print