Здравствуйте, ononim, Вы писали:
O>Почему ты думаешь оно искусственное,
Потому что длинные пути у меня включены и с ними нет никаких проблем.
O>MAX_PATH в винде равен 260,
Почему MS не переопределить MAX_PATH в 65535 — это отдельный вопрос.
O>чтобы это ограничение обойти, программа должна во-первых использовать wide-версии системных АПИ,
Да. Вот я и спрашиваю: есть такая сборка gcc, которая это умеет?
O>а во-вторых делать путь с префиксом \\?\.
Это должно делаться автоматически: если префикс отсутствует, то добавляем втихую и работаем.
O>то есть попробуй gcc -c -o \\?\ПОЛНЫЙ\ПУТЬ\ВКЛЮЧАЯ\БУКВУ\ДИСКА
и если прокатит — считай повезло,
Что значит "повезло"? Попрошу заметить, что у меня в примере пути относительные и длина относительных путей не выходит за 260 и это не просто так. Это чтобы если в программе буфер в 260, то чтобы за него не выйти.
O>а если нет — НЕФИГ ДЕЛАТЬ ТАКИЕ ПУТИ 
У меня в проекте вложенность каких-то 10 уровней => на длину каталога остаётся каких-то 26 символов. Как при этом работать, если только каталог для .o файлов называется debug-build-gcc-arm-10.3-2021.07-mingw-w64-i686-arm-none-linux-gnueabihf ?
O>UPD А нет, если не прокатит — по ссылке выше есть еще параграф 'Enable Long Paths in Windows 10, Version 1607, and Later'
Как это поможет gcc? Никак не поможет.