kzen.dev
  • Pertanyaan
  • Tag
  • Pengguna
Notifikasi
Imbalan
Registrasi
Setelah Anda mendaftar, Anda akan diberitahu tentang balasan dan komentar untuk pertanyaan Anda.
Gabung
Jika Anda sudah memiliki akun, masuk untuk memeriksa pemberitahuan baru.
Akan ada hadiah untuk pertanyaan, jawaban, dan komentar tambahan.
Lebih
Sumber
Sunting
 Tim
Tim
Question

menghapus instalasi Python yang diinstal dengan mengkompilasi sumber?

Saya menginstal Python 2.7.9 di Ubuntu 14.04 dengan mengkompilasi sumbernya, dengan .configre, make, dan make altinstall. make altinstall karena saya tidak ingin menimpa Python 2.7.6 default. Python 2.7.9 yang saya instal sendiri ada di /usr/local/bin/python2.7 dan banyak file lain di direktori lain di bawah /usr/local. Dari README dalam paket instalasi sumber:

Pada sistem Unix dan Mac jika Anda berniat untuk menginstal beberapa versi Python menggunakan awalan instalasi yang sama (argumen --awalan pada skrip configure script) Anda harus berhati-hati agar python utama Anda utama Anda tidak tertimpa oleh instalasi versi lain dari Python. yang berbeda.

Semua file dan direktori yang diinstall menggunakan "make altinstall" berisi berisi versi mayor dan minor dan dengan demikian dapat hidup berdampingan. "make install" juga membuat ${prefix}/bin/python yang mengacu pada ${prefix}/bin/pythonX.Y.

Jika Anda berniat untuk menginstal beberapa versi menggunakan prefix yang sama, Anda Anda harus memutuskan versi mana (jika ada) yang merupakan versi "primary" Anda. Instal versi tersebut menggunakan "make install". Instal semua versi lain menggunakan "make altinstall".

Sebagai contoh, jika Anda ingin menginstal Python 2.5, 2.6 dan 3.0 dengan 2.6 sebagai versi utama, Anda akan mengeksekusi "make install" di direktori build 2.6 Anda direktori build 2.6 Anda dan "make altinstall" di direktori lainnya.

