Hi Christian,

Von Christian W. Zuckschwerdt:
> (I remeber answering this question a couple of times now, here is a
> sketch for the wiki. Could everyone with experience (Hendrik?) please
> have a look? See http://dev.zuckschwerdt.org/openobex/wiki/ObexWin32 )
> 
> The question wether/how OpenOBEX compiles/runs on win32 pops up now and
> then. Here is a general overview and a short checklist.

As I did quite some patching of OpenOBEX. I give some corrections on the 
details below.

> Does OpenOBEX compile on win32?
> 
> Yes. It has been tested with (at least) mingw32 as cross-compiler and
> native. For a quick guide see the steps below.
> Your options include:
> - cross-compiling (with MinGW32), tested
> - MinGW32, tested

Well, except a few issues that I'll explain further down.

> - Cygwin, should work

...but not tested. Who needs cygwin if it works with mingw32?

> - Visual C (and other commercial suites), unknown

No. Due to the build system, I would be necessary to create custom Visual 
Studio project files.
However, you can link VC++ program to the mingw32 libs.

> Does OpenOBEX run on win32? Is it useable?
> 
> OpenOBEX requires backends for each transport. Your options include:
> - USB: libusb-win32, works
> - BT: some BT stack needed, maybe MS or Widcomm? No work done yet

See my patches. Should work but _requires_ WinXP SP2 (MS stack only, the other 
are dead anyway).

> - IrDA: some IrDA stack needed, IrCOMM2k looks good. No work done yet

Should work right from SVN/CVS.

> - Tcp/Ip: native winsock2, works

Well, kind of:
WinXP: no dual stack and thus IPv6-only.
Vista: has dual-stack but is IPv6-only by default (some people are ignoring my 
patches about this ;)
On Vista, an openobex application can enable the IPv4-mapped addresses itself, 
though.
I don't have any Windows Vista, though.

> - Serial: native, custom transport code needed
> 
> Quick guide to compile OpenOBEX native on win32
[...]

Please see my patches I posted previously. One posting also contains 
fine-grained install instructions!

> (1) make may fail trying to create a symlink, use "ln -s . include/openobex".

No, this will not work on WinXP, e.g. when using MSys.
My patches also fix this by copying instead of linking.
Best solution would be to move the files in SVN to an openobex subdir instead 
of fuzzing around on
every run:
   mkdir openobex
   cp *.h openobex/
and delete parts of the Makefile.

> (2) if you get a libopenobex.a but no libopenobex.dll: ensure the
> libusb-win32 are accessible.

This does not help. Again, see my posted patches. They take care of properly 
creating DLLs.
This really needs code changes because linking on windows is different for 
static and for dynamic libs.
With current SVN/CVS, you can only get static libs (yes, really).

I can repost the patches if someone asks.
Some patches _require_ abstracted code to enable cross-platform compatibility, 
e.g. the socket_t definition.

For cross-compiling:
You need headers from the Platform-SDK. You really need windows to get them but 
after that, they can be
used for cross-compiling just fine.

HS


-------------------------------------------------------------------------
This SF.net email is sponsored by DB2 Express
Download DB2 Express C - the FREE version of DB2 express and take
control of your XML. No limits. Just data. Click to get it now.
http://sourceforge.net/powerbar/db2/
_______________________________________________
Openobex-users mailing list
[email protected]
http://lists.sourceforge.net/lists/listinfo/openobex-users

Reply via email to