SORU
16 Ocak 2014, PERŞEMBE


Paketler Ubuntu düğüm Paket Yöneticisi kullanarak yüklemek mümkün değil

Ubuntu üzerinde NodeJS tercüman ismi(node) başka bir paket ile isim çakışması nedeniyle nodejs için yeniden adlandırıldı. Readme işte.debian diyor ki:

The upstream name for the Node.js interpreter command is "node".
In Debian the interpreter command has been changed to "nodejs".

This was done to prevent a namespace collision: other commands use
the same name in their upstreams, such as ax25-node from the "node"
package.

Scripts calling Node.js as a shell command must be changed to instead
use the "nodejs" command.

Ancak, nodejs kullanarak yükleme paketleri npm kullanarak mucks. Paket kurulumu aşağıdaki hata nedeniyle başarısız:

sh: 1: node: not found
npm WARN This failure might be due to the use of legacy binary "node"
npm WARN For further explanations, please read /usr/share/doc/nodejs/README.Debian

Nasıl etmesinin önünü nodejs sistemde zaten yüklü ama çevirmen adı farklı olduğuna inandıracağım?

CEVAP
16 Ocak 2014, PERŞEMBE


TL;DR:

sudo apt-get install nodejs-legacy

Öncelikle beni bu duruma biraz açıklık getireyim. Yaz 2012 Debian tutucular Node.js başka bir paket ile isim çarpışma bir tür önlemek için yürütülebilir dosyayı yeniden adlandırmak karar verdi. Geriye uyumluluk kırıyor çünkü Debian Teknik Komite için çok zor bir karardı.

Aşağıdaki Kurul karar hazırlama, Debian mailing list: "de yayımlanan bir alıntı

  1. Nodejs paketi /usr/bin/nodejs /usr/bin/düğüm sağlamak için değişmiş olacaktır. Paketi bir Tatili ilan etmeli: ile ilişki başvuru /usr/bin/düğüm bu, Debian herhangi bir paket.

  2. Paketi de Öncelik nodejs-eski ikili bir paket sağlayacaktır nodejs kaynak: /usr/bin/bir sembolik link olarak düğüm içeren ekstra /usr/bin/nodejs. Arşivde hiçbir paketin bağımlı ya da tavsiye edebilir sadece yukarı için sağlanan nodejs-legacy paketi
    uyumluluk. Bu paket aynı zamanda bir Çatışmalar beyan eder: düğüm paketi ile ilişki.

<...>

Paragraf 2 OP sorunu için gerçek bir çözüm. OP bu paketi yüklemek için el ile sembolik bağ yapmak yerine denemelisiniz. Burada Debian paket endeksinde bu paketi website bir bağlantı.

Yüklü sudo apt-get install nodejs-legacy kullanarak olabilir.

Etmesinin önünü geliştiricileri tarafından her şeyi sahiplenmek hakkında herhangi bir bilgi bulamadım, ama npm paket bazı noktada sabit olacak ve nodejs-legacy gerçekten eski haline.

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Ciaran Blumenfeld

    Ciaran Blume

    20 NİSAN 2009
  • MyTiredBones

    MyTiredBones

    2 Temmuz 2013
  • Triune Films

    Triune Films

    9 ŞUBAT 2006