Sekarang saya ingin menghapus instalasi 2.7.9 yang saya pasang sendiri.

  1. Untungnya saya masih memiliki kode sumbernya, tapi sayangnya, kode sumber Makefile tidak memiliki bagian uninstall

    $ sudo make uninstall
    make: *** Tidak ada aturan untuk membuat target `uninstall'.  Berhenti.
  2. Kemudian saya mencoba cara lain: pertama-tama buat deb dari sumber dan kompilasi, instal deb (semoga menimpa file-file yang terinstal dari file yang terinstal dari make altinstall), dan kemudian uninstall deb.

    Tetapi ketika saya membuat file deb dengan checkinstall, saya tidak yakin apakah dan bagaimana saya harus melakukan hal yang berbeda untuk make altinstall dengan make install. Apa yang saya coba adalah:

    $ checkinstall altinstall
    
    ...
    
    Menginstal dengan altinstall...
    
    ========================= Hasil instalasi ===========================
    /var/tmp/tmp.4ZzIiwqBNL/installscript.sh: 4: /var/tmp/tmp.4ZzIiwqBNL/installscript.sh: altinstall: not found
    
    ...

    Saya ingin tahu bagaimana saya bisa membuat deb sehingga menginstal deb akan menduplikasi proses instalasi make altinstall?

  3. Atau bagaimana cara uninstall python 2.7.9 saya?

Catatan: paket sumber di link pertama juga memiliki setup.py, install-sh selain README.

17 2015-03-17T17:52:01+00:00 3
 Anthon
Anthon
Pertanyaan edit 18 Maret 2015 в 5:07
Unix & Linux
python
software-installation
 Anthon
Anthon
18 Maret 2015 в 5:07
2015-03-18T05:07:21+00:00
Lebih
Sumber
Sunting
#21232191

Perintah-perintah berikut ini akan menghapus python make altinstall-ed Anda:

rm -f /usr/local/bin/python2.7
rm -f /usr/local/bin/pip2.7
rm -f /usr/local/bin/pydoc
rm -rf /usr/local/bin/include/python2.7
rm -f /usr/local/lib/libpython2.7.a
rm -rf /usr/local/lib/python2.7

Anda mungkin juga harus melakukan

rm -f /usr/local/share/man/python2.7.1
rm -rf /usr/local/lib/pkgconfig
rm -f /usr/local/bin/idle
rm -f /usr/local/bin/easy_install-2.7

Meskipun make altinstall telah melayani saya dengan baik jika "system python &" memiliki nomor mayor.minor yang berbeda dari yang Anda instal, itu tidak bekerja dengan baik jika hanya nomor mikro (posisi ketiga) yang berbeda. Nomor itu dikeluarkan dari biner yang diinstal, dan Anda berakhir dengan dua versi pythonX.Y. Ini selalu menjadi masalah, tetapi begitu distribusi mulai mengirimkan utilitas sistem berdasarkan 2.7.X, masalah ini menjadi lebih parah karena 2.7 seharusnya menjadi yang terakhir dari seri Python2.

IMO pendekatan terbaik untuk mengatasi masalah ini adalah dengan mencegahnya menjadi masalah: konfigurasikan python untuk menginstal di direktori yang tidak digunakan oleh python lain. Di sistem saya, mereka berada di bawah /opt/python/X.Y.Z.

Untuk menggunakan salah satu Python yang terinstal di sana, Anda menggunakan [virualenv][1] untuk membuat environment baru:

virtualenv --python=/opt/python/2.7.9/bin/python2.7 venv
source venv/bin/activate

atau gunakan [virtualenvwrapper][2]. Saya memiliki beberapa alias untuk versi terbaru dalam seri yang saya kerjakan.

Jika Anda menggunakan tox untuk pengujian terhadap beberapa versi (Anda harus melakukannya) alias berikut ini akan membantunya menemukan berbagai versi:

alias tox='PATH=/opt/python/2.7.9/bin:/opt/python/2.6.9/bin:/opt/python/3.4.3/bin:/opt/python/3.3.6/bin:/opt/python/3.5-dev/bin:$PATH tox'

(saat ini adalah versi terbaru, saya menggunakan pengaturan yang sedikit berbeda dengan mempertahankan tautan dari /opt/python/2.7 ke /opt/python/2.7.9 terbaru, dan untuk nomor minor lainnya juga, dalam proses untuk mengunduh, membangun, dan menginstal versi python baru)

Instalasi ini tidak pernah digunakan secara langsung. Mereka selalu digunakan sebagai dasar untuk lingkungan virtualenv saja, oleh karena itu saya tidak peduli bahwa mereka tidak ada di PATH normal saya.

 Anthon
Anthon
Jawaban edit 7 Juli 2018 в 4:26
19
0
Kecerdasan buatan untuk mengurai produk dari halaman mana pun
productapi.dev
 ankostis
ankostis
7 Juli 2018 в 12:53
2018-07-07T12:53:17+00:00
Lebih
Sumber
Sunting
#21232193

Dimulai dari daftar rm @Anthon'dan menerapkan saran @bin-s untuk mencari file-file yang lebih baru, saya membuat bash-script ini untuk menghapus Python-3.6.6 saya sepenuhnya (yang telah diinstal dari sumber dengan make altinstall):

prefix='/usr/local/'
pyver='3.6'

rm -rf \
    ${prefix}bin/python${pyver} \
    ${prefix}bin/pip${pyver} \
    ${prefix}bin/pydoc \
    ${prefix}bin/include/python${pyver} \
    ${prefix}lib/libpython${pyver}.a \
    ${prefix}lib/python${pyver} \
    ${prefix}bin/python${pyver} \
    ${prefix}bin/pip${pyver} \
    ${prefix}bin/include/python${pyver} \
    ${prefix}lib/libpython${pyver}.a \
    ${prefix}lib/python${pyver} \
    ${prefix}lib/pkgconfig/python-${pyver}.pc \
    ${prefix}lib/libpython${pyver}m.a \
    ${prefix}bin/python${pyver}m \
    ${prefix}bin/2to3-${pyver} \
    ${prefix}bin/python${pyver}m-config \
    ${prefix}bin/idle${pyver} \
    ${prefix}bin/pydoc${pyver} \
    ${prefix}bin/pyvenv-${pyver} \
    ${prefix}share/man/man1/python${pyver}.1 \
    ${prefix}include/python${pyver}m
    ${prefix}bin/pydoc ## WARN: skip if other pythons in local exist.

Gunakan dengan hati-hati (misalnya tambahkan opsi -I di rm cmd untuk memverifikasi setiap kill).

7
0
Kecerdasan buatan untuk mengurai produk dari halaman mana pun
productapi.dev
Bin S
Bin S
23 Maret 2018 в 10:39
2018-03-23T22:39:32+00:00
Lebih
Sumber
Sunting
#21232192

Biasanya semua file terinstal dalam waktu hampir satu menit. Anda dapat menggunakan "find" untuk memeriksa semua file yang terinstal dalam waktu yang hampir bersamaan, lalu "rm" mereka secara manual. Semoga bermanfaat.

find /usr/local/ -type f -newer <some latest old File>
1
0
Related communities 9
Python Indonesia
Python Indonesia
25 716 pengguna
Programmer Python Indonesia. Group ini dikelola oleh sejumlah admin. Baca pesan tersemat / pinned message: https://t.me/pythonID/217588
Buka telegram
Belajar GNU/Linux Indonesia
Belajar GNU/Linux Indonesia
6 917 pengguna
Komunitas GNU/Linux Indonesia di Telegram, baca peraturan group di: telegra.ph/Peraturan-BGLI-03-07
Buka telegram
Indonesian Python Warriors
Indonesian Python Warriors
1 477 pengguna
Di grup ini tidak ada kewajiban untuk menggunakan username dan foto. Yang tidak boleh adalah spamming. Gak boleh baper, kalau nanya yang bener, eror jangan difoto pake HP, gunakan screenshot, code copas ke dpaste.org lalu share link ke sini.
Buka telegram
Python-ID Jogja
Python-ID Jogja
945 pengguna
Buka telegram
Deepin Linux Indonesia
Deepin Linux Indonesia
513 pengguna
ℹ️ Selamat datang di Grup Telegram Deepin Linux Indonesia ! Grup linux 📎 Pop!_OS: @pop_linux Channel 📎 Void: @void_time Group Programming 📎 Alpine.js: @alpinejsid 📎 Rust: @rust_community 📎 Go: @go_community
Buka telegram
Python Newbie Indonesia
Python Newbie Indonesia
443 pengguna
Peraturan grup Python Newbie 🌻Dilarang spam 🌻Dilarang menggunakan bahasa kasar 🌻Dilarang beriklan di grup tanpa seizin admin Beberapa video dasar python dapat diliat melalui channel youtube juan aditya Jangan lupa untuk subscribe ya🙏
Buka telegram
Tambahkan pertanyaan
Kategori
Semua
Teknologi
Budaya / Rekreasi
Kehidupan / Seni
Ilmu Pengetahuan
Profesional
Bisnis
Pengguna
Semua
Baru
Populer
1
Inessa bu
Terdaftar 4 minggu yang lalu
2
Denis Babushkin
Terdaftar 1 bulan yang lalu
3
asakuno asakuno
Terdaftar 1 bulan yang lalu
4
aldo salerno
Terdaftar 1 bulan yang lalu
5
Анна Батицкая
Terdaftar 1 bulan yang lalu
Kecerdasan buatan untuk mengurai produk dari halaman mana pun
productapi.dev
ID
JA
© kzen.dev 2023
Sumber
unix.stackexchange.com
di bawah lisensi cc by-sa 3.0 dengan atribusi