gcc. windows dev kit, binary size & the whole ordeal (discussion here)

  • 48 Replies
  • 16104 Views
*

Offline fbonomi

  • ****
  • 469
  • A570IS SD1100/Ixus80
    • Francesco Bonomi
Advertisements
edit by PhP: discussion split from here

Geekmug, thanks for the detailed guide.

bit I am afraid there's a snake biting its own tail there ....

I explain my situation: I have on my PC the "bundled" gcc (3.2.3)

I wanted to update gcc to 4 (I get error compiling for the SD1100 patch, I guess I need a more recent gcc.)

So, I find your nice little guide and I say "wow!"

To clean my system, I remove my old gcc from path (so I pretend not to have any gcc)

I download binutils, expand it and follow your instructions, up to where it says to run configure but i get the error "configure: error: no acceptable C compiler found in $PATH"

I say fine, I will reverse Geekmug's instructions, and first install gcc-4.3.2 and then use it to compile

But then I get the same error:"configure: error: no acceptable C compiler found in $PATH"

So, for a user that has no gcc compiler on its machine, I am afraid your sequence is not usable :-(
« Last Edit: 27 / October / 2008, 04:25:22 by PhyrePhoX »

*

Offline whim

  • ******
  • 2013
  • A495/590/620/630 ixus70/115/220/230/300/870 S95
Re: the collaborative CHDK build
« Reply #1 on: 26 / October / 2008, 07:37:14 »
@fbonomi

Shoudn't a compatible GCC be installed when you DL/install your cygwin ?
Geekmug's tutorial worked fine for me, literally following it.
I did notice while playing with this, that cygwin never overwrites its' initialisation files,
i.e. if you already have a cygwin, then install another the init scripts still refer to the
first installation, messing up various paths ...

wim

PS i guess this also makes it hard to create a 'ready-made' devkit based on gcc 4+ ...
     i hope Geekmug (or anyone,or at matter) can come up with a mingw version, so that
     windows CHDK compiling can be dragged into the gcc4 age ...
« Last Edit: 26 / October / 2008, 07:41:38 by whim »

*

Offline fbonomi

  • ****
  • 469
  • A570IS SD1100/Ixus80
    • Francesco Bonomi
Re: the collaborative CHDK build
« Reply #2 on: 26 / October / 2008, 07:43:27 »
mmhh... I think it doesn't, as I can't  find any gcc in all the cygwin folder (apart the ones in /tmp, of cource)

*

Offline whim

  • ******
  • 2013
  • A495/590/620/630 ixus70/115/220/230/300/870 S95
Re: the collaborative CHDK build
« Reply #3 on: 26 / October / 2008, 07:53:05 »
even after doing this ?

Quote
(from Geekmug's page)
Beyond the default install items, you will need to add the following packages:

    * Devel
          o binutils
          o gcc
          o make
          o subversion
    * Libs
          o libgmp-devel
          o libmpfr-devel

in my cygwin install (in C:\cygwin) gcc.exe is in C:\cygwin\bin

wim

edit: spelling .. my notebooks keyboard s*cks  :D
« Last Edit: 26 / October / 2008, 08:02:09 by whim »


*

Offline fbonomi

  • ****
  • 469
  • A570IS SD1100/Ixus80
    • Francesco Bonomi
Re: the collaborative CHDK build
« Reply #4 on: 26 / October / 2008, 08:53:31 »
oh, damn!!!!
my apologies!!
/tries again

*

Offline reyalp

  • ******
  • 10069
Re: the collaborative CHDK build
« Reply #5 on: 26 / October / 2008, 15:46:54 »
My build with GCC 4.3.2 (and mtune=arm946e-s) is almost 10k smaller than the one produced by the windows environment from the wiki. I'm not sure if this is a result of compiler improvement, compiling specifically for the 946e-s, or something else.

It appears to work, although I haven't tested it too much. If this isn't a result of an error of some kind, it would be a good reason to switch.
Don't forget what the H stands for.

*

Offline whim

  • ******
  • 2013
  • A495/590/620/630 ixus70/115/220/230/300/870 S95
Re: the collaborative CHDK build
« Reply #6 on: 26 / October / 2008, 17:26:01 »
@reyalp

i can confirm this, also got binaries ~ 10k smaller on A620, 630 and ixus70_sd1000 - and they worked.
It looks like we need a cygwin/mingw guru to cook us a new devkit  :D

wim

*

Offline fe50

  • ******
  • 3038
  • IXUS50 & 860, SX10 Star WARs-Star RAWs
    • fe50
Re: the collaborative CHDK build
« Reply #7 on: 26 / October / 2008, 17:36:38 »
i can confirm this, also got binaries ~ 10k smaller on A620, 630 and ixus70_sd1000 - and they worked.
It looks like we need a cygwin/mingw guru to cook us a new devkit  :D

What about free mem - any changes, could we benefit there, too ?


*

Offline whim

  • ******
  • 2013
  • A495/590/620/630 ixus70/115/220/230/300/870 S95
Re: the collaborative CHDK build
« Reply #8 on: 26 / October / 2008, 18:19:32 »
@fe50

sorry for delay - had to find the builds.  trunk531 (0.6.0)

checked with ps.fir method on A620:
gcc 3.x toolchain -> PS.FIR=244.784, mem free=466.820
gcc 4.x toolchain -> PS.FIR=235.572, mem free=475.348

wim

edit: gcc 4.x was ~50% slower, and a lot stricter, here's my warning/error log (no warnings on gcc 3.x !)

Quote
========== C:\CYGWIN\TRUNK\TRUNK531\BIN\LOGS\ERR-A620-100F.TXT ==========

gensig.c: In function `main':
gensig.c:310: warning: unsigned int format, long unsigned int arg (arg 4)
gensig.c:310: warning: unsigned int format, uint32_t arg (arg 5)
gensig.c:310: warning: unsigned int format, long unsigned int arg (arg 4)
gensig.c:310: warning: unsigned int format, uint32_t arg (arg 5)
gensig.c:311: warning: unsigned int format, long unsigned int arg (arg 5)
gensig.c:311: warning: unsigned int format, long unsigned int arg (arg 5)
gensig.c:327: warning: int format, uint32_t arg (arg 3)
gensig.c:327: warning: int format, uint32_t arg (arg 3)
finsig.c: In function `main':
finsig.c:149: warning: int format, long unsigned int arg (arg 2)
finsig.c:149: warning: int format, long unsigned int arg (arg 2)
finsig.c:151: warning: unsigned int format, uint32_t arg (arg 3)
finsig.c:151: warning: unsigned int format, uint32_t arg (arg 3)
finsig.c:154: warning: unsigned int format, uint32_t arg (arg 3)
finsig.c:154: warning: int format, uint32_t arg (arg 4)
finsig.c:154: warning: int format, uint32_t arg (arg 5)
finsig.c:154: warning: unsigned int format, uint32_t arg (arg 3)
finsig.c:154: warning: int format, uint32_t arg (arg 4)
finsig.c:154: warning: int format, uint32_t arg (arg 5)
rbf_font.c: In function 'rbf_load_from_8x16':
rbf_font.c:213: warning: pointer targets in passing argument 2 of 'rbf_assign_char_8x16' differ in signedness
gui_fselect.c: In function 'fselect_marked_paste_cb':
gui_fselect.c:658: warning: 'sd' may be used uninitialized in this function
gui.c:177: warning: 'gui_tv_exposure_order_enum' used but never defined
gui.c:178: warning: 'gui_av_exposure_order_enum' used but never defined
gui.c:179: warning: 'gui_iso_exposure_order_enum' used but never defined
raw.c: In function 'set_raw_pixel':
raw.c:119: warning: pointer targets in initialization differ in signedness
raw.c: In function 'get_raw_pixel':
raw.c:134: warning: pointer targets in initialization differ in signedness
« Last Edit: 27 / October / 2008, 03:09:57 by whim »

*

Offline fe50

  • ******
  • 3038
  • IXUS50 & 860, SX10 Star WARs-Star RAWs
    • fe50
Re: the collaborative CHDK build
« Reply #9 on: 27 / October / 2008, 04:13:17 »

 

Related Topics