将virtualenv设置为使用源代码python编译为bin

时间:2014-02-25 15:11:38

标签: python virtualenv

我需要强制virtualenv在我的ci服务器上使用已编译的源代码python(长话短说:travis ci支持python 2.7.3.heroku与2.7.6一起工作,我们坚持在与生产相同的环境中进行测试) 。但我没有让virtualenv反对它。

travis首先运行此脚本:

if [ ! -d ./compiled ]; then
    echo "creating compiled folder"
    mkdir compiled
else
    echo "compiled exists"
fi

cd compiled

if [ ! -e Python-2.7.6.tar.xz ]; then
    echo "Downloading python and compiling"
    wget http://www.python.org/ftp/python/2.7.6/Python-2.7.6.tar.xz
    tar xf Python-2.7.6.tar.xz
    cd Python-2.7.6
    ./configure
    make
    chmod +x ./python

else
    echo "Compiled python exists!"
fi

然后:

- virtualenv -p ./python ./compiled/python276
- source ./compiled/python276/bin/activate

但是当时python --version显示的是2.7.3而不是2.7.6

猜猜我错过了什么,谢谢你的帮助!

1 个答案:

答案 0 :(得分:0)

转到virtualenv文件夹,然后打开bin /文件夹:

~/.Virtualenv/my_project/bin

删除'python'文件,并创建一个指向你想要使用的python可执行文件的符号链接,如:

cd ~/.Virtualenv/my_project/bin
mv python python-bkp
ln -s /usr/bin/python .