Thanks for taking all this time to respond to my posts. I have tried using n64split 0.2 and 0.3, but both have the exact same overlap error.
I'm not sure if it's something I have done before I got to the overlap error. I'll try and explain this as best I can - as I'm still a newbie at this stuff.
So I started with step one, downloading n64split 0.4 and the toolchain from cen64 and then adding the folder to my Environment Variables.
At the time, I didn't realise that I would have to restart command prompt for my environment variable changes to take affect, which is why I was having trouble with "make (e=2): mips-elf-as cannot be found (or something)", and was also the reason for me going on to this next step.
Since you don't use windows I'll explain what I had to do to build the toolchain...
I had to install CygWin (a unix shell console) and on that I had to download, build and install GCC. After that, I needed to do the same for 2 other packages (binutils and another one which I cannot remember the name of)
After that, I could then do the same for the toolchain using a repository where you "cd" into the directory and run the build-win64-toolchain.sh.
All of these packages took an hour or more each for me to figure out how to obtain and install (because they all have different build configurations) which made it all the more confusing.
Anyway, after that, I then realised you need to simply restart command prompt in order for the environment vars to apply. I think somewhere between step 1 and this point is where I have messed
something up.
Here's where it gets weirder - I cannot add the folder you specified to add to my environment variables to make any sort of difference.
You specified the folder: "n64tools_dir/mips64-elf/bin"
When I add this folder, I get the error "make (e=2): mips64-elf-as not exist"
When I add this folder (this is the folder mips64-elf-as.exe is located in): "n64tools_dir/bin" It will actually get to the overlap error instead.
When I add both folders, it makes no difference to just adding "n64tools_dir/bin".
I'm curious as to what's wrong. I swear I couldn't have gotten a worse outcome if I tried.
(07-11-2017, 08:15 AM)queueRAM Wrote:
I took a closer look into it and my original assessment wasn't quite right. One section includes unassociated data with it at the end which makes it look to the linker like it overlaps another section's virtual address. At the end of ".section .text8016F000" there is "# Unknown region 2577B8-269EA0 [126E8]". This region should be the start of a new section.
As I said, I'm quite newb and I don't fully understand what you mean by there is "unassociated data with it at the end" and also don't know what you mean by "This region should be the start of a new section."
I am interested in finding a fix. One thing that does stand out to me:
section#1 (0x80246000 to 0x8033A57F)
section#2 (0x8016F000 to 0x8071C1FF)
Not only are they overlapping, section#1 is
completely encased by section#2. Is this right?
Is there any way at all to stop this from happening? Such as make it so section#1 is not part of section#2?
I can vaguely understand C/C++ code if I'm reading it (I wouldn't be able to write it), but I cannot seem to locate anything in your code that would be causing these overlaps; not that I understand it that much.
Sorry for giving so much reading material. But this tool looks stunning. I really really want to get it working