• Just a reminder that providing specifics on, sharing links to, or naming websites where ROMs can be accessed is against the rules. If your post has any of this information it will be removed.
  • Ever thought it'd be cool to have your art, writing, or challenge runs featured on PokéCommunity? Click here for info - we'd love to spotlight your work!
  • Our weekly protagonist poll is now up! Vote for your favorite Conquest protagonist in the poll by clicking here.
  • Welcome to PokéCommunity! Register now and join one of the best fan communities on the 'net to talk Pokémon and more! We are not affiliated with The Pokémon Company or Nintendo.

[Tutorial] How to build Pokeruby/Pokeemerald using Cygwin (64 Bits)

Hi, so I've been trying to get this to work all day. I've completely uninstalled and re-attempted 3 times. I'm copying & pasting as much of your instructions as I can to minimize any errors due to typos. I have followed the instructions explicity in order.

Each attempt gives me a problem somewhere. My first attempt I was able to get all the way to adding be2 & items & pokemon, but ran into an error at -make jN where it failed because 'stddef.h' couldn't be found anywhere. Googling that problem led me to a stackexchange post where the accepted answer (70 votes) was that it happens when gcc-core and gcc-g++ are different versions which doesn't make sense but whatever. I completely uninstalled everything and re-attempted it. From here, all my new attempts are on my G drive instead of C due to space.

Attempt #2 and #3 gave me the same issue as the user above about "cannot stat libgcc.a". Yes, I've made sure every attempt has been in order and accurate based on your guide. I know C:\ is the default drive but is it the *required* drive? I usually prefer installing game-related software to my Games drive (G:\).

Anyway, I just tried Attempt #4 and now run into "Makefile:1: /cygdrive/c/devkitPro/devkitARM/base_tools: No such file or directory. make: *** No rule to make target '/cygdrive/c/devkitPro/devkitARM/base_tools'."

Except I *have* G:\devkitPro\devkitARM\base_tools (can't post link or attachment yet). I saw your post saying that means devkit isn't linked to cygwin but that's what the first 4 commands are supposed to do, right? Which I am doing, so I have no idea why this process refuses to work for me...

Edit 1: Ok I got past the "base tools" error when attempting ./build.sh. I apparently didn't link things earlier. What I did was change

"export DEVKITPRO=/cygdrive/c/devkitPro"

into

"export DEVKITPRO=/cygdrive/g/devkitPro", since the stuff is now on my G drive. I *think* this will let me proceed normally. I hope. Will update again.

Edit 2: Welp, that fixed it. gba file successfully created. Now to hopefully get the inclusion of Egg's stuff to work as well. Leaving this here in case it may help someone in the future.
And this is the exact reason why I simply prefer to tell the people to install devkitPro in its default path at C:, because the commands that add the paths of devkitPro and devkitARM to C:\cygwin64\home\USER\.bashrc are set to their default installation path which is in the C Hard Drive.
It's easier for me, and it's easier for them if they don't need to do any additional steps unless it's absolutely needed.

I'm glad you were able to sort it out though.
 
Hello! I did all the steps, got the .gba file but everytime I run it I get a white screen? Any ideas? I've tried both vba and vba-m and no luck. I tried re-compiling using "make compare" and got the "pokeemerald.gba ok". Not sure what to go from here.
 
Nevermind! I found the fix. What I did was opened up the .gba file in VBA. I went to options -> emulator -> Save Type -> and checked Flash 128K instead of 64K. I then went to File -> and pressed Reset.

Sorry, didn't see your reply sooner Jaizu!
 
Last edited by a moderator:
Question, not entirely regarding Pokéemerald though:
Is there a complete Decompilation of FireRed? Binary hacking is too old, and I just don't like the idea of using 100 different tools. The only thing I like about it is inserting ASM, which also gets boring. It's also well known that Decomp is way better than Binary, but I just don't get it. How do you build a ROM by typing in a notepad? This idea seems bizarre yet wonderful at the same time. It feels free and beyond limits. But I never get Decomp. I invested the past year in Binary.
Anyways, is the switch to Decomp worth it? And is there a Complete FireRed Decompilation?
 
Is there a complete Decompilation of FireRed?
Complete? No. However, Pokefirered has been usable for a long time now. There isn't much of a reason to use it beyond porting stuff because Pokeemerald is far more complete and it's the project that receives the most support from the community in terms of feature additions contributed by the community and tutorials, but it's there.
How do you build a ROM by typing in a notepad?
You don't. Building the ROM is a task handled by multiple tools provided by Pret. What you use Notepad for is to modify the source code that is laid bare.
 
Last edited:
Complete? No. However, Pokefirered has been usable for a long time now. There's no reason to use it because Pokeemerald is far more complete and it's the project that receives the most support from the community in terms of feature additions contributed by the community and tutorials.

Ah, I see. I am just fond of using FireRed, as I have done so from the beginning .

You don't. Building the ROM is a task handled by multiple tools provided by Pret. What you use Notepad for is to modify the source code that is laid bare.

Interesting. And how do you insert all this in your ROM?



These questions may be dumb, but I have no knowledge about Decomp, as I never used it. :c
 
And how do you insert all this in your ROM?
The tools do all the work for you. You just need to modify functions, lines of code or sprites as you see fit, run the make command, and that's it.
If you want more in-depth knowledge about how they work, I'm afraid I'm not the right person to ask.
You should join Pret's Discord server and ask a more proper explanation there. Its invitation can be found in any of Pret's repositories, linked on their README.
 
The tools do all the work for you. You just need to modify functions, lines of code or sprites as you see fit, run the make command, and that's it.
If you want more in-depth knowledge about how they work, I'm afraid I'm not the right person to ask.
You should join Pret's Discord server and ask a more proper explanation there. Its invitation can be found in any of Pret's repositories, linked on their README.

Ah, thanks! I highly appreciate you even giving me this much time. For some reason, I am just afraid of using Decomp. But anyways, you have been a great help.
Thanks again!
 
Back
Top