Building PropGCC with Windows7, 64-bit
Rayman
Posts: 14,665
Just to punish myself, I'm seeing if I can compile the latest version of propgcc on my Windows desktop...
Following the instructions on this page:
http://code.google.com/p/propgcc/wiki/PropGccBuild
One thing left off is that you need to install a mercurial thing, like TortoiseHg.
That was pretty easy to install, and I used it's GUI to download propgcc source, instead of from the command line.
I don't think it worked from the command line for me anyway...
After it downloaded (~5 minutes), I copied it to deep inside the MinGW folder, where the instructions had me make a "gccdev" folder from the command line.
The build script is running now. I'm interested to see how long it takes... Will seem like a miracle if it actually works!
Following the instructions on this page:
http://code.google.com/p/propgcc/wiki/PropGccBuild
One thing left off is that you need to install a mercurial thing, like TortoiseHg.
That was pretty easy to install, and I used it's GUI to download propgcc source, instead of from the command line.
I don't think it worked from the command line for me anyway...
After it downloaded (~5 minutes), I copied it to deep inside the MinGW folder, where the instructions had me make a "gccdev" folder from the command line.
The build script is running now. I'm interested to see how long it takes... Will seem like a miracle if it actually works!
Comments
And, as a result, the MSYS folder is under the MinGW folder.
So, the paths are different that what is shown in the instructions...
I take it you have all the packages? It can be very frustrating to build without them.
Unfortunately Mingw/msys doesn't support multiple jobs. It takes my PC hours to build that.
Linux by comparison takes under 10 minutes using 6 jobs on a 4 core allocation.
There is a way to cross-compile Linux to Windows, but we never bothered to add it.
Good luck.
I think it's in ..\opt\parallax\
There seems to be a lot of things missing though when I compare to my propgcc folder...
For example, the \bin folder there are about six files missing, things like spin2cpp.exe and the libintl-8.dll file...
Also the doc and demos folders aren't there...
Is there another script that copies over these files?
Go to the release folder and type ./release.sh . It should make a release folder and a .zip package for you automatically.
Not sure if the libintl, etc... files have been added to that yet. It's probably best to straighten that out soon. I can't do that at the moment though.
Got an error on make.exe and remove.exe being "No such file". But, I don't thing that's too important for me.
Besides those two, only thing I see missing in \bin is "spin2cpp.exe" and "propgcc-map-sizes.pl"
Think I'll try it now and see if it works...
The two lib dll files are there...
Was hoping to see propeller-elf-image-size.exe, but guess David didn't get to that yet...
Thanks David. Can you please double commit to the default branch?
>cc1.exe : error : unrecognized command line option '-mp2'
Maybe I downloaded a very old version?
@Rayman,
Our upcomming release will only be from the default (with a maintenance branch when we're ready). The p2test branch is not fully functional yet.
Several things from p2test like spin2cpp are not in the default branch. I never included the perl program because I don't think it's necessary to force users to have Perl installed.
As you see, the default branch does not support -mp2 ...
Best regards,
--Steve
The default branch in Mercurial is the old (P1 only) compiler. The new one is on a branch called "p2test". On the command line you can switch over to the branch by saying "hg update p2test" (it's pretty quick, if you've downloaded the repository all the changes are already on your local machine). I'm sure TortoiseHg has some similar functionality.
Eric
The default branch is stable. The p2test branch is the development branch for P2.
If you want the p2test branch use the command $ hg update p2test (or the tortoise equivalent). Postedit: I see Eric beat me to it.
@David, I'm sorry, I realize that I don't need (or want) that double-commit now as the default does not have gdb support.
Is there a URL like that for p2test?
I'm recompiling now...
But, the Dhrystone demo doesn't run. I guess this is a seperate issue though...
Gives a lot of warnings that look like this: "propeller architecture mismatch: old = 0x00000001, new = 0x00000002, filename = dry1.o
Looks like you have some object files left over from a P1 build, and are now trying to build for P2. Doing a "make clean" (or just removing all the .o files manually) should get rid of the old files and let it make new ones.
That demo first makes dry1.o and dry2.o before combining to a.out. I left off the -mp2 option on that last step...
It loads now, but shows no output in the text window, so I must has something else wrong too...
Dhrystone still won't run though. I think I see why now... The propeller-elf-image-size reports as 34676 bytes when compiled for P2...
This is 5kB more than when compiled for P1 for some reason... It's too big for my DE0, I think...
I'll try size optimize and see if that helps it go...
It runs with size optimize.