GNU/Linux >> Belajar Linux >  >> Linux

Edit Dan Kompilasi Ulang Program Individu?

whereis pwd
pwd: /bin/pwd /usr/include/pwd.h /usr/share/man/man1/pwd.1.gz

Pwd dalam folder biner tidak sama dengan

type pwd
pwd is a shell builtin

jadi bukankah tidak berbahaya untuk melakukan eksperimen pada pwd eksternal? Seperti, menambahkan "Halo shell!" cout hanya untuk menunjukkan prinsip?

Sumber pwd nya mana? Apakah Anda biasanya mendapatkannya dengan distribusi (saya menggunakan Debian) atau apakah Anda menginstal atau mengunduhnya? Apakah di C? Apakah saya mengkompilasinya seperti file lain dengan gcc dan meletakkan hasilnya (dengan chmod pas) di folder yang dicakup oleh path? Bagaimana dengan peningkatan? Seperti yang Anda pahami, saya melewatkan gambaran besarnya di sini.

(Omong-omong, file header tampaknya tidak terkait:pwd seperti dalam kata sandi, bukan print/present working directory.)

Jawaban yang Diterima:

bukankah tidak berbahaya untuk melakukan eksperimen pada pwd eksternal?

Ini adalah taruhan buruk bahwa tidak ada yang menggunakan /bin/pwd . Ini adalah praktik yang baik dalam skrip shell — terutama yang biasanya dijalankan oleh root — untuk memberikan path lengkap ke program eksternal, untuk alasan keamanan.

Namun, Anda dapat membuat pwd khusus dengan aman dan letakkan di bawah di direktori home Anda di suatu tempat. Jika paket menggunakan Autoconf, ini biasanya cukup untuk mengonfigurasi paket yang akan diinstal di bawah direktori home Anda:

$ ./configure --prefix=$HOME

Anda mungkin mengatakan sesuatu seperti --prefix=$HOME/pwd-test sebagai gantinya, untuk menghindari kemungkinan konflik.

Selama sistem pembangunan paket diatur dengan benar, saat Anda mengonfigurasinya seperti itu, Anda dapat dengan aman mengatakan make install tanpa root, karena semua file yang ditulisnya harus menggunakan awalan yang Anda berikan.

Di mana sumber untuk pwd?

pwd adalah bagian dari coreutils . Anda menemukan hal-hal seperti itu dengan mesin pencari paket Debian.

Apakah Anda biasanya mendapatkannya dengan distribusi (saya menggunakan Debian)

Anda mungkin belum mengunduh sumber distribusi, tetapi ya, itu dianggap sebagai bagian dari distribusi Debian. Mereka dipisahkan menjadi satu set DVD sumber enam disk (!), terdiri dari sekitar 25 GB, itulah sebabnya kebanyakan orang tidak pernah mengunduhnya.

Kecuali jika Anda mencoba melakukan sesuatu seperti membangun kembali seluruh distribusi Debian atau membuat distribusi turunan, Anda mungkin tidak harus mengunduhnya bahkan sekarang. A la carte download mungkin merupakan ide yang lebih baik pada tahap ini.

apakah Anda entah bagaimana menginstal atau mengunduhnya?

Ya, Anda juga dapat menggunakan apt-get untuk menginstal kode sumber untuk paket. Ada satu bab lengkap di APT HOWTO tentang ini.

Terkait:cara menjalankan program pada acara daya?

(Dokumen itu ditandai Usang, tetapi saya tidak melihat dokumen pengganti.)

Apakah di C?

Kemungkinan besar, ya.

Apakah saya mengkompilasinya seperti file lain dengan gcc dan meletakkan hasilnya (dengan chmod pas) di folder yang dicakup oleh path?

Anda mungkin tidak menjalankan gcc secara langsung, Anda mungkin melakukan configure ; make ; make install menari. Jika Anda mengunduh tarball sumber dari halaman pencarian paket Debian, Anda mungkin akan menemukan INSTALL atau README file di tarball, yang akan berisi instruksi build.

Bagaimana dengan peningkatan versi?

Bagaimana dengan mereka? Mesin pencari paket akan membantu Anda menemukan versi perangkat lunak apa pun yang mungkin Anda inginkan, dan apt-get akan membantu Anda melacak perubahan pada sumber seperti halnya pada binari.

Saya melewatkan gambaran besarnya di sini.

Anda mungkin ingin melihat Dokumentasi Debian.

file header tampaknya tidak terkait:pwd seperti dalam kata sandi, bukan print/present working directory.)

Ya. Ini adalah header utilitas untuk programmer C, untuk mendapatkan akses ke database pengguna. Ucapkan man 3 getpwent untuk mendapatkan gambaran tentang apa yang tersedia melalui antarmuka tersebut.


Linux
  1. Perbedaan Aneh Antara Pwd Dan /bin/pwd?

  2. Cara Menginstal dan Menggunakan Telnet di Debian 11

  3. Bagaimana cara mendeteksi dan mengetahui suatu program mengalami kebuntuan?

  1. Instal SoftHSM dan Akses melalui Program Java

  2. Buat dan edit pengguna di MySQL

  3. Cara Menginstal dan Mengonfigurasi Redis di Debian

  1. Edit teks di Linux dengan KWrite dan Kate

  2. Cara Menginstal Node.js dan NPM di Debian 11

  3. Cara Menulis dan Menjalankan Program Qt pertama Anda di Debian 10