


Mengapa Linux perlu menyusun kod sumber?
Sebab: 1. Terdapat banyak versi Linux, tetapi setiap versi menggunakan perisian atau versi kernel yang berbeza, dan persekitaran yang bergantung pada pakej binari mungkin tidak semestinya dapat berjalan seperti biasa, jadi kebanyakan perisian menyediakan secara langsung kod sumber untuk diproses. 2. Mudah untuk menyesuaikan untuk memenuhi keperluan yang berbeza. 3. Mudah untuk operasi dan penyelenggaraan dan penyelenggaraan pembangun boleh dibungkus sebagai binari, tetapi pembungkusan perisian ini memerlukan kerja tambahan yang mahal, termasuk penyelenggaraan, jadi jika ia adalah kod sumber, pengeluar perisian akan mengekalkannya secara langsung.
Persekitaran pengendalian tutorial ini: sistem linux7.3, komputer Dell G3.
Mengapa Linux perlu menyusun kod sumber?
Secara umumnya, perisian kami dipasang dalam dua cara: yum (rpm) dan kompilasi kod sumber kita perlukan kod sumber? Kompil dan pasang beberapa perisian? Terdapat beberapa sebab untuk memilih kod sumber untuk menyusun dan memasang perisian:
Untuk memenuhi platform pengendalian yang berbeza, kami mempunyai banyak versi Linux, tetapi setiap versi menggunakan perisian atau versi kernel yang berbeza, dan Persekitaran yang bergantung kepada pakej binari kami mungkin tidak semestinya berjalan seperti biasa, jadi kebanyakan perisian menyediakan kod sumber secara langsung!
Mudah untuk disesuaikan untuk memenuhi keperluan yang berbeza. Banyak kali perisian yang kami perlukan boleh disesuaikan. Kebanyakan kod binari boleh dipasang dengan satu klik darjah kebebasan tidak tinggi!
Ia mudah untuk operasi dan penyelenggaraan, dan kod sumber kami boleh dibungkus sebagai binari, tetapi pembungkusan perisian ini memerlukan kerja tambahan yang mahal, termasuk penyelenggaraan, jadi jika Jika. ia adalah kod sumber, pengeluar perisian akan mengekalkannya secara langsung, tetapi jika ia binari, ia biasanya disediakan oleh penerbit Linux.
Tutorial kod sumber kompilasi Linux
Hampir semua perisian di Linux dibenarkan GPL, jadi hampir semua perisian akan menyediakan kod sumber.
Untuk dilaksanakan pada Linux, perisian mestilah fail binari Oleh itu, apabila kita mendapat kod sumber perisian, kita perlu menyusunnya ke dalam fail binari untuk dijalankan di Linux.
1 Proses penyusunan perisian
Menyusun kod sumber ke dalam fail binari yang boleh dijalankan di Linux memerlukan dua langkah:
<.>- Gunakan pengkompil gcc untuk menyusun kod sumber ke dalam fail objek
- Gunakan pengkompil gcc sekali lagi untuk memautkan fail objek ke dalam fail binari
2. Langkah pemasangan kod sumber Linux
- Dapatkan kod sumber
Muat turun kod sumber perisian ke /usr/ local/ dan nyahzipnya.
- Lihat fail INSTALL dan README
Selepas penyahmampatan, lihat fail INSTALL dan README Kedua-dua fail ini memperkenalkan secara terperinci kaedah pemasangan dan langkah berjaga-jaga perisian ini.
- Buat Makefile
Laksanakan perintah konfigurasi untuk menjana Makefile.
- Kompil
Laksanakan arahan make clean;make untuk menyusun kod sumber ke dalam fail binari.
PS: Perintah buat bersih digunakan untuk mengosongkan fail sasaran yang dijana oleh kompilasi terakhir. Langkah ini adalah pilihan, tetapi untuk memastikan kejayaan penyusunan, adalah lebih baik untuk menambahnya. Cegah kegagalan penyusunan disebabkan oleh fail objek yang tinggal dalam perisian. - Pemasangan
Laksanakan arahan make install untuk memasang fail binari yang disusun dalam langkah sebelumnya ke dalam direktori yang ditentukan.
3. Demonstrasi pemasangan
1) Masukkan /usr/local/ dan cipta direktori memcached :
cd /usr/local/ mkdir memcached
2) Muat turun kod sumber memcached
wget http://memcached.org/files/memcached-1.4.29.tar.gz
3) Nyahzip kod sumber
tar -zxvf memcached-1.4.29.tar.gz
4) Laksanakan konfigurasi untuk menjana fail Makefile
./configure --prefix=/usr/local/memcached/
Nota: Parameter –prefix menentukan direktori pemasangan perisian. Apabila arahan make install dilaksanakan, perisian akan dipasang dalam laluan ini Jika parameter ini tidak ditentukan dan awalan tidak ditentukan, fail boleh laku akan diletakkan dalam /usr/local/bin secara lalai, dan perpustakaan. fail akan diletakkan dalam /usr/local/lib secara lalai , fail konfigurasi diletakkan dalam /usr/local/etc secara lalai. Fail sumber lain diletakkan dalam /usr/local/share.
5) Laksanakan make, baca arahan daripada Makefile, dan susun kod sumber
make
此时make会读取Makefile文件,将源码编译成二进制文件,并存放在当前目录下。
执行这一步之前可以先进行清理作业:
make clean && make uninstall
6)执行make install,将软件安装至指定目录
make install
此时二进制文件会被安装到先前configure prefix参数设置的路径中去。
安装完成!
4、cmake命令(了解)
cmake就是一个与make同级别的编译工具,只不过它依靠的不是Makefile作为编译规则,而是根据CMakeLists.txt来编译的。
CMake是一个比make更高级的编译配置工具,它可以根据不同平台、不同的编译器,通过编写CMakeLists.txt,可以控制生成的Makefile,从而控制编译过程。
CMake自动生成的Makefile不仅可以通过make命令构建项目生成目标文件,还支持安装(make install)、测试安装的程序是否能正确执行(make test,或者ctest)、生成当前平台的安装包(make package)、生成源码包(make package_source)、产生Dashboard显示数据并上传等高级功能,只要在CMakeLists.txt中简单配置,就可以完成很多复杂的功能,包括写测试用例。
如果有嵌套目录,子目录下可以有自己的CMakeLists.txt。
相关推荐:《Linux视频教程》
Atas ialah kandungan terperinci Mengapa Linux perlu menyusun kod sumber?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Alat AI Hot

