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

On Mon, Feb 20, 2012 at 11:42, Sean C. Farley <s...@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
--
s...@freebsd.org
_______________________________________________
freebsd-python@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-python
To unsubscribe, send any mail to "freebsd-python-unsubscr...@freebsd.org"

Reply via email to