Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 7 Mar 2012 11:03:01 -0500 (EST)
From:      "Sean C. Farley" <scf@FreeBSD.org>
To:        Li-Wen Hsu <lwhsu@FreeBSD.org>
Cc:        freebsd-python@FreeBSD.org
Subject:   Re: Install shared objects into site-packages
Message-ID:  <alpine.BSF.2.02.1203071034420.25725@thor.farley.org>
In-Reply-To: <CAKBkRUzMejJiUvLYkMDeL6WJ5teqTHr-YmMU=t_w6A1d_0==NA@mail.gmail.com>
References:  <alpine.BSF.2.02.1202192233110.69548@thor.farley.org> <CAKBkRUzMejJiUvLYkMDeL6WJ5teqTHr-YmMU=t_w6A1d_0==NA@mail.gmail.com>

next in thread | previous in thread | raw e-mail | index | archive | help
  This message is in MIME format.  The first part should be readable text,
  while the remaining parts are likely unreadable without MIME-aware tools.

--56599777-1772294489-1331136181=:25725
Content-Type: TEXT/PLAIN; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8BIT

On Fri, 24 Feb 2012, Li-Wen Hsu wrote:

> On Mon, Feb 20, 2012 at 11:42, Sean C. Farley <scf@freebsd.org> wrote:
>> I am using virtualenv --no-site-packages (the default now) to be able 
>> to build an environment on both FreeBSD and Linux.  The issue I am 
>> running into is that _sqlite3.so from databases/py-sqlite3 is being 
>> installed into site-packages as opposed to lib-dynload.  On the 
>> CentOS we are using, _sqlite3.so is installed in lib-dynload.
>>
>> I tried a bit to change the port's setup.py, but I have not been 
>> successful.  How can databases/py-sqlite3 and other ports that are 
>> typically part of Python by default be made to install into 
>> lib-dynload?
>>
>> These are the one that lang/python27 disables:
>> disabled_module_list = ["_bsddb", "_sqlite3", "_tkinter", "gdbm", "mpz"]
>
> Hi Sean,
>
> After reading databases/py-sqlite3/Makeilfe from NetBSD's pkgsrc, I 
> have this patch:
>
>    http://people.freebsd.org/~lwhsu/patch/py-sqlite3__lib-dynload.diff
>
> Due to time constraint, I haven't test it with virtualenv, please tell 
> me if it works.
>
> I think changing the install destination of these built-in modules to 
> the default position is right direction.  But this patch is not a good 
> solution, we need to handle PYDISTUTILS_INSTALLARGS better instead of 
> putting between bsd.port.{pre,post}.mk .  Please tell me if there is a 
> better way to do this.  Thanks.

It works.  Thank you!

I do not know a better way to do it.  I tried a few things with 
files/setup.py to get it to install within lib-dynload but was 
unsuccessful.  If an environment variable would take care of the 
install-lib option, then maybe putting something into MAKE_ENV?

Sean
-- 
scf@FreeBSD.org
--56599777-1772294489-1331136181=:25725--



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?alpine.BSF.2.02.1203071034420.25725>