Обойти максимальную длину аргумента при линковке на win32 - PullRequest
1 голос
/ 16 сентября 2010

Я столкнулся с ошибкой в ​​сборках Windows CMake / MinGW, когда количество объектных файлов, отправляемых компоновщику, приводит к тому, что список аргументов превышает максимальные 32 тыс. Символов, которые допускает Windows API. Это проявляется как удивительно бесполезная ошибка «Ошибка выполнения команды связи: параметр неверен».

Кто-нибудь сталкивался с этим раньше и нашел обходной путь, который не включает в себя реорганизацию путей проекта или разбиение его на библиотеки (так как оба являются большой дополнительной работой)?

Например, я знаю, что ld.exe принимает параметр @file для передачи аргументов, но можно ли заставить mingw-make использовать его, когда аргументы становятся слишком длинными?

Работает ли под msys / sh.exe этот предел?

1 Ответ

0 голосов
/ 16 сентября 2010

Если я правильно прочитал этот отчет об ошибке , это известная проблема, и она была исправлена. Я не уверен, относится ли поле версии продукта к версии, в которой обнаружена ошибка, или к версии, исправляющей ошибку.

...