[Olsr-dev] ARM Telefon
Sven-Ola Tücke
(spam-protected)
Tue Aug 11 09:05:28 CEST 2009
Hey,
der olsrd ist doch eigentlich auf eine ARM CPU lauffaehig IMO? Ich richte mich
also auf meinem Handy ein und kompiliere. Jede Menge "src/ipcalc.c:164: error:
cast increases required alignment of target type" Warnungen. Laufen lassen
zeigt "BUS error". Mmmh, die Warnungen waren wohl Mahnungen.
Bisschen Pointerzaubern, dann sind die Warnungen weg. Kennt jemand den
Hintergrund (bin nicht so ARM-fit)? Ich meine sowas hier:
diff -r a651cc474e85 src/common/list.h
--- a/src/common/list.h Sun Aug 09 09:00:01 2009 +0200
+++ b/src/common/list.h Tue Aug 11 07:09:12 2009 +0000
@@ -136,7 +136,7 @@
{\
return( \
ptr ? \
- (structname *) (((uint8_t *) ptr) - offsetof(structname, listnodename))
: \
+ (structname *) (((size_t) ptr) - offsetof(structname, listnodename)) : \
NULL); \
}
diff -r a651cc474e85 src/lq_packet.h
--- a/src/lq_packet.h Sun Aug 09 09:00:01 2009 +0200
+++ b/src/lq_packet.h Tue Aug 11 07:09:12 2009 +0000
@@ -126,7 +126,7 @@
static INLINE void
pkt_get_u16(const uint8_t ** p, uint16_t * var)
{
- *var = ntohs(*(const uint16_t *)(*p));
+ *var = ntohs(**((const uint16_t **)p));
*p += sizeof(uint16_t);
}
static INLINE void
// Sven-Ola
More information about the Olsr-dev
mailing list