Opened 10 years ago

Closed 10 years ago

#10227 closed bug (fixed)

gcc4 "response file" handling broken.

Reported by: pulkomandy Owned by: zooey
Priority: normal Milestone: R1
Component: Applications/Command Line Tools Version: R1/Development
Keywords: Cc:
Blocked By: Blocking:
Platform: All

Description

This is hrev46383.

Trying to link WebKit shared libraries (these have a lot of files). A response file is used to avoid hittng the command line limit.

But gcc unfolds the command-line before passing it to collect2.

FAILED: : && /bin/distcc g++-x86 -fPIC -march=pentium4 -msse2 -mfpmath=sse -std=gnu++0x -O3 -DNDEBUG -Wl,--no-undefined -shared -Wl,-soname,libWebCore.so.1 -o lib/x86/libWebCore.so.1.2.0 @CMakeFiles/WebCore.rsp && : [17:56] <PulkoMandy> g++-x86: error trying to exec '/boot/system/develop/tools/x86/bin/../lib/gcc/i586-pc-haiku/4.7.3/collect2': execv: Argument too big

This should work since gcc 4.5.0 but may require the --with-gnu-ld option when configuring gcc: http://gcc.gnu.org/bugzilla/show_bug.cgi?id=45749

Or this may be another problem, as the issue happens when running collect2, not ld.

Change History (4)

comment:1 by anevilyak, 10 years ago

Component: Build SystemApplications/Command Line Tools
Status: newassigned

comment:2 by pulkomandy, 10 years ago

Blocked By: 10086 added
Resolution: duplicate
Status: assignedclosed

comment:3 by pulkomandy, 10 years ago

Blocked By: 10086 removed
Resolution: duplicate
Status: closedreopened

comment:4 by pulkomandy, 10 years ago

Resolution: fixed
Status: reopenedclosed

The problem was not passing --with-gnu-ld to gcc configure script, so it didn't know the linker was able to use response files.

Note: See TracTickets for help on using tickets.