Bagaimana cara memberitahu Python waf di mana menempatkan paket? Bisakah ini bekerja dengan virtualenv?

Saya mencoba menginstal paket waf yang sudah jadi (py2cairo) di direktori pilihan saya. Idealnya di virtualenv saya site-packages. Ini seharusnya sederhana, tetapi sepertinya saya tidak punya kemampuan untuk melakukannya.

$ sudo ./waf install
  ./options()
Waf: Entering directory `/tmp/py2cairo-1.10.0/build_directory'
  ./build()
  src/build()
- install /usr/local/include/pycairo/pycairo.h (from src/pycairo.h)
+ install /usr/local/lib/python2.6/site-packages/cairo/_cairo.so (from build_directory/src/_cairo.so)
+ install /usr/local/lib/pkgconfig/pycairo.pc (from pycairo.pc)
Waf: Leaving directory `/tmp/py2cairo-1.10.0/build_directory'
- install /usr/local/lib/python2.6/site-packages/cairo/__init__.py (from src/__init__.py)
+ byte compiling '/usr/local/lib/python2.6/site-packages/cairo/__init__.py'
'install' finished successfully (0.130s)

Saya ingin mengubah /usr/local/lib/python2.6/site-packages/cairo/__init__.py menjadi sesuatu yang saya pilih. Saya tidak dapat menemukan opsi konfigurasi yang dapat melakukan ini untuk saya.

Perintah --prefix menambahkan awalan ke string, tetapi tidak mengubahnya. --destdir sepertinya tidak ada bedanya.


person Joe    schedule 13.04.2012    source sumber
comment
Itu adalah suara negatif yang malas. Apa yang salah dengan pertanyaannya?   -  person Joe    schedule 13.04.2012


Jawaban (2)


Sunting: Jika pengembang tidak menerapkan opsi seperti itu, hanya --prefix yang Anda dapatkan.

Anda dapat menggalinya sendiri dan menambahkan opsi yang menggunakan metode .install_as, .symlink_as, .install_files.

Untuk detailnya lihat wafbook bab 4.2.2

person drahnr    schedule 13.04.2012
comment
Terima kasih banyak. Saya merasa mungkin inilah masalahnya. Saya ingin membuat semuanya sesederhana mungkin karena 1 - Saya ingin dapat menginstal ini secara otomatis untuk kemudahan konfigurasi server dan 2 - Saya belum tentu tahu di mana direktori paket situs saya jika saya menggunakan virtualenv - person Joe; 15.04.2012
comment
Saya menerima nasib saya, dan mengizinkannya dipasang di paket situs global. - person Joe; 16.04.2012

Ada argumen yang dapat Anda gunakan bersama dengan .waf install untuk menentukan lokasi:

./waf install --destdir=/tmp/package

person Brian Monroe    schedule 05.09.2015