Merhaba ,

Virtualenv kullanımının mantığı sistemden izole bir ortam yaratmak.

Bunun için sistemin paket deposundan kurulum yapmak yerine oluşturduğumuz
virtualenv ortamında pip ile kurulum yapıyoruz.

/srv/deneme/bin/pip install modul_adi şeklinde bir kurulum yaptığımızda
virtualenv de bulunan pip paketini kullanarak sadece virtualenv içerisine
modül kurulumunu yapmış oluyoruz. ( /usr/lib/python2.7/site-packages yerine
/srv/deneme/lib/python2.7/site-packages altına kurulum yapılır)

Amaç sistemden ayrı bir ortam oluşturmak olduğu içinde sistem paketleri
kurup kaldırmıyor her proje için sistemde kurulu python ve modül
versiyonlarında değişiklik yapmıyoruz.
Her projenin kendi virtualenvi içerisinde değişikliklerimizi sistemden
bağımsız yapabiliyoruz.

İyi çalışmalar


14 Ocak 2014 09:25 tarihinde Sen Cer <sencerhama...@gmail.com> yazdı:

> Aydan hanım merhabalar,
>
> Py Virtual env. hakkında merak ettiğim bir mevzu var.
>
> Virtual environment üzerinde çalışırken baktığım örneklerin genelinde
>  gerekli paketleri pip ile kurduklarını görüyorum. Merak ettiğim konu benim
> kullandığım işletim sisteminin paket deposunda olan bir paketi de depodan
> değil de illa ki pip aracılığı ile mi kurmam gerekiyor? Pip'in daha güncel
> olmasından başka, bu iki kaynak arasındaki fark nedir acaba?
>
>
> 2014/1/14 Aydan Taşdemir <aydantasde...@gmail.com>
>
>> Merhaba ,
>>
>> Pythonda farklı versiyolar ile çalışabilmek ve modülleri kolayca kurup
>> kaldırabilmek için virtualenv 
>> <http://www.virtualenv.org/en/latest/>kullanmanızı öneririm.
>>
>> easy_install ile kurulumu oldukça kolay. Şöyle bir örnek vereyim
>>
>> Sisteme python2.7 kurulumu yaptıktan sonra ;
>>
>> $ wget http://python-distribute.org/distribute_setup.py
>>
>> # python2.7 distribute_setup.py
>>
>> # easy_install-2.7 virtualenv
>>
>> ile virtualenv paketi kurulur. Virtualenv yaratmak için sistemde
>> istediğiniz bir yere boş bir dizin oluşturulur.
>>
>> # mkdir /srv/deneme
>>
>> # virtualenv -p python2.7 /srv/deneme
>>
>> /srv dizini altında deneme isimli virtualenv oluşmuş olmalı. Bu kısımdan
>> sonra python modüllerini kurmak oldukça kolay.
>>
>> # /srv/deneme/bin/pip2.7 install modul_adı==modul_versiyonu
>>
>> İle eksik bağımlılıkların kurulumunu yapabilirsiniz.
>>
>> Dikkat etmeniz gereken nokta python dosyasını çalıştırırken de
>> /srv/deneme/bin/python2.7 dene.py şeklinde çalıştırmanız gerek.
>>
>> Böylece sistemde önceden kurduğunuz modüllerin versiyonlarını sadece bir
>> python dosyası için değiştirmek zorunda kalmazsınız.
>>
>> Aldığınız hata ile ilgili de zeromq paketini güncellemeniz gerekmektedir.
>>
>> # /srv/deneme/bin/pip2.7 install zeromq == 3.2.2
>>
>> ile zeromq paketinin 3.3.2 versiyonunu kurabilirsiniz.
>>
>> İyi çalışmalar
>>
>>
>> 10 Ocak 2014 14:31 tarihinde Necati BAYAR <necatiba...@gmail.com> yazdı:
>>
>>   File
>>> "/usr/local/lib/python2.7/site-packages/pyzmq-14.0.1-py2.7-linux-x86_64.egg/zmq/__init__.py",
>>> line 62, in <module>
>>>     from zmq.backend import *
>>>   File
>>> "/usr/local/lib/python2.7/site-packages/pyzmq-14.0.1-py2.7-linux-x86_64.egg/zmq/backend/__init__.py",
>>> line 22, in <module>
>>>     _ns = select_backend('zmq.backend.cffi')
>>>   File
>>> "/usr/local/lib/python2.7/site-packages/pyzmq-14.0.1-py2.7-linux-x86_64.egg/zmq/backend/select.py",
>>> line 31, in select_backend
>>>     mod = __import__(name, fromlist=public_api)
>>>   File
>>> "/usr/local/lib/python2.7/site-packages/pyzmq-14.0.1-py2.7-linux-x86_64.egg/zmq/backend/cffi/__init__.py",
>>> line 12, in <module>
>>>     from zmq.backend.cffi import (constants, error, message, context,
>>> socket,
>>>   File
>>> "/usr/local/lib/python2.7/site-packages/pyzmq-14.0.1-py2.7-linux-x86_64.egg/zmq/backend/cffi/constants.py",
>>> line 4, in <module>
>>>     from ._cffi import C, c_constant_names
>>>   File
>>> "/usr/local/lib/python2.7/site-packages/pyzmq-14.0.1-py2.7-linux-x86_64.egg/zmq/backend/cffi/_cffi.py",
>>> line 194, in <module>
>>>     " but found %i.%i.%i" % _version_info
>>>
>>> ImportError: PyZMQ CFFI backend requires zeromq >= 3.2.2, but found 2.2.0
>>>
>>>
>>>
>>> 10 Ocak 2014 13:56 tarihinde Burak Arslan <burak.ars...@arskom.com.tr>yazdı:
>>>
>>> On 01/10/14 13:29, Necati BAYAR wrote:
>>>> > burak bey ;
>>>> > öncelikle yardımınız için teşekkür ederim.
>>>> > dediklerini yaptıkdan sonra o hatayı almadım fakat şu hata çıktı
>>>> >  File
>>>> >
>>>> "/usr/local/lib/python2.7/site-packages/pyzmq-14.0.1-py2.7-linux-x86_64.egg/zmq/backend/cffi/_cffi.py",
>>>> > line 18, in <module>
>>>> >     from cffi import FFI
>>>> > ImportError: No module named cffi
>>>> >
>>>> >
>>>> > bunun üzerine
>>>> >
>>>> > easy_install-2.7 cffi
>>>> >
>>>> > bu komutu çalıştırdıgmda. aşağıdaki hatayı alıyorum.
>>>> >
>>>> > c/_cffi_backend.c:4469: error: âclosureâ undeclared (first use in this
>>>> > function)
>>>> > c/_cffi_backend.c:4490: error: âffi_argâ undeclared (first use in this
>>>> > function)
>>>> > c/_cffi_backend.c:4508: warning: implicit declaration of function
>>>> > âcffi_closure_allocâ
>>>> > c/_cffi_backend.c:4525: warning: implicit declaration of function
>>>> > âffi_prep_closureâ
>>>> > c/_cffi_backend.c:4525: error: âcif_description_tâ has no member named
>>>> > âcifâ
>>>> > c/_cffi_backend.c:4526: error: âinvoke_callbackâ undeclared (first use
>>>> > in this function)
>>>> > c/_cffi_backend.c:4526: error: âFFI_OKâ undeclared (first use in this
>>>> > function)
>>>> > c/_cffi_backend.c: In function âinit_cffi_backendâ:
>>>> > c/_cffi_backend.c:5455: error: âFFI_DEFAULT_ABIâ undeclared (first use
>>>> > in this function)
>>>> > error: Setup script exited with error: command 'gcc' failed with exit
>>>> > status 1
>>>>
>>>> bunun bir cok sebebi olabilir. libffi versiyonu cffi ile uygun degildir,
>>>> libffi'nin header dosyalari yoktur vb.  bu kisimdan sorunun ne oldugu
>>>> anlasilmiyor malesef.
>>>>
>>>> burak
>>>> _______________________________________________
>>>> Linux-sunucu E-Posta Listesi
>>>> Linux-sunucu@liste.linux.org.tr
>>>>
>>>> Liste kurallarını http://liste.linux.org.tr/kurallar.php bağlantısından 
>>>> okuyabilirsiniz;
>>>>
>>>> Bu Listede neden bulunduğunuzu bilmiyorsanız veya artık bu listeden
>>>> gelen e-postaları almak istemiyorsanız aşağıdaki bağlantı adresini
>>>> kullanarak 1 dakika içinde üyeliğinizi sonlandırabilirsiniz.
>>>> https://liste.linux.org.tr/mailman/listinfo/linux-sunucu
>>>>
>>>
>>>
>>> _______________________________________________
>>> Linux-sunucu E-Posta Listesi
>>> Linux-sunucu@liste.linux.org.tr
>>>
>>> Liste kurallarını http://liste.linux.org.tr/kurallar.php bağlantısından 
>>> okuyabilirsiniz;
>>>
>>> Bu Listede neden bulunduğunuzu bilmiyorsanız veya artık bu listeden
>>> gelen e-postaları almak istemiyorsanız aşağıdaki bağlantı adresini
>>> kullanarak 1 dakika içinde üyeliğinizi sonlandırabilirsiniz.
>>> https://liste.linux.org.tr/mailman/listinfo/linux-sunucu
>>>
>>>
>>
>>
>> --
>> Aydan Taşdemir
>>
>> _______________________________________________
>> Linux-sunucu E-Posta Listesi
>> Linux-sunucu@liste.linux.org.tr
>>
>> Liste kurallarını http://liste.linux.org.tr/kurallar.php  bağlantısından
>> okuyabilirsiniz;
>>
>> Bu Listede neden bulunduğunuzu bilmiyorsanız veya artık bu listeden gelen
>> e-postaları almak istemiyorsanız aşağıdaki bağlantı adresini kullanarak 1
>> dakika içinde üyeliğinizi sonlandırabilirsiniz.
>> https://liste.linux.org.tr/mailman/listinfo/linux-sunucu
>>
>>
>
> _______________________________________________
> Linux-sunucu E-Posta Listesi
> Linux-sunucu@liste.linux.org.tr
>
> Liste kurallarını http://liste.linux.org.tr/kurallar.php  bağlantısından
> okuyabilirsiniz;
>
> Bu Listede neden bulunduğunuzu bilmiyorsanız veya artık bu listeden gelen
> e-postaları almak istemiyorsanız aşağıdaki bağlantı adresini kullanarak 1
> dakika içinde üyeliğinizi sonlandırabilirsiniz.
> https://liste.linux.org.tr/mailman/listinfo/linux-sunucu
>
>


-- 
Aydan TASDEMiR
_______________________________________________
Linux-sunucu E-Posta Listesi
Linux-sunucu@liste.linux.org.tr

Liste kurallarını http://liste.linux.org.tr/kurallar.php  bağlantısından 
okuyabilirsiniz;

Bu Listede neden bulunduğunuzu bilmiyorsanız veya artık bu listeden gelen 
e-postaları almak istemiyorsanız aşağıdaki bağlantı adresini kullanarak 1 
dakika içinde üyeliğinizi sonlandırabilirsiniz.
https://liste.linux.org.tr/mailman/listinfo/linux-sunucu

Cevap