+ 1

Node.js not working

I got this iOS x86 emulator called iSH so I could use the terminal on iOS. It runs Alpine Linux. So far, it’s worked fantastically. However, when I try to run Node on it, it says nothing more than “Illegal Instruction”. Running “node --version” gives “v10.16.3” and running “node --v8-options” gives an error saying that it needs the cpu instruction sse2 to work. Any way to get around the sse2 dependency or will I have to either abandon Node or change terminals?

2nd Dec 2019, 12:14 AM
Jason Stone
Jason Stone - avatar
6 Antworten
+ 4
Jason Stone [14 yrs old] Unfortunately, ish doesn't yet implement support for sse2 instructions, which is required by the V8 JIT compiler. So... you aren't going to be able to use this emulator. https://github.com/tbodt/ish/issues/90 I don't do a lot these days with iOS, so, I can't speak from experience. However, there is a project for running NodeJS on Mobile Apps that uses a different Javascript engine to work on iOS. https://code.janeasystems.com/nodejs-mobile https://github.com/nodejs/node-chakracore That might be worth checking out.
2nd Dec 2019, 5:16 AM
David Carroll
David Carroll - avatar
+ 1
ChillPill David Carroll maybe you guys can help me with this question.
2nd Dec 2019, 3:59 AM
Jason Stone
Jason Stone - avatar
0
Crash oh ok. Took me a second to figure out you were talking about the places I advertised this. Can you please direct me to some threads for advertising questions?
2nd Dec 2019, 3:59 AM
Jason Stone
Jason Stone - avatar
0
ChillPill everything but node works. Any command starting with “node” other than “node --version” and “node --v8-options” return simply “Illegal Instruction” no matter what. Once, in an attempt to fix it, I corrupted node and any command involving it crashed the terminal. Delete and reinstall ensued, node no longer crashes the terminal, but it still don’t work. As I said in the question above I think node requires there to be a certain CPU instruction for the JIT to work and without it the CPU complains “illegal instruction” since it doesn’t recognise the instruction node is using. Also, I don’t think it has to do with the limits of the terminal emulator since it emulates an entire CPU which essentially gives it a free sandbox. It even runs Linux instead of iOS. Since it emulates the CPU there should be no dependancy on the actual underlying hardware except for activites such as downloading stuff from the web, but simply running node doesn’t do that.
2nd Dec 2019, 5:14 AM
Jason Stone
Jason Stone - avatar
0
David Carroll thanks, I’ll check out those links. Edit: good to know the sse2 thing is a known issue. I might look into the nodejs-mobile thing later if I can’t find a satisfactory solution for iSH. That last link thing tho, what exactly does it do? Is it something that overrides node’s V8 so it doesn’t need the sse2? That’s what I’ve understood by reading it but I’m still pretty uncertain. Does that mean I could thepretically use it in iSH?
2nd Dec 2019, 6:22 AM
Jason Stone
Jason Stone - avatar