OESF Portables Forum

Model Specific Forums => Sharp Zaurus => Zaurus - pdaXrom => Topic started by: wrc4 on May 19, 2006, 01:21:11 am

Title: Beginner's Cross Compile Question
Post by: wrc4 on May 19, 2006, 01:21:11 am
I'm trying the SDK tutorial at http://www.pdaxrom.org/index.php?showid=35&menuid=1 (http://www.pdaxrom.org/index.php?showid=35&menuid=1)

I tried the newvox sample on my SuSE Linux10(x86) host. I'm using the C750 SDK and it seemed changed a little bit, so I adjusted the commandline provided in tutorial like this:

LDFLAGS="-Wl,-rpath-link,/opt/cross/arm/3.4.5-xscale-softvfp/armv5tel-cacko-linux/X11R6/lib" ./configure --host=armv5tel-cacko-linux --build=i686-linux --x-includes=/opt/cross/arm/3.4.5-xscale-softvfp/armv5tel-cacko-linux/X11R6/include --x-libraries=/opt/cross/arm/3.4.5-xscale-softvfp/armv5tel-cacko-linux/X11R6/lib --disable-debug --prefix=/usr/local

I'm not sure about the /X11R6/ part because I can't find it in the SDK folder. Anyway, the output is as follows:

checking whether the C compiler (gcc  -Wl,-rpath-link,/opt/cross/arm/3.4.5-xscale-softvfp/armv5tel-cacko-linux/X11R6/lib) works... yes
checking whether the C compiler (gcc  -Wl,-rpath-link,/opt/cross/arm/3.4.5-xscale-softvfp/armv5tel-cacko-linux/X11R6/lib) is a cross-compiler... no
checking whether we are using GNU C... yes
checking whether gcc accepts -g... yes
checking for sdl-config... /opt/cross/arm/3.4.5-xscale-softvfp/bin/sdl-config
checking for SDL - version >= 1.0.1... no
*** Could not run SDL test program, checking why...
*** The test program failed to compile or link. See the file config.log for the
*** exact error that occured. This usually means SDL was incorrectly installed
*** or that you have moved SDL since it was installed. In the latter case, you
*** may want to edit the sdl-config script: /opt/cross/arm/3.4.5-xscale-softvfp/bin/sdl-config
configure: error: *** SDL version 1.0.1 not found!

It seems like the compiler is working. But it says "no" on:
checking whether the C compiler (gcc  -Wl,-rpath-link,/opt/cross/arm/3.4.5-xscale-softvfp/armv5tel-cacko-linux/X11R6/lib) is a cross-compiler.

Am I using the wrong parameters?

Also, do I need to compile SDL before compiling newvox? The SDK installation page says the SDK contains SDL, though.
Title: Beginner's Cross Compile Question
Post by: pgas on May 19, 2006, 01:59:06 am
better tutorials:
https://www.oesf.org/index.php?title=Pdaxro...oss_Compilation (https://www.oesf.org/index.php?title=Pdaxrom:_Cross_Compilation)
https://www.oesf.org/index.php?title=Pdaxro...te_An_Ipk_Howto (https://www.oesf.org/index.php?title=Pdaxrom:_Create_An_Ipk_Howto)

The X11 headers and libs are together with the other headers and libs so you shouldn't have to set the x includes and library path
Title: Beginner's Cross Compile Question
Post by: pgas on May 19, 2006, 02:02:33 am
did you run /opt/cros..../runsdk before running the configure script?
Title: Beginner's Cross Compile Question
Post by: anunakin on May 19, 2006, 08:25:03 am
Install new cross SDK....
Title: Beginner's Cross Compile Question
Post by: wrc4 on May 19, 2006, 10:40:39 am
Thanks for the hints. Will try next Monday.

BTW, I'm thinking about having a Linux on my laptop(so I can try this at home). Is Debian the best choice? I only want to do pdaXrom cross-compiling and maybe some PIM apps. Is a Live-CD a good idea? (My laptop doesn't have much free disk spaces)
Title: Beginner's Cross Compile Question
Post by: omro on May 19, 2006, 06:06:34 pm
Quote
Thanks for the hints. Will try next Monday.

