[llvm-commits] Fix llvm-config

Daniel Dunbar daniel at zuster.org
Thu Dec 15 16:05:04 PST 2011


Hi Danil,

Thanks for the additional info.

Unfortunately I'm still not exactly clear on what is going on.

Can you open a bug at http://llvm.org/bugs/ for this so we can move
the discussion / debugging there?

My guess at the moment is that the comparison at llvm-config.cpp:186
(if (CurrentExecPrefix) ...) is failing perhaps due to non-normalized
paths on Win32.

In your case, that branch definitely is supposed to be entered. If you
have a chance, could you run in a debugger and tell me what the values
of CurrentExecPrefix are in that case (as well as LLVM_OBJ_ROOT and
LLVM_BUILDMODE)?

Thanks, and sorry for the breakage.
 - Daniel

On Tue, Dec 13, 2011 at 2:48 AM, Danil Malyshev
<dmalyshev at accesssoftek.com> wrote:
> Hello Daniel,
>
> I use mingw32 and cross tools based on gcc-4.5.1
>
> LLVM configured with following parameters:
>
> ../llvm/configure
>  --prefix=/g/llvm-armv7 \
>  --build=i686-pc-mingw32 \
>  --host=armv7-none-linux-gnueabi \
>  --target=armv7-none-linux-gnueabi \
>  --disable-shared --disable-multilib --disable-nls --disable-bootstrap \
>  --with-cpu=cortex-a8 --with-fpu=neon --with-abi=aapcs --with-float=hard
>
> and make stopped with following messages:
>
> make[2]: *** No rule to make target `g:/mytries/build/obj-cross-llvm/BuildTools/Debug+Asserts/lib/libLLVMipo.a', needed by `/g/mytries/build/obj-cross-llvm/Debug+Asserts/bin/opt'.  Stop.
> make[2]: Leaving directory `/g/mytries/build/obj-cross-llvm/tools/opt'
> make[1]: *** [opt/.makeall] Error 2
>
> And the same result if I try make any other tool.
> I found that the command:
>
> /g/mytries/build/obj-cross-llvm/BuildTools/Debug+Asserts/bin/llvm-config --libfiles ipo
>
> returns:
>
> g:/mytries/build/obj-cross-llvm/BuildTools/Debug+Asserts/lib/libLLVMipo.a g:/mytries/build/obj-cross-llvm/BuildTools/Debug+Asserts/lib/libLLVMScalarOpts.a g:/mytries/build/obj-cross-llvm/BuildTools/Debug+Asserts/lib/libLLVMInstCombine.a g:/mytries/build/obj-cross-llvm/BuildTools/Debug+Asserts/lib/libLLVMTransformUtils.a g:/mytries/build/obj-cross-llvm/BuildTools/Debug+Asserts/lib/libLLVMipa.a g:/mytries/build/obj-cross-llvm/BuildTools/Debug+Asserts/lib/libLLVMAnalysis.a g:/mytries/build/obj-cross-llvm/BuildTools/Debug+Asserts/lib/libLLVMTarget.a g:/mytries/build/obj-cross-llvm/BuildTools/Debug+Asserts/lib/libLLVMMC.a g:/mytries/build/obj-cross-llvm/BuildTools/Debug+Asserts/lib/libLLVMObject.a g:/mytries/build/obj-cross-llvm/BuildTools/Debug+Asserts/lib/libLLVMCore.a g:/mytries/build/obj-cross-llvm/BuildTools/Debug+Asserts/lib/libLLVMSupport.a
>
> but this libraries stored in
> g:/mytries/build/obj-cross-llvm/Debug+Asserts/lib
> instread of
> g:/mytries/build/obj-cross-llvm/BuildTools/Debug+Asserts/lib
>
>
> Regards,
> Danil
>
> -----Original Message-----
> From: daniel.dunbar at gmail.com [mailto:daniel.dunbar at gmail.com] On Behalf Of Daniel Dunbar
> Sent: Monday, December 12, 2011 9:31 PM
> To: Danil Malyshev
> Cc: llvm-commits at cs.uiuc.edu
> Subject: Re: [llvm-commits] Fix llvm-config
>
> Hi Danil,
>
> I don't understand why this is necessary yet.
>
> If you are doing a cross compilation, then your llvm-config should be
> in a development tree, and the first if() branch in that set should be
> followed, which already handles the BuildTools case.
>
> Can you give me more information about the failure, what tool is being
> run, and the exact command line?
>
> Thanks,
>  - Daniel
>
> On Fri, Dec 9, 2011 at 2:41 PM, Danil Malyshev
> <dmalyshev at accesssoftek.com> wrote:
>> Hello everyone,
>>
>>
>>
>> LLVM cross-compilation stops when it tries linking tools with an error
>> message that the library needed to link not found.
>>
>> The attached patch fixed it.
>>
>>
>>
>> Regards,
>>
>> Danil
>>
>>
>>
>>
>> _______________________________________________
>> llvm-commits mailing list
>> llvm-commits at cs.uiuc.edu
>> http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits
>>




More information about the llvm-commits mailing list