1. This site uses cookies. By continuing to use this site, you are agreeing to our use of cookies. Learn More.
  2. Dismiss Notice

Pandora Crosscompiler Toolchain Based On Openpandora.org Ipks

Discussion in 'General Discussions' started by ivanovic, Feb 14, 2012.

  1. Linux-SWAT

    Linux-SWAT Hardcore Member

    Joined:
    Feb 13, 2010
    Messages:
    8,031
    Can work.


    But from what i've read, using it all the time is bad because you can't predict the binary code quality.
     
  2. Ziz

    Ziz Advanced Member

    Joined:
    Sep 10, 2006
    Messages:
    1,584
    From http://gcc.gnu.org/onlinedocs/gcc/Optimize-Options.html :

    So, this doesn't do the big difference between O3 und Os for the gp2x. :)
     
  3. Pickle

    Pickle Mega GP Mania

    Joined:
    May 30, 2006
    Messages:
    5,387
    Location:
    Detroit, Michigan
    well im just going by my experiences with thing I ported years ago for the gp2x, i never used -Os that i can recall. Going from nothing to using -fomit-frame-pointer did have a noticeable effect.



    Code:
    			-Os			Optimize for size. -Os enables all -O2 optimizations that do not typically increase code size. It also performs further optimizations designed to reduce code size.		
    
    -Os disables the following optimization flags:		          -falign-functions  -falign-jumps  -falign-loops           -falign-labels  -freorder-blocks  -freorder-blocks-and-partition           -fprefetch-loop-arrays  -ftree-vect-loop-version		
    Based on that i would wonder if you saw the same jump from -O2 to -O3


    Of course all of this is really dependent on the code being compiled, for example your sparrow library does operations that most applications are not trying to do.
     
  4. Ziz

    Ziz Advanced Member

    Joined:
    Sep 10, 2006
    Messages:
    1,584
    Oh, okay, I thought you speak about the difference -Os and -O3. :)


    I never tried to activate just some optimizations. Only unsave optimization, even not enabled in -O3, I activate particular.
     
  5. foxblock

    foxblock Asleep

    Joined:
    Jun 17, 2009
    Messages:
    1,365
    Location:
    Germany
    For what it's worth, in my experience -O3 also behaved somewhat (aka 10-20%) faster than -Os (and -Os faster than -O2) on the Pandora, though sometimes I found code to be slightly more unstable (especially in combination with -ffast-math).
     
    Last edited by a moderator: Mar 2, 2012
  6. DrCJBoduma

    DrCJBoduma Active Member

    Joined:
    Jun 4, 2006
    Messages:
    500
    Location:
    England
    Quick question (and I realise that if I have to ask this question it probably means that I shouldn't even be trying to use this toolchain) :)


    I have gone through all the steps in you first post and it seems to have worked fine with no errors, but how do you actually start using it. :unsure:


    I'm trying to compile ENIGMA for the pandora and am hoping this toolchain might help me do so. I assume I can't just open up any terminal window and compile it using 'make' I have to sort of be in the toolchain environment.


    Sorry is this makes no sense and is a stupid question (I realise I am out of my depth) :D


    CJ
     
  7. Galaxis

    Galaxis Member

    Joined:
    Aug 30, 2010
    Messages:
    309
    I think loop unrolling is still quite effective on ARM (and -Os turns that off).
     
  8. ivanovic

    ivanovic Member

    Joined:
    Aug 17, 2006
    Messages:
    381
    Ah right, this somehow makes sense. There is just a tiny problem: I would have to create static binaries which might be rather large. And I'd have to upload those somewhere and got no webspace of my own (okay, I could probably use the pandora git for this stuff). Though the main problem is the creation of the completely static binaries.
     
  9. mcobit

    mcobit Advanced Member

    Joined:
    Jul 28, 2008
    Messages:
    6,755
    Just ask ED, I think he offers webspace for pandorarelated stuff :)
     
    Last edited by a moderator: Mar 6, 2012
  10. bzar

    bzar A Commando

    Joined:
    Sep 22, 2008
    Messages:
    4,433
    Location:
    Finland
    I recently switched my project to Qt 4.7 (will include libs in PND again...) for other reasons, so I'm using sebt's standalone Qt build. So no hurry for this from my perspective. But if someone wants to build Qt stuff with this toolchain that works with pandora's libraries, these would still be needed.
     
  11. sebt3

    sebt3 homebrew player (P. & C.)

    Joined:
    Sep 9, 2008
    Messages:
    4,738
    Location:
    France
    I'm installing CS arm-2011.09-70-arm-none-linux-gnueabi-i686-pc-linux-gnu.tar.bz2 like in your script, but I'm getting at link time :



    Code:
    
    /usr/local/angstrom/arm-2011.09/bin/../lib/gcc/arm-none-linux-gnueabi/4.6.1/../../../../arm-none-linux-gnueabi/bin/ld: cannot find /lib/libc.so.6
    
    /usr/local/angstrom/arm-2011.09/bin/../lib/gcc/arm-none-linux-gnueabi/4.6.1/../../../../arm-none-linux-gnueabi/bin/ld: cannot find /usr/lib/libc_nonshared.a
    
    /usr/local/angstrom/arm-2011.09/bin/../lib/gcc/arm-none-linux-gnueabi/4.6.1/../../../../arm-none-linux-gnueabi/bin/ld: cannot find /lib/ld-linux.so.3
    
    
    Any idea/fix ?
     
  12. Galaxis

    Galaxis Member

    Joined:
    Aug 30, 2010
    Messages:
    309
    openpandora_toolchain.sh works with minimal changes on Cygwin/Win7, btw. Didn't try to compile anything yet, but the toolchain installer completes without errors. I'll write something up later on if anyone is interested.


    Just a handfull of changes in the script itself: Replace TOOLCHAIN_URL and the other variables for Windows release, and the wget call needs an --no-check-certificate.


    Cygwin does not have a gpgme package, which is a prerequisite for building opkg. I have a quite complete Cygwin installation, but had to add things like pkg-config, ncurses, libgpg-error-devel, ond some other fairly obvious small suff. After building libassuan and gpgme with default settings, the newly compiled opkg binary threw some library error, and I had to run an rebaseall to get rid of that.
     
  13. TrashyMG

    TrashyMG Sarcasm Dispenser Staff Member

    Joined:
    Jan 18, 2010
    Messages:
    10,154
    loop unrolling being enabled made the difference of making the game Fachoda-Complex I ported over working at a decent speed and not..
     
    Last edited by a moderator: Mar 26, 2012
  14. mrdoc

    mrdoc Still Fresh

    Joined:
    Mar 9, 2012
    Messages:
    13
    I tried to install the sdk but I ge this output:



    Code:
    configure: error: pkg-config and glib-2.0 not found, please set GLIB_CFLAGS and GLIB_LIBS to the correct values
    
     ERROR: Configure for pkg-config failed, please check the output above

    I've installed pkg-config and glib-2.0 but nothing changed.
     
  15. Letalis Sonus

    Letalis Sonus Very Active Member

    Joined:
    Mar 5, 2009
    Messages:
    974
    You need their development packages.
     
  16. mrdoc

    mrdoc Still Fresh

    Joined:
    Mar 9, 2012
    Messages:
    13
    Ok I installed glib-2.0-dev and all pkg-config packages I've found but still the same crap :(


    Do I have to change something in the shell script?
     
  17. mrdoc

    mrdoc Still Fresh

    Joined:
    Mar 9, 2012
    Messages:
    13
    Ok I got it.


    Now I've installed all packages "on hand".


    I downloaded it manually and then "./configure, make, make install"
     
  18. shideneyu

    shideneyu Still Fresh

    Joined:
    Jan 31, 2011
    Messages:
    83
    When there is no ./configure file, how can we do to compile ?


    The project uses qmake;


    However, if i run "qmake" on my terminal, it will not use the qmake of this crosscompiler, but the qmake of my Ubuntu :(


    Can you help me pls? thanks =)
     
  19. sebt3

    sebt3 homebrew player (P. & C.)

    Joined:
    Sep 9, 2008
    Messages:
    4,738
    Location:
    France
  20. shideneyu

    shideneyu Still Fresh

    Joined:
    Jan 31, 2011
    Messages:
    83
    Oh Sebt3, you are here; thanks for your answer.


    I'm afraid that Ivanovic's compiler won't work. I have no clue how to proceed with what you told me ><


    I have no idea of what I have to do with what you gave me; thanks anyways ^^" May you explain me?


    I'm glad you are here, if you could help me, since you made another cross compiler;


    I'm working on a port of a game since 10 hours now, I think i went further with your cross compiler; I made a new topic in order not to flood this one
     
    Last edited by a moderator: Feb 6, 2016

Share This Page

Loading...