osrm-backend icon indicating copy to clipboard operation
osrm-backend copied to clipboard

Does anyone maintain the windows platform? What is the specific release time of the latest version?

Open qd1332543 opened this issue 4 years ago • 16 comments

qd1332543 avatar Sep 27 '21 08:09 qd1332543

Does anyone maintain the windows platform

The fair answer here is probably "no". The dedicated wiki page is rather clear on the fact that the whole windows pipeline is pretty much experimental (not to mention the date of the last build and page modification).

jcoupey avatar Sep 27 '21 09:09 jcoupey

@jcoupey Well, I have already read the instructions on the wiki page. you know, In my opinion, after so many years, the windows platform should have been supported. Anyway, thank you for your answer.

qd1332543 avatar Sep 28 '21 03:09 qd1332543

you know, In my opinion, after so many years, the windows platform should have been supported

Doing this for an open source project requires someone with the time, resources, and interest to maintain. Currently, this project has none of those. Unfortunately, it takes work.

danpat avatar Sep 28 '21 04:09 danpat

FWIW, the Windows build is working: https://ci.appveyor.com/project/Project-OSRM/osrm-backend/builds/40921456

You can check the build logs or appveyor-build.bat to figure out what the dependencies are. They don't appear to be that ancient.

mjjbell avatar Sep 28 '21 13:09 mjjbell

Hmm - I wonder how hard it would be to publish the artifacts from appveyor. I have no idea where the infrastructure behind http://build.project-osrm.org/ lives.

danpat avatar Sep 28 '21 14:09 danpat

Appveyor has a Github Releases integration, so it looks achievable. Auth is via personal access tokens though, so not ideal. And it looks like it has trouble running all the tests.

Building in Github Actions might be a more maintainable approach.

mjjbell avatar Sep 30 '21 12:09 mjjbell

Well it seems like the GH actionsWin2019 platform includes VC++ and CMake so maybe it can be done this way

https://github.com/actions/virtual-environments/blob/main/images/win/Windows2019-Readme.md

hoerup avatar Sep 30 '21 20:09 hoerup

I was never successful in building locally, but the binaries (http://build.project-osrm.org/) work fine.

I would love to be able to get libosrm C++ working instead of using the slow HTTP API (ideally via Python) but despite finding https://pypi.org/project/pyosrm/ I could never get it to work since you need to compile locally.

In any case - while a bit slow, the pre-built binaries work fine.

porkedpie avatar Dec 29 '21 16:12 porkedpie

I'm curious for those who are interested in windows platform what are your use cases ? Windows desktop ? Running in Windows servers ? Are you using libosrm directly or using .net ?

ssuluh avatar Apr 10 '22 18:04 ssuluh

For me, running on Desktop, using for various simulation applications. Currently having to use a local osrm sever and calling the API via Python. Even asynchronously this is pretty slow. Would be great to be able to call the C code directly without the http overhead.

On Sun, Apr 10, 2022 at 7:52 PM Surya Suluh @.***> wrote:

I'm curious for those who are interested in windows platform what are your use cases ? Windows desktop ? Running in Windows servers ? Are you using libosrm directly or using .net ?

— Reply to this email directly, view it on GitHub https://github.com/Project-OSRM/osrm-backend/issues/6135#issuecomment-1094347582, or unsubscribe https://github.com/notifications/unsubscribe-auth/ASJM5GWZ2NPGVGWQGCIBW5TVEMPOVANCNFSM5E2AVQEA . You are receiving this because you commented.Message ID: @.***>

porkedpie avatar Apr 12 '22 12:04 porkedpie

I'm curious for those who are interested in windows platform what are your use cases ? Windows desktop ? Running in Windows servers ? Are you using libosrm directly or using .net ?

@ssuluh : my use case is running it on windows desktop, calling the HTTP API via Python or R. The binaries from http://build.project-osrm.org/ work fine, but as far as I understand, they are not based on the latest version of OSRM. While the binaries work like a charm with this Python package, I ran into a couple of problems when trying to use this R package (which apparently requires the latest version of OSRM). That's why I'm looking for a way of running the latest version of OSRM on Windows.

I can't really use Docker, relative to their terms of use. I'm thinking of running an OSRM server in some Linux virtual box running on my desktop (while sending HTTP requests from Windows to the OSRM virtual box server), but I still have to try it.

jeanbaptisteb avatar Sep 15 '22 08:09 jeanbaptisteb

I'm thinking of running an OSRM server in some Linux virtual box

IMHO probably your best bet if you want to keep things simple and easy.

jcoupey avatar Sep 15 '22 08:09 jcoupey

WSL2 (the integrated Linux system) might also work for Windows. I only ever used it to run docker, never tried building (and running) software directly.

nilsnolde avatar Sep 15 '22 10:09 nilsnolde

If your only reason to update is to be able to use R package osrm, then building a version in Linux or a container seems like a harder option than either just using curl in R to call directly, or working in Python. If you have a big body of R code using osrm package, then just use an older version of that? It worked fine in recent history (~1 year ago), so probably the previous version is fine.

porkedpie avatar Sep 15 '22 11:09 porkedpie

If your only reason to update is to be able to use R package osrm, then building a version in Linux or a container seems like a harder option than either just using curl in R to call directly, or working in Python. If you have a big body of R code using osrm package, then just use an older version of that? It worked fine in recent history (~1 year ago), so probably the previous version is fine.

Thanks, it's a solution I'll consider for the project I'm working on, but I'm a bit wary that it may not be a workable solution for other future projects.

The R package I'm referring to has some features not available in Python, as far as I know (i.e. isochrone maps). To be honest, I'm not very keen on writing code based on an old version of the R package and on an old version of OSRM. I'm a little scared that at some point it could become some kind of dependency hell for complex projects, or to run into other bugs that have been corrected in later versions of OSRM or of the R package. I'd prefer to start on a "sound" basis to limit these risks. So anyway, I'll try the virtual box or WSL solutions that others suggested, and if it doesn't work I'll fall back on your suggestion.

Thank you all for the feedback. If I have it working, I'll try to outline some instructions for other people on windows.

jeanbaptisteb avatar Sep 15 '22 12:09 jeanbaptisteb

FWIW, we still want to create a proper python package for OSRM with batteries included (ie the OSRM library), preferably with the build pipelines available via python API, so there’s no need for separate OSRM exes, it would all be on PyPI for Win, Mac & Linux. But.. time.. I did it for Valhalla already, so it should be a quick thing to do.

nilsnolde avatar Sep 15 '22 13:09 nilsnolde

Thank you all for the feedback. If I have it working, I'll try to outline some instructions for other people on windows.

Just as a short follow-up for people who'd want to use OSRM on Windows (desktop) without waiting: I gave up on trying to use WSL2 for that (encountered too many issues), and eventually I had it work with an Ubuntu guest (22.04.1 LTS) in a virtualbox. I simply followed the instructions for installing OSRM on Ubuntu, and configured the virtualbox network as NAT. Then, in the virtualbox network advanced settings, I set the port forwarding options to 127.0.0.1:5000 for the host and 0.0.0.0:5000 for the guest. Now, I can send requests from my Windows desktop (Windows 10) to the OSRM server hosted on the Ubuntu virtualbox. Requests have to be sent to http://127.0.0.1:5000 or http://localhost:5000.

jeanbaptisteb avatar Sep 26 '22 08:09 jeanbaptisteb