Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

mingw build error #829

Open
calvin2021y opened this issue Nov 23, 2024 · 5 comments
Open

mingw build error #829

calvin2021y opened this issue Nov 23, 2024 · 5 comments

Comments

@calvin2021y
Copy link

wakaama/transport/udp/include/udp/connection.h:21:10: fatal error: 'arpa/inet.h' file not found
   21 | #include <arpa/inet.h>
      |          ^~~~~~~~~~~~~
@rettichschnidi
Copy link
Contributor

Wakaama is designed for POSIX systems, so I'd expect building on/for Windows will fail.

Any chance you are interesting in adding Windows support?

@calvin2021y
Copy link
Author

Thanks for explain, I would like to but not sure I am capable to do it.

I would like a event loop interface without network layer will allow every build they own network layer.

@LukasWoodtli
Copy link
Contributor

I don't know much about MinGW. You might want to use Cygwin for making (parts of) the POISX available on Windows.
Alternatively, you could implement your own native platform abstraction. For that, you would need to implement at least the following components for Windows:

  • platform wrapper
  • transport (UDP)
  • event loop

See the corresponding POSIX implementations for inspiration.

@jvermillard
Copy link
Contributor

I expect Wakaama socket/Posix code to work with Cygwin.
If you go the way of implementing your networking code, and if you don't want to deal with win32 network API, you can try to use something like libuv.

@LukasWoodtli
Copy link
Contributor

It would be cool to have an eventloop and networking abstraction implemented upstream with something like libuv (licensing would need to be checked, though).

If we had such an abstraction, only users that want to run Wakaama on embedded devices would need to implement their own abstractions.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants