<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML><HEAD>
<META http-equiv=Content-Type content="text/html; charset=iso-8859-1">
<META content="MSHTML 6.00.6001.18063" name=GENERATOR>
<STYLE></STYLE>
</HEAD>
<BODY bgColor=#ffffff>
<DIV><FONT face=Arial size=2>
<DIV><FONT size=2><FONT face=Arial>> Hi,<BR><BR>> if you expect proper
error analysis: you need to provide good info. As a rule <BR>> of thumb:
rubbish in - rubbish out. <BR></FONT>O</FONT><FONT size=3><FONT face=Arial
size=2>K :). So let's try "rubbish in" method ;) (hopping I'll receive a rubbish
out :p)</FONT></FONT></DIV>
<DIV><FONT face=Arial size=2></FONT> </DIV><FONT size=3><FONT face=Arial
size=2>
<DIV>First of all, I've to mention that I've "quickly" read all the archives
till 2004 and found some usefull tips but:</DIV>
<DIV>-english isn't my mother tongue (but I think you've noticed this small
detail reading my mail ;) )</DIV>
<DIV>-even if I'm involved in computer's stuff, I didn't understand everything
:)...</DIV>
<DIV>-I've not found the "OLSRD page for dummies" (i'll maybe write it 8) -
think I could be helpfull...)</DIV>
<DIV>-however I've found a working implementation of olsrd (0.5.0) for
windows mobile and successfully test it on mobile 2003, 2006 on different
devices (mostly iPaqs & HTCs). It works well and I can communicate with
PC and eeePC (running olsrd 0.5.5).</DIV>
<DIV>-my goal: compile the new version for win32 and wince to have the same
version running on all devices. It seams to be the only way to have the new
compiled version for wince cause I don't find it on the Web (let me know if I'm
wrong). In fact, at this time, I'm just an "end-user" who wanna be "up-to-date"
:)...</DIV>
<DIV> </DIV>
<DIV>> As a guess: You try to compile for windows-ce - but haven't found the
"make <BR>> OS=xxx" switch? The ./make/Makefile.* do not work as top level
makefiles...<BR>I've found the "make OS=wince" and the "make OS=win32" but I had
the following message under cygwin:</DIV>
<DIV>"make: *** No targets specified and no makefile found. Stop."</DIV>
<DIV>But It was before discovering that I've some parameters to put in the
PATH... :/</DIV>
<DIV> </DIV>
<DIV>So, now:</DIV>
<DIV>I've setup cygwin with ALL packages and especially all devel packages
(hundreds of MB...I don't know what's necessary...).</DIV>
<DIV>I've also download Cegcc 0.51.0 (cygwin-cegcc-cegcc-0.51.0-1.tar.gz and
cygwin-cegcc-mingw32ce-0.51.0-1.tar.gz) and setup it in the opt directory
(c:\cygwin\opt). Finally, I've got 2 subdirectories in opt: cegcc and
mingw32ce.</DIV>
<DIV>After that, I put the directories in my path (export
PATH=$PATH:/opt/cegcc/bin:/opt/mingw32ce/bin).</DIV>
<DIV> </DIV>
<DIV>Finally, I've unpacked olsrd 0.5.0 version in my home directory in cygwin
(c:\cygwin\home\administrator).</DIV>
<DIV>With the following commands, I've obtained the binaries...</DIV>
<DIV>make OS=win32</DIV>
<DIV>make install OS=win32</DIV>
<DIV> </DIV>
<DIV>But after a "make clean", when I've tried "make OS=wince", I've got the
following error message:</DIV>
<DIV>$ make OS=wince<BR>make -C src/cfgparser<BR>make[1]: Entering directory
`/home/Administrateur/src/cfgparser'<BR>cc -Wall -Wmissing-prototypes
-Wstrict-prototypes -Wmissing-declarations -Wsign-<BR>compare -O2 -g -MD -Isrc
-I../../src -Isrc/win32 -Isrc/win32/ce -DWIN32
-DWINCE<BR> -DMAKELIB -c -o olsrd_conf.o olsrd_conf.c<BR>In
file included from
../../src/olsr_protocol.h:50,<BR>
from
olsrd_conf.h:46,<BR>
from olsrd_conf.c:52:<BR>../../src/olsr_types.h:97: error: field `v6' has
incomplete type<BR>In file included from
olsrd_conf.h:46,<BR>
from olsrd_conf.c:52:<BR>../../src/olsr_protocol.h:235: error: field
`neigh_addr' has incomplete type<BR>../../src/olsr_protocol.h:271: error: field
`addr' has incomplete type<BR>../../src/olsr_protocol.h:312: error: field `addr'
has incomplete type<BR>../../src/olsr_protocol.h:346: error: field `addr' has
incomplete type<BR>../../src/olsr_protocol.h:347: error: field `netmask' has
incomplete type<BR>../../src/olsr_protocol.h:392: error: field `originator' has
incomplete type<BR>In file included from
../../src/olsr_cfg.h:93,<BR>
from
olsrd_conf.h:47,<BR>
from olsrd_conf.c:52:<BR>../../src/interfaces.h:133: error: field `int6_addr'
has incomplete type<BR>../../src/interfaces.h:134: error: field `int6_multaddr'
has incomplete type<BR>olsrd_conf.c: In function
`olsrd_sanity_check_cnf':<BR>olsrd_conf.c:188: error: `AF_INET6' undeclared
(first use in this function)<BR>olsrd_conf.c:188: error: (Each undeclared
identifier is reported only once<BR>olsrd_conf.c:188: error: for each function
it appears in.)<BR>olsrd_conf.c: In function
`get_default_if_config':<BR>olsrd_conf.c:487: error: storage size of 'in6' isn't
known<BR>olsrd_conf.c:499: error: `AF_INET6' undeclared (first use in this
function)<BR>olsrd_conf.c:500: error: invalid application of `sizeof' to
incomplete type `in6<BR>_addr'<BR>olsrd_conf.c:503: error: invalid application
of `sizeof' to incomplete type `in6<BR>_addr'<BR>olsrd_conf.c:487: warning:
unused variable `in6'<BR>olsrd_conf.c: In function
`olsrd_print_cnf':<BR>olsrd_conf.c:544: error: `AF_INET6' undeclared (first use
in this function)<BR>make[1]: *** [olsrd_conf.o] Error 1<BR>make[1]: Leaving
directory `/home/Administrateur/src/cfgparser'<BR>make: *** [cfgparser] Error
2<BR></DIV>
<DIV>So, in my home directory, I've deleted all the files exepted .bash_profile
and .bashrc.I've unpacked the 0.5.6-rc4 version and, after a new "make clean"
(uselesss ???) tried again the commands with the following results:</DIV>
<DIV>Make OS=win32</DIV>
<DIV> </DIV>
<DIV>....</DIV>
<DIV>/usr/bin/ccache gcc -Wall -Wextra -Wold-style-definition
-Wdeclaration-after-statement -Wmissing-prototypes -Wstrict-prototypes
-Wmissing-declarations -Wsign-compare -Waggregate-return -Wmissing-noreturn
-Wmissing-format-attribute -Wno-multichar -Wno-deprecated-declarations
-Wendif-labels -Wwrite-strings -Wbad-function-cast -Wpointer-arith -Wcast-qual
-Wnested-externs -Winline -Wdisabled-optimization -finline-functions-called-once
-fomit-frame-pointer -finline-limit=350 -mno-cygwin
-Isrc -DUSE_FPM -DWIN32 -D_WIN32_WINNT=0x0600 -I./src/win32
-DNDEBUG -c -o src/tc_set.o src/tc_set.c<BR>src/tc_set.c: In
function `olsr_calculate_tc_border':<BR>src/tc_set.c:752: error: structure has
no member named `in6_u'<BR>src/tc_set.c:754: error: structure has no member
named `in6_u'<BR>src/tc_set.c:756: error: structure has no member named
`in6_u'<BR>src/tc_set.c:768: error: structure has no member named
`in6_u'<BR>src/tc_set.c:770: error: structure has no member named
`in6_u'<BR>src/tc_set.c:772: error: structure has no member named
`in6_u'<BR>make: *** [src/tc_set.o] Error 1</DIV>
<DIV> </DIV>
<DIV>make clean</DIV>
<DIV>make OS=wince</DIV>
<DIV> </DIV>
<DIV>/usr/bin/ccache gcc -Wall -Wextra -Wold-style-definition
-Wdeclaration-after-statement -Wmissing-prototypes -Wstrict-prototypes
-Wmissing-declarations -Wsign-compare -Waggregate-return -Wmissing-noreturn
-Wmissing-format-attribute -Wno-multichar -Wno-deprecated-declarations
-Wendif-labels -Wwrite-strings -Wbad-function-cast -Wpointer-arith -Wcast-qual
-Wnested-externs -Winline -Wdisabled-optimization -finline-functions-called-once
-fomit-frame-pointer -finline-limit=350 -Isrc -DUSE_FPM
-DWIN32 -DWINCE -Isrc/win32 -Isrc/win32/ce -DNDEBUG -c -o
src/common/avl.o src/common/avl.c<BR>In file included from
src/win32/netinet/in.h:46,<BR>
from
src/olsr_types.h:87,<BR>
from
src/ipcalc.h:44,<BR>
from
src/common/avl.c:47:<BR>/usr/lib/gcc/i686-pc-cygwin/3.4.4/../../../../include/w32api/winsock2.h:103:2:
warning: #warning "fd_set and associated macros have been defined in
sys/types.<BR> This may cause runtime problems with W32
sockets"<BR>In file included from
src/win32/netinet/in.h:47,<BR>
from
src/olsr_types.h:87,<BR>
from
src/ipcalc.h:44,<BR>
from src/common/avl.c:47:<BR>src/win32/ce/ws2tcpip.h:24: error: redefinition of
`struct sockaddr_storage'<BR>In file included from
src/defs.h:46,<BR>
from
src/ipcalc.h:45,<BR>
from src/common/avl.c:47:<BR>src/win32/sys/time.h:90: error: conflicting types
for 'nanosleep'<BR>/usr/include/time.h:171: error: previous declaration of
'nanosleep' was here<BR>src/win32/sys/time.h:90: error: conflicting types for
'nanosleep'<BR>/usr/include/time.h:171: error: previous declaration of
'nanosleep' was here<BR>In file included from
src/defs.h:53,<BR>
from
src/ipcalc.h:45,<BR>
from src/common/avl.c:47:<BR>src/win32/unistd.h:49: error: conflicting types for
'srandom'<BR>/usr/include/cygwin/stdlib.h:28: error: previous declaration of
'srandom' was here<BR>src/win32/unistd.h:49: error: conflicting types for
'srandom'<BR>/usr/include/cygwin/stdlib.h:28: error: previous declaration of
'srandom' was here<BR>src/win32/unistd.h:50: error: conflicting types for
'random'<BR>/usr/include/cygwin/stdlib.h:27: error: previous declaration of
'random' was here<BR>src/win32/unistd.h:50: error: conflicting types for
'random'<BR>/usr/include/cygwin/stdlib.h:27: error: previous declaration of
'random' was here<BR>In file included from
src/common/avl.c:47:<BR>src/ipcalc.h:51: error: `INET6_ADDRSTRLEN' undeclared
here (not in a function)<BR>src/ipcalc.h:51: error: `INET_ADDRSTRLEN' undeclared
here (not in a function)<BR>make: *** [src/common/avl.o] Error 1</DIV>
<DIV> </DIV>
<DIV>And I've also tried with all the versions present on your website with
differents results... Sometimes, with the Win32 argument, it works and
I can do the make install...</DIV>
<DIV> </DIV>
<DIV>With the source code modified by Denis Martin (version 0.5.0), I've an
error too... (<A
href="">http://lists.olsr.org/pipermail/olsr-dev/2007-May/000997.html</A>)</DIV>
<DIV> </DIV>
<DIV>$ make OS=wince<BR>make -C src/cfgparser<BR>make[1]: Entering directory
`/home/Administrateur/src/cfgparser'<BR>arm-wince-cegcc-gcc -Wall
-Wmissing-prototypes -Wstrict-prototypes -Wmissing-dec<BR>larations
-Wsign-compare -O2 -g -MD -Isrc -I../../src -Isrc/win32 -Isrc/win32/c<BR>e
-I../../src/win32 -DWIN32 -DWINCE -D_WIN32_WINNT=0x0501 -DMAKELIB -c
-o olsr<BR>d_conf.o olsrd_conf.c<BR>In file included from
../../src/win32/netinet/in.h:47,<BR>
from
olsrd_conf.c:49:<BR>/opt/cegcc/lib/gcc/arm-wince-cegcc/4.1.0/../../../../arm-wince-cegcc/lib/../incl<BR>ude/w32api/winsock2.h:65:
error: redefinition of 'struct fd_set'<BR>make[1]: *** [olsrd_conf.o] Error
1<BR>make[1]: Leaving directory `/home/Administrateur/src/cfgparser'<BR>make:
*** [cfgparser] Error 2<BR></DIV>
<DIV>So, I think I've a stupid problem with cygwin... As you can see I'm a real
gurru with Linux like systems... :(</DIV>
<DIV> </DIV>
<DIV>Denis uses a small wrapper-dll to provide some UNIX style compatibility but
he doesn't precise witch one. And he also doesn't explain what kind of
modifications he does in the source code. So I don't know what I've to change in
the new source code to obtained binaries that works under CE...</DIV>
<DIV> </DIV>
<DIV>In fact, after reading the archives, I don't know what to do: Dave speaks
about toolchain and Mandrake 10, Bruno about openembedded which can be used to
easily create distributions and cross-compile for the ipaq and other embedded
targets, Thomas about version compiles with the CE cross compiler that used to
be hosted at mamaich.kasone.com (I don't find it...), etc... Searching a
solution, I've also found another product:
<DIV id=site-slogan>Minimalist GNU for Windows. But I don't managed to get it
working...</DIV>
<DIV> </DIV>
<DIV>So... What's the simpliest way for a dummy like me to solve this problem
?</DIV></DIV>
<DIV> </DIV>
<DIV>Thx</DIV>
<DIV> </DIV>
<DIV>PS: my bison and flex are
ok...</DIV></FONT></FONT></FONT></DIV></BODY></HTML>