Как настроить кросскомпиляцию Qt6 + TDLib под Windows на Arch Linux, если при сборке постоянно возникают ошибки?
Я разрабатываю проект на C++ с Qt6 и TDLib. На Arch Linux всё компилируется без проблем, но мне нужно собрать проект под Windows.
1. Я не могу найти и скачать Qt для Windows на Arch. Когда что-то находил, не понимал, как компилировать - не могу найти нормальный гайд, постоянно возникают какие-то ошибки.
2. Та же проблема с TDLib - нужно найти и скомпилировать его для Windows.
Вот что я уже пробовал:
Я установил Windows на виртуальную машину, там получилось скачать Qt. Но когда я начал скачивать TDLib, снова появились ошибки - что-то не скачивается, я это исправляю, потом возникает следующая проблема, и так далее. После недели попыток скомпилировать проект (который уже готов на Linux) для Windows, мой рассудок начал сдавать, и в итоге я не могу понять, как это сделать.
Вот что я хочу получить:
Подробный гайд по установке Qt6 и TDLib на Arch Linux для сборки под Windows, с детальным описанием всех необходимых флагов и что бы мой проект Qt6 + TDLib работал
Я постараюсь всегда быть на связи и при необходимости предоставлять дополнительную информацию.
Кросскомпиляция для винды под линуксом вполне возможна. Лет 20 назад это было не так уж и сложно, но сегодня объём и сложность всяких зависимостей в проектах и компиляторах выросли настолько, что это превратилось в длинный и очень весёлый квест с кучей подводных камней и даже айсбергов. Поэтому проще всего поставить виртуалку и уже в ней всё собирать сразу под целевой ОС. Собственно в вашем случае так и надо продолжить разбираться с проблемами, которые вы встретили при сборке под линуксом. На сайте TDLib есть подробная инструкция для сборки библиотеки. Что именно у вас не получилось сделать? Вы искали ответ на вашу проблему в гугле?
По поводу TDLib и хорошей инструкции я согласен, и когда я начал качать библиотеку на Windows, то возникли проблемы с vcpkg, а именно:
./vcpkg.exe install gperf:x64-windows openssl:x64-windows zlib:x64-windows
Проблема:
zlib:x64-windows просто не хотел качаться, ошибка:
Error: Building package zlib:x64-windows failed with: BUILD_FAILED
Что делал:
Искал решение на официальном сайте Microsoft и на GitHub.
Там говорили, что это может быть из-за проблем с Microsoft Visual Studio, но у меня всё было нормально.
Проверил, переустановил, скачал всё, что нужно.
Сейчас меня держит только эта проблема для скачивания TDLib на Windows. Но я думаю, будут ещё ошибки.
Сейчас я чуть отдохнул, и проблема стала яснее. До этого в голове была полная каша. Я забил на скачивание библиотек на Arch для Windows - слишком тяжко.
VoidVolker, я много чего пробовал и уверен что с --debug я писал, и там было очень много информации, сейчас я заного попробую скомпелировать, и как дойду до ошибки этой, пришлю вывод
VoidVolker, Произошла странная вещь, но я решил переустановить Windows 10 и сделать всё с нуля, и это решило проблему. То есть, когда я ввёл --debug, проблема была в Windows 10, Microsoft Visual Studio и PHP всё решил. Нужно было всего лишь написать --debug. Спасибо!
VoidVolker, Нужно идти строго по инструкции TDLib. Перед скачиванием TDLib нужно обновить Windows 10 до последней версии, чтобы SDK vcpkg точно работал нормально. Качать PHP, CMake — не через MSYS-MinGW, а туда, куда отсылает инструкция TDLib. Моя главная ошибка — невнимательность.
Опять же, если будет ошибка, то лучше написать --debug, так как есть подробности, которые не выводятся просто так.