BTW, I'm thinking about having a Linux on my laptop(so I can try this at home). Is Debian the best choice? I only want to do pdaXrom cross-compiling and maybe some PIM apps. Is a Live-CD a good idea? (My laptop doesn't have much free disk spaces)
[div align=\"right\"][{POST_SNAPBACK}][/a][/div] (http://index.php?act=findpost&pid=127766\")

This might help

[a href=\"http://www.linuxforums.org/desktop/a_linux_distribution_for_an_old_laptop.html]link[/url]
Title: Beginner's Cross Compile Question
Post by: karlto on May 21, 2006, 03:39:59 pm
Quote
Thanks for the hints. Will try next Monday.

BTW, I'm thinking about having a Linux on my laptop(so I can try this at home). Is Debian the best choice? I only want to do pdaXrom cross-compiling and maybe some PIM apps. Is a Live-CD a good idea? (My laptop doesn't have much free disk spaces)
[div align=\"right\"][a href=\"index.php?act=findpost&pid=127766\"][{POST_SNAPBACK}][/a][/div]
Why not use the pdaXrom X86 live CD? It is built for just this.
Title: Beginner's Cross Compile Question
Post by: wrc4 on May 22, 2006, 02:43:38 am
Quote
Quote
Thanks for the hints. Will try next Monday.

BTW, I'm thinking about having a Linux on my laptop(so I can try this at home). Is Debian the best choice? I only want to do pdaXrom cross-compiling and maybe some PIM apps. Is a Live-CD a good idea? (My laptop doesn't have much free disk spaces)
[div align=\"right\"][a href=\"index.php?act=findpost&pid=127766\"][{POST_SNAPBACK}][/a][/div]
Why not use the pdaXrom X86 live CD? It is built for just this.
[div align=\"right\"][a href=\"index.php?act=findpost&pid=127987\"][{POST_SNAPBACK}][/a][/div]

I end up using the pdaXrom VMWare image. For me, It's convenient than the LiveCD because I can take the development environment with me between office and home. (I copied the whole image files to a 512M USB thumb drive.)

Many thanks to pgas! I successfully built my first Z application (hello) following the new guide you suggested. I'm still trying to build other apps to learn more before I can build something really useful.
Title: Beginner's Cross Compile Question
Post by: wrc4 on May 22, 2006, 04:28:03 am
Quote
better tutorials:
https://www.oesf.org/index.php?title=Pdaxro...oss_Compilation (https://www.oesf.org/index.php?title=Pdaxrom:_Cross_Compilation)
https://www.oesf.org/index.php?title=Pdaxro...te_An_Ipk_Howto (https://www.oesf.org/index.php?title=Pdaxrom:_Create_An_Ipk_Howto)

The X11 headers and libs are together with the other headers and libs so you shouldn't have to set the x includes and library path
[div align=\"right\"][a href=\"index.php?act=findpost&pid=127692\"][{POST_SNAPBACK}][/a][/div]

Still have problems: I was following the steps in the tutorials exactly but ended up with a 80386 version of the "links" program.

When I executed ...runsdk.sh and input:
"CC=armv5tel-cacko-linux-gcc ./configure --host=armv5tel-cacko-linux --build=i686-linux --enable-graphics --enable-javascript"

The output had somelike this:
    ...
    checking for gcc... (cached) gcc
    checking whether the c compiler (gcc ) works ... yes
    checking whether the c compiler (gcc ) is a cross compiler ... no
    ...

I think this is where my problem is--the program is still using gcc instead of armv5tel-cacko-linux-gcc. What should I do to fix this?
Title: Beginner's Cross Compile Question
Post by: wrc4 on May 22, 2006, 04:44:34 am
Quote
Quote
better tutorials:
https://www.oesf.org/index.php?title=Pdaxro...oss_Compilation (https://www.oesf.org/index.php?title=Pdaxrom:_Cross_Compilation)
https://www.oesf.org/index.php?title=Pdaxro...te_An_Ipk_Howto (https://www.oesf.org/index.php?title=Pdaxrom:_Create_An_Ipk_Howto)

The X11 headers and libs are together with the other headers and libs so you shouldn't have to set the x includes and library path
[div align=\"right\"][a href=\"index.php?act=findpost&pid=127692\"][{POST_SNAPBACK}][/a][/div]

Still have problems: I was following the steps in the tutorials exactly but ended up with a 80386 version of the "links" program.

When I executed ...runsdk.sh and input:
"CC=armv5tel-cacko-linux-gcc ./configure --host=armv5tel-cacko-linux --build=i686-linux --enable-graphics --enable-javascript"

The output had somelike this:
    ...
    checking for gcc... (cached) gcc
    checking whether the c compiler (gcc ) works ... yes
    checking whether the c compiler (gcc ) is a cross compiler ... no
    ...

I think this is where my problem is--the program is still using gcc instead of armv5tel-cacko-linux-gcc. What should I do to fix this?
[div align=\"right\"][a href=\"index.php?act=findpost&pid=128023\"][{POST_SNAPBACK}][/a][/div]

Deleted the config.cache file and things seemed going well. (Looks like I have a long way to go...  )
Title: Beginner's Cross Compile Question
Post by: Raul on May 22, 2006, 11:16:51 am
Quote
Install new cross SDK....
[div align=\"right\"][a href=\"index.php?act=findpost&pid=127739\"][{POST_SNAPBACK}][/a][/div]
Where could we find it?

Kind regards,
Raul
Title: Beginner's Cross Compile Question
Post by: anunakin on May 22, 2006, 12:24:26 pm
Quote
Quote
Install new cross SDK....
[div align=\"right\"][{POST_SNAPBACK}][/a][/div] (http://index.php?act=findpost&pid=127739\")
Where could we find it?

Kind regards,
Raul
[div align=\"right\"][a href=\"index.php?act=findpost&pid=128070\"][{POST_SNAPBACK}][/a][/div]

Documentation:
[a href=\"https://www.oesf.org/index.php?title=Pdaxrom:_Cross_Compilation]Pdaxrom:_Cross_Compilation[/url]

Lastest Cross SDK:
cross-sdk-armv5tel-cacko-linux-3.4.6-2.2.5-softfloat.tar.bz2 (http://mail.pdaxrom.org/contrib/1.1.0beta3/Zaurus-7x0-860/cross-sdk-armv5tel-cacko-linux-3.4.6-2.2.5-softfloat.tar.bz2)
Title: Beginner's Cross Compile Question
Post by: Raul on May 23, 2006, 10:14:32 am
Quote
Lastest Cross SDK:
cross-sdk-armv5tel-cacko-linux-3.4.6-2.2.5-softfloat.tar.bz2 (http://mail.pdaxrom.org/contrib/1.1.0beta3/Zaurus-7x0-860/cross-sdk-armv5tel-cacko-linux-3.4.6-2.2.5-softfloat.tar.bz2)
[div align=\"right\"][a href=\"index.php?act=findpost&pid=128081\"][{POST_SNAPBACK}][/a][/div]
Does it matter if it's for C7xx or Cxxx series? I have C3100 myself
Title: Beginner's Cross Compile Question
Post by: pgas on May 24, 2006, 01:51:18 am
Quote
Lastest Cross SDK:
cross-sdk-armv5tel-cacko-linux-3.4.6-2.2.5-softfloat.tar.bz2
Does it matter if it's for C7xx or Cxxx series? I have C3100 myself
no. binaries built with newer version of the sdk might not run on older pdaxrom release though.
Title: Beginner's Cross Compile Question
Post by: Raul on May 24, 2006, 06:23:56 am
I cannot download files from pdaxrom page - page not found error. I will send e-mail to sash about it.
Title: Beginner's Cross Compile Question
Post by: enlightened_j on May 24, 2006, 07:58:43 pm
Can someone post a link to the VMWare image?  I can't seem to find it on the pdaxrom.com website.

Thanks.
Title: Beginner's Cross Compile Question
Post by: pgas on May 25, 2006, 01:20:47 am
here:
http://mail.pdaxrom.org/download/1.1.0beta1/pdaX86/vmware/ (http://mail.pdaxrom.org/download/1.1.0beta1/pdaX86/vmware/)

no that I had a little trouble to build beta3 using this. (you need to replace the iconf.h from the native i686 toolchain with the one form the arm toolchain you build)

but it should be fine if you use the sdk, not that you should be able to use any linux distro to use the sdk.
Title: Beginner's Cross Compile Question
Post by: enlightened_j on May 25, 2006, 10:41:30 am
Quote
here:
http://mail.pdaxrom.org/download/1.1.0beta1/pdaX86/vmware/ (http://mail.pdaxrom.org/download/1.1.0beta1/pdaX86/vmware/)

no that I had a little trouble to build beta3 using this. (you need to replace the iconf.h from the native i686 toolchain with the one form the arm toolchain you build)

but it should be fine if you use the sdk, not that you should be able to use any linux distro to use the sdk.
[div align=\"right\"][a href=\"index.php?act=findpost&pid=128362\"][{POST_SNAPBACK}][/a][/div]

Thanks.  I have been trying desperately to build pdaXrom for 6000.  I first tried Beta1 using the iso and the last builder for beta1, but I run into xkbcomp problem I posted in a different thread.

I then tried Beta4 and Beta3, but none finished building the rom.  I really want to get the pdaXrom building 6000, but it's not looking too good so far.  I have read the cross-compile how-to in mentioned in this thread, played with OpenEmbedded, and done some work with crosstool for TI OMAP, but none required XFree.  XFree is giving me quiet a lot of grief when compiling.  

Anyonoe know a good XFree86 cross compile tutorial?  
Thanks.
Title: Beginner's Cross Compile Question
Post by: Xromer on May 29, 2006, 08:36:19 am
I began trying all the configuration possibilities for cross-compiling including the various SDK and Builders.
Beginning to say that the only normal compilation of the Opens Environment like KDE, Gnome, GTK+ it' s a big trick, the Cross-Compilation resulted for me only on a big configure-Makefile hack training.
But finally i got to a good compromise.
I did this:
1) Extracted the PdaXrom Env and chrooted to it, without the need of Vmware Image or Other.
2) Installed the Builder into the Env and begin to edit the rules-ipk files for the New Packages.
Now, why compile with the Env?
The answer it's logical, you should have the Building Host Configuration as much as possible near to the Target you have to compile for.
Now, i saw that building with the SDK misses some Builder ENV variable settings that makes a little difference  for a good result in compilation.
I' m trying to understand what' s this difference, to use the SDK the time i have to do a on-the-fly compilation.
So, logically, the Builder rules-ipk use it' s better, also because it' s completely automatic.
THX Sahsz.
Sometimes happens that configure tries to execute an Arm Native command to understand some library,binary or header ver.
Now if you can investigate it manually in the armv5tel DIR, you can overcome this issue hacking configure itself.
An example could be some errors due to a cross-compiling test.
I.E. Could not execute SOMETHING while cross compiling.
You have to put the : command in the cross-compilation test as:
if test cross-compiling = "yes" then
:
else
blablabla
fi

And set the variable before this statement to make configure have always all the variable set.
Logically there are some situations where a cross-compilation it' s impossible, due to a need of native command execution needed.
But until here i found only one case.
Hope this help, because as you i' m a beginner in the cross-compilation world and there are some very deep code implications in this kind of stuff.
BYEZ!!

Note: Remember that all the commands that need to deal with the proc DIR will give you error as you are in a chrooted Env.
Logically a Dedicated machine with PdaXrom.Iso it' s better.