|
|
|
|
|
|
|
|
|
|
|
|
|
|
| Re: Raspberry (Raspbian) - ARM 6 Core + Ultimate++? [message #37048 is a reply to message #36976] |
Sat, 11 August 2012 10:50   |
|
|
I don't have Raspberry, but just for fun I tried to build a cross compile toolchain and build umk for arm. I followed this guide and then set up build method in TheIDE to use the toolchain. I noticed only two problems: First, the Core/config.h didn't recognize the architecture correctly, so I had to help it a little. Second problem was that I don't have the libraries for arm on my system. If you have raspbian installed, I think it should suffice to just copy the include and lib folders.
Because of the missing libraries the linking failed, but otherwise I think everything should work fine. Just my two cents 
Best regards,
Honza
|
|
|
|
| Re: Raspberry (Raspbian) - ARM 6 Core + Ultimate++? [message #37058 is a reply to message #37048] |
Sun, 12 August 2012 09:58   |
Wolfgang
Messages: 146 Registered: November 2011 Location: Germany
|
Experienced Member |
|
|
Okay, I tried and after installing some libs, changing two config files and after hours of compiling I got this:
| Quote: | idewin.cpp:(.text._ZN3IdeC2Ev+0x8e0): undefined reference to `Upp::CPU_Cores()'
collect2: ld returned 1 exit status
make[1]: *** [ide.out] Fehler 1
make[1]: Leaving directory `/home/wolfgang/upp.src/uppsrc'
|
This is the point there I don't know how to handle it..
[Updated on: Sun, 12 August 2012 09:59] Report message to a moderator
|
|
|
|
| Re: Raspberry (Raspbian) - ARM 6 Core + Ultimate++? [message #37059 is a reply to message #37058] |
Sun, 12 August 2012 11:20   |
|
|
The function is defined in Core/Cpu.cpp, like this:#ifdef CPU_X86
int CPU_Cores() {
static int n;
ONCELOCK {
// platform dependent code to find out number of cores
}
return n;
}
#else
inline int CPU_Cores() {
return 1;
}
#endif
It should never be undefined... Although the fallback to assuming one core is not really correct, it should work. At least for now.
My guess the problem is in the 'inline' keyword. Try removing that...
Honza
|
|
|
|
|
|
|
|
|
|
| Re: Raspberry (Raspbian) - ARM 6 Core + Ultimate++? [message #37076 is a reply to message #37062] |
Sat, 18 August 2012 16:37   |
Wolfgang
Messages: 146 Registered: November 2011 Location: Germany
|
Experienced Member |
|
|
Here's a short manual what to do... for the one who will compile it on raspberry: It takes hours, really!
Started theIde one time but until now I haven't found the time to try to create a projekt or compile a own projekt on the raspberry.
1.
I've used the tarball version:
http://www.ultimatepp.org/www$uppweb$nightly$en-us.html
....
First of all, we need some packages: libx11, libxft, libnotify, libgtk2.0, libbz2
apt-get install libx11-dev libxft-dev libnotify-dev libgtk2.0-dev libbz2-dev
2. Edit ./uppsrc/Core/config.h Line 91,
Change
#elif __arm // ToDo!
to
#elif __arm || __arm__ // ToDo
3. Edit /usr/include/glib-2.0/glib/gtypes.h Line 34,
Change
#include <glibconfig.h>
to
#include </usr/lib/arm-linux-gnueabihf/glib-2.0/include/glibconfig.h>
4. Linking gdkconfig.h
ln -s /usr/lib/arm-linux-gnueabihf/gtk-2.0/include/gdkconfig.h /usr/include/
5. Edit ./uppsrc/Core/Cpu.cpp Line 104,
Change
inline int CPU_Cores()
to
int CPU_Cores()
6. do a "make" and compile it!
[Updated on: Sat, 18 August 2012 16:38] Report message to a moderator
|
|
|
|
| Re: Raspberry (Raspbian) - ARM 6 Core + Ultimate++? [message #37077 is a reply to message #37076] |
Sat, 18 August 2012 17:41   |
|
|
Hi Wolfgang,
Congratulation on the successful build 
Points 2. and 5. should be committed to Core soon. Points 3. and 4. should be properly solved by editing include and lib path, respectively. When using tarball, just add the paths to CINC and LIBPATH variables at the beginning of uppsrc/Makefile.
I believe that compiling anything using U++ on Raspberry would be reaaally slow. Especially when using makefile (thus not using BLITZ) on single core processor. That is why cross compiling was invented 
Honza
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| Re: Raspberry (Raspbian) - ARM 6 Core + Ultimate++? [message #37196 is a reply to message #37195] |
Tue, 04 September 2012 18:45   |
Zbych
Messages: 332 Registered: July 2009
|
Senior Member |
|
|
X-server on RP uses fbuff driver and there is no hardware acceleration. Web browser page scrolling takes about a second or two. I guess that UWord will not perform to well either.
Only hope for fast graphics on RP is openGL ES lib (without x-server).
BTW I tried to compile UWord in TheIde on RP, but there wasn't enough RAM to finish compilation. Maybe I will try umk.
[Updated on: Tue, 04 September 2012 18:47] Report message to a moderator
|
|
|
|
|
|
| Re: Raspberry (Raspbian) - ARM 6 Core + Ultimate++? [message #37816 is a reply to message #37814] |
Wed, 14 November 2012 22:16   |
|
|
| NilaT wrote on Wed, 14 November 2012 21:11 | I downloaded the latest source and followed the instructions from page 1, but when I run make, I get an error which I don't understand.
It tells me:
CtrlCore/ImageX11.cpp:252:2: error: stray '@' in program
|
Hi NilaT,
You just had a bad luck in picking the nightly source Someone forgot a debug macro in source, which is in release mode defined as '@' (so that it is easy to notice - though it seems that nobody ever does ). It is already fixed, just grab a newer package tomorrow (or older, if you don't want to wait).
Best regards,
Honza
|
|
|
|
|
|
|
|
| Re: Raspberry (Raspbian) - ARM 6 Core + Ultimate++? [message #37955 is a reply to message #37926] |
Sat, 24 November 2012 20:21  |
Didier
Messages: 740 Registered: November 2008 Location: France
|
Contributor |
|
|
Hi wolfgang,
if you have U++ running on the Raspberry PI the half of the work is done : you all the bibs and the includes that you need to compile apps for the Raspberry PI.
Here is what I did to make a cross compile environment for the gumstix (ARM cortex-A8).
1 - Make a copy of /usr/lib and /usr/include from the Raspberry PI to you're computer ==> this is the easiest way to get all the compatible libs and includes.
2 - Compile a GCC suite for the ARM11
To do this I used open-embedded environnement. But you can try this
http://raspberrypi.stackexchange.com/questions/1/how-do-i-bu ild-a-gcc-4-7-toolchain-for-cross-compiling
3 - You need a correct U++ Build Method (xxx.BM files)
I have attached the one I use to cross compile towards cortex-A8
The important things to notice are :
- gcc name ( arm-angstrom-linux-gnueabi-g++ in my case )
- --sysroot=PATH_TO_COPIED_USR options added to compiler and linker (to tell gcc to use the wright libs)
- path to the gcc bins directly set
- -mcpu=cortex-a8 -mfpu=neon : options for cortex-A8
- remove SSE2 form the default options (SSE2 is not part of ARM instructions set)
4 - Report the corrections made to Upp code (/Core/Config.h) : add __arm__
5 - Some Upp pitfalls/bugs on ARM to be aware of :
MT does not work : apps get stuck in infinite loop on start ==> I didn't have time to look into it
This should help you start up quickly
[Updated on: Sat, 24 November 2012 20:35] Report message to a moderator
|
|
|
|