From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from lists.gentoo.org (pigeon.gentoo.org [208.92.234.80]) by finch.gentoo.org (Postfix) with ESMTP id ECAE8138A1F for ; Thu, 17 Apr 2014 17:11:34 +0000 (UTC) Received: from pigeon.gentoo.org (localhost [127.0.0.1]) by pigeon.gentoo.org (Postfix) with SMTP id 8897DE0ACC; Thu, 17 Apr 2014 17:11:33 +0000 (UTC) Received: from smtp.gentoo.org (smtp.gentoo.org [140.211.166.183]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by pigeon.gentoo.org (Postfix) with ESMTPS id D9022E0AC7 for ; Thu, 17 Apr 2014 17:11:32 +0000 (UTC) Received: from mail-ie0-f180.google.com (mail-ie0-f180.google.com [209.85.223.180]) (using TLSv1 with cipher ECDHE-RSA-RC4-SHA (128/128 bits)) (No client certificate requested) (Authenticated sender: bicatali) by smtp.gentoo.org (Postfix) with ESMTPSA id D8F3D33FF96 for ; Thu, 17 Apr 2014 17:11:31 +0000 (UTC) Received: by mail-ie0-f180.google.com with SMTP id as1so650993iec.11 for ; Thu, 17 Apr 2014 10:11:30 -0700 (PDT) Precedence: bulk List-Post: List-Help: List-Unsubscribe: List-Subscribe: List-Id: Gentoo Linux mail X-BeenThere: gentoo-science@lists.gentoo.org Reply-to: gentoo-science@lists.gentoo.org MIME-Version: 1.0 X-Received: by 10.42.226.8 with SMTP id iu8mr10768435icb.7.1397754690141; Thu, 17 Apr 2014 10:11:30 -0700 (PDT) Received: by 10.64.8.103 with HTTP; Thu, 17 Apr 2014 10:11:30 -0700 (PDT) Date: Thu, 17 Apr 2014 10:11:30 -0700 Message-ID: Subject: Re: [gentoo-science] liblapack, libblas, numpy, and python virtualenvs From: =?UTF-8?Q?S=C3=A9bastien_Fabbro?= To: gentoo-science@lists.gentoo.org Content-Type: multipart/alternative; boundary=001a11c30f9eca036c04f7401fe2 X-Archives-Salt: f59d582f-e771-4734-b633-2525f03cc122 X-Archives-Hash: e1bc271e98e767cc70fbec6830fcff9e --001a11c30f9eca036c04f7401fe2 Content-Type: text/plain; charset=UTF-8 On Thu, Apr 17, 2014 at 8:29 AM, Grant Goodyear wrote: > For reproducibility, I like to have a python virtualenv that has all of > the python libraries that I use, relying on portage just for python, > virtualenv, and virtualenvwrapper. Building numpy using "pip install numpy" > fails if I use the science-overlay versions of the reference lapack and > blas libraries, because pip can't find liblapack to link to it. > > Right now I'm cheating and using the non-overlay versions, but I'm sure > that somebody has a better solution of how to help pip find the right > libraries. Help? > The problem lies in the broken design of numpy.distutils trying to do way too much autodetection, and our ways to manage around it while keeping our linear algebra modularity. A possible workaround if you really want to use pip and the gentoo-science overlay framework is to simply link your selected blas and lapack libraries to /usr/lib/lib{blas,lapack}.so. I have not tested it, but I suspect this should work for openblas and {blas,lapack}-reference since they only have one library to link. Are you trying to do cross-distro reproducibility? Sebastien --001a11c30f9eca036c04f7401fe2 Content-Type: text/html; charset=UTF-8 Content-Transfer-Encoding: quoted-printable
On Thu, Apr 17, 2014 at 8:29 AM, Grant Goodyear <g2booj= um@gmail.com> wrote:
For reproducibili= ty, I like to have a python virtualenv that has all of the python libraries= that I use, relying on portage just for python, virtualenv, and virtualenv= wrapper. Building numpy using "pip install numpy" fails if I use = the science-overlay versions of the reference lapack and blas libraries, be= cause pip can't find liblapack to link to it.=C2=A0

Right now I'm cheating and using the non-overlay versions, bu= t I'm sure that somebody has a better solution of how to help pip find = the right libraries.=C2=A0 Help?

The problem lies in the broken design of numpy.distutils trying = to do way too much autodetection, and our ways to manage around it while ke= eping our linear algebra modularity.
A possible workaround = if you really want to use pip and the gentoo-science overlay framework is t= o simply link your selected blas and lapack libraries to /usr/lib/lib{blas,= lapack}.so. I have not tested it, but I suspect this should work for openbl= as and =C2=A0{blas,lapack}-reference since they only have one library to li= nk.

Are you trying to do cross-distro reproduci= bility?=C2=A0

Sebastien
=C2= =A0

--001a11c30f9eca036c04f7401fe2--