On Wednesday 22 January 2014 07:38, Joerg Wunsch wrote:
> > But the second patch 'stk500-256K-fix2.patch' in the second
> > post does apply to 6.0.1 for me - or are there more recent changes?:
>
> No, it applies fine.  It's just I missed it.
>
> Also, it works now.

That is good to know!

> I have done one change: static per-programmer data are discouraged.
> The idea behind is that the core of avrdude is built as a library, so
> other front-ends (namely, a GUI frontend) could eventually use them.
> As such, static data should rather be per-instance data for each
> programmer instance.  The "setup" and "teardown" methods are there to
> construct and destroy these per-instance data.  I have changed your
> implementation that way.

I had wondered whether the static data would be a problem - now it is clear 
how to handle that.

As an extra check, I took the patch from svn and applied to the original 
5.11.1 file here (one hunk by hand), re-compiled and ran through the 
bootloader program process as I was doing before, and can confirm it is 
successful/verifies correctly here and the ext-addr instructions can be seen 
correctly with the analyser.

Thanks for sorting this (and all the other avr work we rely on).

> As Alan Horstmann wrote:
> > I was using v5.11.1 since 6.0.1 doesn't build due to an extra
> > library requirement.
>
> Curious: what extra library requirement?
>
> libelf is not required albeit recommended so one could flash directly
> from the ELF files.

It is a version thing; configure finds it:
...
checking libelf.h usability... no
checking libelf.h presence... no
checking for libelf.h... no
checking libelf/libelf.h usability... yes
checking libelf/libelf.h presence... yes
checking for libelf/libelf.h... yes
...
but linking fails:
...
gcc -Wall -Wno-pointer-sign -g -O2   -o avrdude avrdude-main.o 
avrdude-term.o ./libavrdude.a  -lusb    -lelf -lpthread -lm -lreadline 
-lncurses
./libavrdude.a(libavrdude_a-fileio.o): In function `elf2b':
/home/alan/Programming/Arduino/Toolchain/CLI-build-tools/avr-dude/avrdude-6.0.1/fileio.c:957:
 
undefined reference to `elf_getshdrstrndx'
collect2: ld returned 1 exit status

>From my notes at the time, I discovered that symbol exists only in 0.8.11, and 
is a rename of a similar one added in 0.8.7.  On the system here I have 
0.8.5.  There didn't seem to be a way of disabling the use of libelf via 
configure option?  Perhaps at least a min version should be enforced?  I 
would expect any version older than 0.8.11 to fail in this way.

Regards

Alan

_______________________________________________
avrdude-dev mailing list
[email protected]
https://lists.nongnu.org/mailman/listinfo/avrdude-dev

Reply via email to