zoukankan      html  css  js  c++  java
  • install stackless python on ubuntu

    前言

    我准备用stackless模拟游戏玩家登陆/注册等行为,测试游戏服务器的性能。

    但是在安装stackless的过程中遇到了很多问题,特此记录下来,也分享给需要的朋友。

    关于stackless

    Stackless Python is an experimental implementation of the Python language.

    Stackless was designed from the start to overcome the limitations of cPython's Global Interpreter Lock by using tasklets, which implement functions as microthreads.

    environment

    (1) Ubuntu 12.04.5 LTS (GNU/Linux 3.5.0-23-generic x86_64)

    (2) Python 2.7.3    [GCC 4.6.3] on linux2

    Install

    First install the required libraries and get stackless itself:

    1 sudo apt-get install libreadline-dev
    2 
    3 cd /tmp
    4 
    5 wget http://www.stackless.com/binaries/stackless-273-export.tar.bz2
    6 
    7 bunzip2 stackless-273-export.tar.bz2
    8 
    9 tar xf stackless-273-export.tar

    install stackless:

    1 cd /tmp/stackless-273-export/
    2 
    3 ./configure --prefix=/opt/stackless --enable-unicode=ucs4
    4 
    5 make
    6 
    7 sudo make install

    如果./configure 报错,首先检查是否已安装gcc,安装命令sudo apt-get install gcc

    Now it's time to link your standard (CPython) packages so that they can be used with stackless:

    1 sudo ln -s /usr/lib/python2.7/dist-packages/ /opt/stackless/lib/python2.7/dist-packages
    2 
    3 sudo ln -s /usr/local/lib/python2.7/dist-packages/ /opt/stackless/lib/python2.7/dist-packages
    4 
    5 sudo ln -s  /opt/stackless/bin/python /usr/bin/stackless

     edit the paths in the site.py file.

    At about line 302, edit the file to look like this. It's the second site-packages.append bit we're adding here:

     1 sudo vi /opt/stackless/lib/python2.7/site.py
     2   
     3 line 302:
     4           elif os.sep == '/':
     5               sitepackages.append(os.path.join(prefix, "lib",
     6                                           "python" + sys.version[:3],
     7                                           "site-packages"))
     8               sitepackages.append(os.path.join(prefix, "lib",
     9                                           "python" + sys.version[:3],
    10                                          "dist-packages"))
    11              sitepackages.append(os.path.join(prefix, "lib", "site-python"))

    That should be it! Let's test it:

    check symbolic link

    Install success.

     about stackless python

    Introduction to Concurrent Programming with Stackless Python

    english: (1) http://www.stackless.com/   

                (2) http://www.grant-olson.net/files/why_stackless.html     

                (3) https://bitbucket.org/stackless-dev

    中文:http://gashero.yeax.com/?p=30  

  • 相关阅读:
    Miniconda 虚拟环境安装及应用
    python random使用方法
    MyQR库自动为网址生成二维码
    setResult()的调用时机
    Eclipse里选中一个变量后,这个类里的该变量不变色了?
    Android开发的技术层次
    最封闭的开源系统,话说Android的八宗罪
    制度是绝情的,管理是无情的,执行是合情的
    windows下eclipse搭建android_ndk开发环境
    UI/GUI/UE/UX/ID/UED/UCD的区别
  • 原文地址:https://www.cnblogs.com/tangkaixin/p/4519749.html
Copyright © 2011-2022 走看看