Mailing-List: contact cygwin-help AT cygwin DOT com; run by ezmlm List-Subscribe: List-Archive: List-Post: List-Help: , Sender: cygwin-owner AT cygwin DOT com Mail-Followup-To: cygwin AT cygwin DOT com Delivered-To: mailing list cygwin AT cygwin DOT com Date: Thu, 8 Apr 2004 17:50:03 +0200 (MEST) From: Johan Holmberg To: cygwin AT cygwin DOT com Subject: Gcc/ld and long command lines (> 32k) Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Hi ! I tried to compile/link an application consisting of several hundred C/C++ files. This gives quite a long command line when it is time to link the application. Windows seem to have a limit of 32k for the length of the command line as given to to the system call 'CreateProcess'. I guess this is a "hard" limit in Windows. The length of my linker command line exceeds this 32k limit. Is it possible to pass a list of filenames to ld in some other way, to get around this limit ? I know about the special "@filename" syntax in Cygwin, but there seem to be two problems: - it is no idea to give the special @filename argument to "gcc.exe", since it is calling other exe-files and will have problems itself to pass the file list on to these (ld, collect2, ...) - I tried to specify "-Wl,@files.txt" to "gcc.exe", hoping that "@files.txt" would be picked up by "ld.exe", but I got the error message: ld: @files.txt: No such file: No such file or directory Is ld.exe not interpreting the special "@" like other Cygwin programs ? Am I missing some obvious way of doing what I want ? /Johan Holmberg -- Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple Problem reports: http://cygwin.com/problems.html Documentation: http://cygwin.com/docs.html FAQ: http://cygwin.com/faq/