Undresser.AI Undress
Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover
Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool
Gambar buka pakaian secara percuma

Clothoff.io
Penyingkiran pakaian AI

AI Hentai Generator
Menjana ai hentai secara percuma.

Artikel Panas

Alat panas

Notepad++7.3.1
Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina
Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1
Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6
Alat pembangunan web visual

SublimeText3 versi Mac
Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Topik panas



Menggunakan Python di Terminal Linux ...

Multithreading dalam bahasa dapat meningkatkan kecekapan program. Terdapat empat cara utama untuk melaksanakan multithreading dalam bahasa C: Buat proses bebas: Buat pelbagai proses berjalan secara bebas, setiap proses mempunyai ruang ingatan sendiri. Pseudo-Multithreading: Buat pelbagai aliran pelaksanaan dalam proses yang berkongsi ruang memori yang sama dan laksanakan secara bergantian. Perpustakaan multi-threaded: Gunakan perpustakaan berbilang threaded seperti PTHREADS untuk membuat dan mengurus benang, menyediakan fungsi operasi benang yang kaya. Coroutine: Pelaksanaan pelbagai threaded ringan yang membahagikan tugas menjadi subtask kecil dan melaksanakannya pada gilirannya.

Untuk membuka fail web.xml, anda boleh menggunakan kaedah berikut: Gunakan editor teks (seperti Notepad atau TextEdit) untuk mengedit arahan menggunakan persekitaran pembangunan bersepadu (seperti Eclipse atau NetBeans) (Windows: Notepad Web.xml; Mac/Linux: Open -A -A TextEdit Web.xml)

Mengenai masalah menghapuskan penterjemah python yang dilengkapi dengan sistem Linux, banyak pengagihan Linux akan memasang semula penterjemah python apabila dipasang, dan ia tidak menggunakan pengurus pakej ...

Linux paling baik digunakan sebagai pengurusan pelayan, sistem tertanam dan persekitaran desktop. 1) Dalam pengurusan pelayan, Linux digunakan untuk menjadi tuan rumah laman web, pangkalan data, dan aplikasi, menyediakan kestabilan dan kebolehpercayaan. 2) Dalam sistem tertanam, Linux digunakan secara meluas di rumah pintar dan sistem elektronik automotif kerana fleksibiliti dan kestabilannya. 3) Dalam persekitaran desktop, Linux menyediakan aplikasi yang kaya dan prestasi yang cekap.

Debianlinux terkenal dengan kestabilan dan keselamatannya dan digunakan secara meluas dalam persekitaran pelayan, pembangunan dan desktop. Walaupun kini terdapat kekurangan arahan rasmi mengenai keserasian langsung dengan Debian dan Hadoop, artikel ini akan membimbing anda tentang cara menggunakan Hadoop pada sistem Debian anda. Keperluan Sistem Debian: Sebelum memulakan konfigurasi Hadoop, sila pastikan sistem Debian anda memenuhi keperluan operasi minimum Hadoop, yang termasuk memasang Java Runtime Environment (JRE) dan pakej Hadoop. Langkah Penyebaran Hadoop: Muat turun dan Unzip Hadoop: Muat turun versi Hadoop yang anda perlukan dari laman web Apachehadoop rasmi dan selesaikannya

Adakah saya perlu memasang klien oracle semasa menyambung ke pangkalan data oracle menggunakan GO? Semasa membangun di GO, menyambung ke pangkalan data Oracle adalah keperluan biasa ...

"Debianstrings" bukan istilah standard, dan makna khususnya masih belum jelas. Artikel ini tidak dapat mengulas secara langsung mengenai keserasian penyemak imbasnya. Walau bagaimanapun, jika "debianstrings" merujuk kepada aplikasi web yang dijalankan pada sistem Debian, keserasian penyemak imbasnya bergantung kepada seni bina teknikal aplikasi itu sendiri. Sebilangan besar aplikasi web moden komited untuk keserasian penyemak imbas. Ini bergantung kepada standard web berikut dan menggunakan teknologi front-end yang serasi (seperti HTML, CSS, JavaScript) dan teknologi back-end (seperti PHP, Python, Node.js, dll.). Untuk memastikan bahawa aplikasi itu serasi dengan pelbagai pelayar, pemaju sering perlu menjalankan ujian silang dan menggunakan responsif
