[lldb-dev] make install target breaks on Linux because --prefix is ignored

Charles Davis cdavis5x at gmail.com
Wed Sep 26 11:41:18 PDT 2012


On Sep 21, 2012, at 7:21 AM, Filipe Cabecinhas wrote:

> Hi George,
> 
> No patch was proposed. I am patching the Makefiles to make them do what they should do (The swig stuff was completely out of sync with the Xcode projects, for example).
> But I still haven't touched the install phase. The regular, in-place, stuff is now better (at least it should be. I've been testing on FreeBSD), and I'm planning on cleaning up the Makefiles during next week, tops.
> If you ant, you can try to fix that install phase problem and I can commit the patch for you.

I don't know about this. Many Python installs aren't configured to look outside their installation prefixes for Python modules. I know the default Python on Mac OS X isn't, and I imagine that most default Python installs on other systems aren't, either.

The problem is that, if --prefix isn't specified, configure provides a default. What we want is to use the prefix specified with --prefix *if* it is specified, but install to the default Python site-specific packages directory otherwise. This is really important on Mac OS with the system Python, because there the right directory is not /usr/lib/pythonX.Y/site-packages, or even ${prefix}/lib/pythonX.Y/site-packages, but /Library/Python/X.Y/site-packages.

Personally, I think the right solution is to add a '--with-python-prefix=<prefix>' option to configure, and default to the site-specific Python directory if it isn't specified. That way, we avoid all the headaches associated with --prefix. The downside, of course, is that now you have to specify another option to configure, but I think that's acceptable.

If you want, I'll make a patch against LLVM to add this option, and patches against Clang and LLDB to use it. OK?

Chip


> 
> Regards, 
> 
>  Filipe
> 
> 
> On Friday, September 21, 2012 at 1:38 PM, George Russell wrote:
> 
>> Hi all,
>> 
>> I am encountering this problem on Linux as of revision 164291. Was a 
>> patch ever proposed, or accepted, for this issue?
>> 
>> Cheers,
>> George
>> 
>> On 08/03/2012 11:56 PM, Malea, Daniel wrote:
>>> Hi all,
>>> 
>>> I built LLDB on Linux recently, and I noticed that "make install" doesn't complete successfully as of the latest trunk revision.
>>> 
>>> After some makefile digging, I found the cause is that make and tries to copy the python modules to "/usr/lib/pythonX.Y/site-packages" or in "/lldb" if the site-packages directory does not exist...thereby disregarding the "--prefix" flag specified at configure-time. This may cause some headaches for users without root access.
>>> 
>>> I'm wondering if this is intended (and if someone depends on this behaviour) or if it would be acceptable for me to submit a patch that fixes the problem by putting the python modules in the directory specified by the --prefix option?
>>> 
>>> Naturally, if users want a global install of the lldb modules, they can always configure "--prefix=/usr"
>>> 
>>> 
>>> Thanks,
>>> Dan
>>> _______________________________________________
>>> lldb-dev mailing list
>>> lldb-dev at cs.uiuc.edu (mailto:lldb-dev at cs.uiuc.edu)
>>> http://lists.cs.uiuc.edu/mailman/listinfo/lldb-dev
>> 
>> 
>> 
>> 
>> -- 
>> George Russell
>> Director of Quality Assurance
>> Codeplay Software Ltd
>> 45 York Place, Edinburgh, EH1 3HP
>> Tel: 0131 466 0503
>> Fax: 0131 557 6600
>> Website: http://www.codeplay.com
>> Twitter: https://twitter.com/codeplaysoft
>> 
>> This email and any attachments may contain confidential and /or privileged information and is for use by the addressee only. If you are not the intended recipient, please notify Codeplay Software Ltd immediately and delete the message from your computer. You may not copy or forward it,or use or disclose its contents to any other person. Any views or other information in this message which do not relate to our business are not authorized by Codeplay software Ltd, nor does this message form part of any contract unless so stated.
>> 
>> As internet communications are capable of data corruption Codeplay Software Ltd does not accept any responsibility for any changes made to this message after it was sent. Please note that Codeplay Software Ltd does not accept any liability or responsibility for viruses and it is your responsibility to scan any attachments.
>> Company registered in England and Wales, number: 04567874
>> Registered office: 81 Linkfield Street, Redhill RH1 6BY
>> 
>> _______________________________________________
>> lldb-dev mailing list
>> lldb-dev at cs.uiuc.edu (mailto:lldb-dev at cs.uiuc.edu)
>> http://lists.cs.uiuc.edu/mailman/listinfo/lldb-dev
> 
> 
> 
> _______________________________________________
> lldb-dev mailing list
> lldb-dev at cs.uiuc.edu
> http://lists.cs.uiuc.edu/mailman/listinfo/lldb-dev





More information about the lldb-dev mailing list