-
Notifications
You must be signed in to change notification settings - Fork 24
Compiling Instructions #8
Comments
The V8 code is from the https://github.com/andrewlow/v8ppc project. However, if you look closely at this repository https://github.com/andrewlow/node you'll see that there are two copies of V8 in the deps directory. [I did the work for you] I did this so you could use the single repository to build both Intel and PPC versions of Node -- AND have 100% certainty that the Intel version is 100% identical to the version that comes from Joyent. (the v8ppc repo is almost identical, but not quite). Also having it integrated makes it really easy to build for folks like yourself. The best place to figure out how to build things - it to look at the Jenkins server I have running in the open: http://v8ppc.osuosl.org:8080/ -- Hint - "make -j4 -e DESTCPU=ppc binary" is probably exactly what you want. I will note, there are still issues with the Apple G4 chip ibmruntimes/v8ppc#97 |
I'm currently compiling your I think I'll cancel it and I'll give your I had a look at your Jenkins server, where abouts are the setup commands? Thanks for doing this by the way! |
You might be able to simply download a binary from the jenkins server and run it on your emulator. Your goal to see if our node will run your app is sort of proven by the jenkins server. If your apps runs on any 0.10.21 node.js build then it'll probably work. The following directions work on an Intel Linux machine to build the 'simulated' version of the PPC build.
It unfortunately fails in my Intel Mac (it wasn't ever tested). This falls a bit outside the normal usage, but it'd be nice if it worked. I need to do some work on the jenkins server to make it easier to access for 'read only' folk. You need to crawl through the console output of a job to figure out the commands (which can be done read-only) but you've got to figure out the sequence of commands used from that. I haven't dug into the details, but you might run into similar issues with the MPC8541 that were reported here: ibmruntimes/v8ppc#93 -- of course, I'd like this to work everywhere if possible and will help as I can - but my primary focus is more recent Power architectures. |
Hi Andrew, thanks for the tips, will give them a try tomorrow, 2am here in On Wednesday, November 13, 2013, Andrew Low wrote:
|
Hi Andrew, Cheers |
Well, we tested a G5 here in the lab and it should work. In general terms the code is built to assume POWER5 architecture. If you can figure out which level architecture you're on we might be able to make a good guess http://en.wikipedia.org/wiki/Power_Architecture So far the areas where we run into issues are: instruction cache size / flushing; and floating point instructions. |
Ah I see, so it looks like all three are: http://en.wikipedia.org/wiki/PowerPC_e500 which looks newer than the POWER5, so would that mean that e500 would support the older instructions? Edit: I found the reference manual. Edit2: POWER5 is ISA 2.01 and e500 is ISA 2.03. |
After I posted my last comment I did notice that the chips you're looking at are e500 based - and thus have the POWER5 instructions. I'm going to guess that we might hit some instruction cache flushing issues, but hopefully that's just a matter of tweaking a few values. Given that the G5 is somewhat behind the e500, you're in a reasonably good spot. |
Ah excellent, that's hopeful to hear 😄 will close this and report back once we've received the hardware, thanks again! |
Hi Andrew,
I'm currently compiling v8ppc on an old debian PPC. For this node fork, do I just follow the instructions on the README? I have a feeling I need to incorporate the v8ppc build somehow?
Thanks
Jaime
The text was updated successfully, but these errors were encountered: