Hi. As a follow-up on [1], I'd like to raise the question of whether it's practically possible to compile R to the Google Android mobile platform? The best way would probably be to use the Native Developer Kit [2], NDK, and in that way get a library. This could then be interfaced to by a Java-program. I know that several questions have been raised against the idea, e.g. with the input methods and all that, but I wouldn't be that hard to make an alternative input method or even a new language that could be compiled to R. The reason I'm raising this question again, is that I would really want a (basic) statistical package on my mobile phone, and I think it would be kind of stupid to start writing one from scratch when R is already out there. Unfortunately I don't know that much about build systems and are not capable of assesing whether it indeed would be possible to port R to Android through NDK. I know a bit of both R, Java, and C and would be able to help trying some different approaches, if anybody wants to help me. The alternative is to start writing a new mobile statistical package from the beginning. And although it should only maybe support 5% of the functionality of R, it would take a lot of time to do that. And I'd love to avoid that when good people has already done an amazing job :-). Cheers, Mikkel Meyer Andersen. [1]: http://finzi.psych.upenn.edu/Rhelp08/2009-February/187425.html [2]: http://developer.android.com/sdk/ndk/1.5_r1/index.html
R on Google Android
5 messages · Mikkel Meyer Andersen, Simon Urbanek
Mikkel,
On Oct 11, 2009, at 6:38 AM, Mikkel Meyer Andersen wrote:
As a follow-up on [1], I'd like to raise the question of whether it's practically possible to compile R to the Google Android mobile platform? The best way would probably be to use the Native Developer Kit [2], NDK, and in that way get a library. This could then be interfaced to by a Java-program. I know that several questions have been raised against the idea, e.g. with the input methods and all that, but I wouldn't be that hard to make an alternative input method or even a new language that could be compiled to R. The reason I'm raising this question again, is that I would really want a (basic) statistical package on my mobile phone, and I think it would be kind of stupid to start writing one from scratch when R is already out there.
Get an iPhone ;), you can compile R for iPhone OS almost out of the box. But seriously, the NDK seems to be ARM as well (like the iPhone) so chances are that is may work in a similar fashion. According to the NDK docs it includes JNI so you should be able to use rJava/JRI to embed R (see the JGR project for an example of a GUI using the "normal" Java). [I didn't actually try it so your mileage may vary].
Unfortunately I don't know that much about build systems and are not capable of assesing whether it indeed would be possible to port R to Android through NDK. I know a bit of both R, Java, and C and would be able to help trying some different approaches, if anybody wants to help me. The alternative is to start writing a new mobile statistical package from the beginning. And although it should only maybe support 5% of the functionality of R, it would take a lot of time to do that. And I'd love to avoid that when good people has already done an amazing job :-).
People have proposed that and tried that long time ago, but I don't think anyone succeeded. Cheers, Simon
Cheers, Mikkel Meyer Andersen. [1]: http://finzi.psych.upenn.edu/Rhelp08/2009-February/187425.html [2]: http://developer.android.com/sdk/ndk/1.5_r1/index.html
______________________________________________ R-devel at r-project.org mailing list https://stat.ethz.ch/mailman/listinfo/r-devel
Simon, Thanks for your answer. Do you have a link describing the procedure on compiling for iPhone or is it really just ready out of the box? A description would help me trying to do it with Android. I've done some searching, but the only relevant hit I've found is http://ephphatharesearch.com/Eph_Blog_Post.aspx/Show/41. Cheers, Mikkel. 2009/10/12 Simon Urbanek <simon.urbanek at r-project.org>:
Mikkel, On Oct 11, 2009, at 6:38 AM, Mikkel Meyer Andersen wrote:
As a follow-up on [1], I'd like to raise the question of whether it's practically possible to compile R to the Google Android mobile platform? The best way would probably be to use the Native Developer Kit [2], NDK, and in that way get a library. This could then be interfaced to by a Java-program. I know that several questions have been raised against the idea, e.g. with the input methods and all that, but I wouldn't be that hard to make an alternative input method or even a new language that could be compiled to R. The reason I'm raising this question again, is that I would really want a (basic) statistical package on my mobile phone, and I think it would be kind of stupid to start writing one from scratch when R is already out there.
Get an iPhone ;), you can compile R for iPhone OS almost out of the box. But seriously, the NDK seems to be ARM as well (like the iPhone) so chances are that is may work in a similar fashion. According to the NDK docs it includes JNI so you should be able to use rJava/JRI to embed R (see the JGR project for an example of a GUI using the "normal" Java). [I didn't actually try it so your mileage may vary].
Unfortunately I don't know that much about build systems and are not capable of assesing whether it indeed would be possible to port R to Android through NDK. I know a bit of both R, Java, and C and would be able to help trying some different approaches, if anybody wants to help me. The alternative is to start writing a new mobile statistical package from the beginning. And although it should only maybe support 5% of the functionality of R, it would take a lot of time to do that. And I'd love to avoid that when good people has already done an amazing job :-).
People have proposed that and tried that long time ago, but I don't think anyone succeeded. Cheers, Simon
Cheers, Mikkel Meyer Andersen. [1]: http://finzi.psych.upenn.edu/Rhelp08/2009-February/187425.html [2]: http://developer.android.com/sdk/ndk/1.5_r1/index.html
______________________________________________ R-devel at r-project.org mailing list https://stat.ethz.ch/mailman/listinfo/r-devel
On Oct 11, 2009, at 9:17 PM, Mikkel Meyer Andersen wrote:
Simon, Thanks for your answer. Do you have a link describing the procedure on compiling for iPhone or is it really just ready out of the box?
You can compile R itself (libR) out of the box just using regular cross-compilation. The only issue are packages with native libraries - the easiest way is to create a multi-arch R so that the non-libs parts are actually built on the native architecture. For anything troublesome your can then also use R --arch=arm CMD SHLIB. This is really more a proof of concept since you're still missing a command line as there is no shell or ssh or normal iPhones but you could hook it into any GUI .. Of course as my old post on R-SIG-Mac on the topic says we don't have plans to use UIKit, but that's probably not that relevant for you anyway. Cheers, Simon
A description would help me trying to do it with Android. I've done some searching, but the only relevant hit I've found is http://ephphatharesearch.com/Eph_Blog_Post.aspx/Show/41. Cheers, Mikkel. 2009/10/12 Simon Urbanek <simon.urbanek at r-project.org>:
Mikkel, On Oct 11, 2009, at 6:38 AM, Mikkel Meyer Andersen wrote:
As a follow-up on [1], I'd like to raise the question of whether it's practically possible to compile R to the Google Android mobile platform? The best way would probably be to use the Native Developer Kit [2], NDK, and in that way get a library. This could then be interfaced to by a Java-program. I know that several questions have been raised against the idea, e.g. with the input methods and all that, but I wouldn't be that hard to make an alternative input method or even a new language that could be compiled to R. The reason I'm raising this question again, is that I would really want a (basic) statistical package on my mobile phone, and I think it would be kind of stupid to start writing one from scratch when R is already out there.
Get an iPhone ;), you can compile R for iPhone OS almost out of the box. But seriously, the NDK seems to be ARM as well (like the iPhone) so chances are that is may work in a similar fashion. According to the NDK docs it includes JNI so you should be able to use rJava/JRI to embed R (see the JGR project for an example of a GUI using the "normal" Java). [I didn't actually try it so your mileage may vary].
Unfortunately I don't know that much about build systems and are not capable of assesing whether it indeed would be possible to port R to Android through NDK. I know a bit of both R, Java, and C and would be able to help trying some different approaches, if anybody wants to help me. The alternative is to start writing a new mobile statistical package from the beginning. And although it should only maybe support 5% of the functionality of R, it would take a lot of time to do that. And I'd love to avoid that when good people has already done an amazing job :-).
People have proposed that and tried that long time ago, but I don't think anyone succeeded. Cheers, Simon
Cheers, Mikkel Meyer Andersen. [1]: http://finzi.psych.upenn.edu/Rhelp08/2009-February/187425.html [2]: http://developer.android.com/sdk/ndk/1.5_r1/index.html
______________________________________________ R-devel at r-project.org mailing list https://stat.ethz.ch/mailman/listinfo/r-devel
Simon, 2009/10/12 Simon Urbanek <simon.urbanek at r-project.org>:
On Oct 11, 2009, at 9:17 PM, Mikkel Meyer Andersen wrote:
Simon, Thanks for your answer. Do you have a link describing the procedure on compiling for iPhone or is it really just ready out of the box?
You can compile R itself (libR) out of the box just using regular cross-compilation. The only issue are packages with native libraries - the easiest way is to create a multi-arch R so that the non-libs parts are actually built on the native architecture. For anything troublesome your can then also use R --arch=arm CMD SHLIB. This is really more a proof of concept since you're still missing a command line as there is no shell or ssh or normal iPhones but you could hook it into any GUI ..
Thanks. That is the main goal to have the base. I don't' want a mobile version to be a substitute for normal desktop usage, but merely just for quick tasks as finding quantiles, eigenvalues, multiplying matrices or whatever when no desktop computer is nearby. I've found a few other links that seem interesting, so I'll give it a try and inform you if I succeed. Cheers, Mikkel.
Of course as my old post on R-SIG-Mac on the topic says we don't have plans to use UIKit, but that's probably not that relevant for you anyway. Cheers, Simon
A description would help me trying to do it with Android. I've done some searching, but the only relevant hit I've found is http://ephphatharesearch.com/Eph_Blog_Post.aspx/Show/41. Cheers, Mikkel. 2009/10/12 Simon Urbanek <simon.urbanek at r-project.org>:
Mikkel, On Oct 11, 2009, at 6:38 AM, Mikkel Meyer Andersen wrote:
As a follow-up on [1], I'd like to raise the question of whether it's practically possible to compile R to the Google Android mobile platform? The best way would probably be to use the Native Developer Kit [2], NDK, and in that way get a library. This could then be interfaced to by a Java-program. I know that several questions have been raised against the idea, e.g. with the input methods and all that, but I wouldn't be that hard to make an alternative input method or even a new language that could be compiled to R. The reason I'm raising this question again, is that I would really want a (basic) statistical package on my mobile phone, and I think it would be kind of stupid to start writing one from scratch when R is already out there.
Get an iPhone ;), you can compile R for iPhone OS almost out of the box. But seriously, the NDK seems to be ARM as well (like the iPhone) so chances are that is may work in a similar fashion. According to the NDK docs it includes JNI so you should be able to use rJava/JRI to embed R (see the JGR project for an example of a GUI using the "normal" Java). [I didn't actually try it so your mileage may vary].
Unfortunately I don't know that much about build systems and are not capable of assesing whether it indeed would be possible to port R to Android through NDK. I know a bit of both R, Java, and C and would be able to help trying some different approaches, if anybody wants to help me. The alternative is to start writing a new mobile statistical package from the beginning. And although it should only maybe support 5% of the functionality of R, it would take a lot of time to do that. And I'd love to avoid that when good people has already done an amazing job :-).
People have proposed that and tried that long time ago, but I don't think anyone succeeded. Cheers, Simon
Cheers, Mikkel Meyer Andersen. [1]: http://finzi.psych.upenn.edu/Rhelp08/2009-February/187425.html [2]: http://developer.android.com/sdk/ndk/1.5_r1/index.html
______________________________________________ R-devel at r-project.org mailing list https://stat.ethz.ch/mailman/listinfo/r-devel