Mapnik для чайников (Windows)

Хочу разобраться с Мапником и перспективами запуска его под Win32/Win64 (не WSL), отсюда несколько вопросов.

  1. Как я понимаю Mapnik умеет читать некоторое количество источников (PostGIS, Shapefile и др.), затем рендерит тайлы. Кешированием, раздачей в интернет и статистикой занимаются другие программы. Так куда мапник складывает тайлы - в какую-то временную папку или наоборот - он получает запрос от внешней программы на генерацию тайла и возвращает обратно прямо через RAM (через pipe или ещё как-то) ?
  2. Зачем в Mapnik обязательно присутствуе Python - только для сборки-тестирования или это неотъемлемая часть мапника ?

Во всех линуксовых проектах меня убивает количество зависимостей, скриптов, мешанины из нескольких языков программирования… Иногда смотришь историю GIT, а там основное количество исправлений это в скриптах сборки, чтобы добавить очередную платформу, OS или её разновидность.

Цель - для начала скомпилировать Mapnik под виндой из привычной мне среды Visual Studio (не из командной строки через cmake и пр.), чтобы можно было запускать пошаговую отладку, разобраться как он работает, возможно даже прикрутить дополнительные фичи. Очень хотелось бы избавиться от других программ (кеширование и раздача в сеть), чтобы это был standalone продукт. Без питонов, без скриптов. Мне не нужен швейцарский нож, хочу чтобы на вход - источник данных и стиль, на выход - TMS-сервер.

Примечание: я не линуксоид, привык к разработке и компиляции в IDE. Много лет назад собрал проект alaCarte под VS2010. При отладке попутно обнаружил баг в библиотеке Cairo, разработчики внесли исправление. Так что не всегда виндовсятники бесполезны )))

Это же и есть швейцарский нож. По хорошему: тайлы отдельно, сервер отдельно.
Раньше был TileMill (Mapbxo Classic), в нормальном гуишном исполнении.
Сейчас смотрю его вроде как возродили, но теперь это сервачок, а гуишка перешла в браузер.

Да и в cmake ничего плохого нет, там же можно получить солюшн для студии и дальше отлаживай сколько душе угодно.

Сам я мапниик никогда не видел, но насколько мне известно, ты ему казываешь файл, куда сохранить картинку. В общем случае он рендерит любую картинку с заданным масштабом, а не только тайл 256*256 с указанным зумом.

mapnik - это движок рендеринга, там нет ни WMS, ни TMS, есть только программное API по его вызову.
Чтобы получить TMS - нужно прикрутить соответствующий сервер, который может использовать mapnik, например https://mapproxy.org/
На серверах OSM для этого используют Apache + mod_tile

Я чем-то подобным хочу заняться, но через несколько месяцев. Сейчас погряз в изучении PostgreSQL/PostGIS. Разбираюсь в азах так сказать.

В сторону docker не копали? https://hub.docker.com/search?q=mapnik

Попробуйте на винде поставить wsl2 + ubuntu и запустить в нем docker контейнер. Сейчас все web приложения работают через такую схему, так как в отличие от виртуализации контейнеры очень лёгкие и гарантируют одинаковое окружение. Часто легче конфигурировать, но зависит от того кто делает image.

Вам про отладку на VS, а вы про докеры

все правильно - решение надзадачи.
зачем кампелять, если ужо все есть скампеляное и собранное в одну котомку :slight_smile:

Где есть то?

В докере

Ну а конкретно, пока я вижу, что все они под linux

ААааааа :smiley: понял

Это нормально, обычно под Docker и пускают Linux-овые образы, это можно сделать и под Windows-оской инсталяцией.
Windows-образы тоже бывают, но их на пару порядков меньше чем Linux-овых: https://hub.docker.com/search?q=&type=image&operating_system=windows

докер с виндовой инсталяцией эта пять !!
зачем использовать винду для приложения, которое не прибито ржавыми гвоздями намертво к винде ??

Видимо не всем нормально докер, кто-то хочет одиночный .exe запускать.

Не одного мапника там не вижу

“Спроса нет” (c) анекдот

Удобно же. Конечно не для боевого применения, а для разработки и тестирования.