[LLVMdev] The make install fails in cross-compile mode

Eric Christopher echristo at apple.com
Tue Oct 25 19:43:26 PDT 2011


On Oct 25, 2011, at 7:27 PM, Charles Davis wrote:

> 
> On Oct 25, 2011, at 6:54 PM, Eric Christopher wrote:
> 
>> 
>> On Oct 22, 2011, at 12:21 PM, Atanasyan, Simon wrote:
>> 
>>> Hi,
>>> 
>>> I cross-compile llvm/clang. The build platform is x86_64-linux-gnu. The host platform is mips-linux-gnu. Llvm and clang built successfully but "make install" shows the following error:
>>> 
>>> % make install
>>> llvm[0]: Installing Release+Asserts /home/simon/work/install/clang/bin/llvm-tblgen
>>> strip: Unable to recognise the format of the input file `/home/simon/work/install/clang/bin/llvm-tblgen'
>>> /usr/bin/install: strip process terminated abnormally
>>> make: *** [/home/simon/work/install/clang/bin/llvm-tblgen] Error 1
>>> 
>>> The problem is that "install" is run with "-s" argument to strip symbols but always uses default "strip" executable even in cross-compile mode. To fix the bug I check for the "strip" executable in the configure.ac and provide the result to the "install" command using "--strip-program" argument. The patches are attached to this email.
> You guys are aware that this feature is specific to GNU install, right? BSD install--and incidentally, Mac OS X uses BSD install--does not have this. Congratulations: you just broke installing on Mac OS and the BSDs. I'm going to revert this change right away.

You'll notice the @apple.com in my email address right?

I actually tested this on Mac OS X. Looks like strip is only invoked for Release builds so my default build didn't catch it annoyingly enough.

-eric



More information about the llvm-dev mailing list