Rumah  >  Artikel  >  Operasi dan penyelenggaraan  >  Apakah arahan linux make?

Apakah arahan linux make?

藏色散人
藏色散人asal
2023-03-25 09:14:038475semak imbas

Arahan linux make ialah salah satu daripada arahan yang paling kerap digunakan oleh pentadbir sistem dan pengaturcara Ia juga merujuk kepada "pengurus kompilasi automatik", di mana "automatik" bermakna ia boleh menemui dan menyusun fail secara automatik berdasarkan. cap masa fail. Fail baharu untuk mengurangkan beban kerja, dan pada masa yang sama, ia boleh melaksanakan sejumlah besar kerja kompilasi dengan membaca kandungan fail makefile.

Apakah arahan linux make?

Persekitaran pengendalian tutorial ini: sistem linux5.9.8, komputer Dell G3.

Apakah arahan buat linux?

Arahan buat di bawah Linux ialah salah satu arahan yang paling kerap digunakan oleh pentadbir sistem dan pengaturcara. Pentadbir menggunakannya untuk menyusun dan memasang banyak alatan sumber terbuka melalui baris arahan, dan pengaturcara menggunakannya untuk mengurus masalah penyusunan projek besar dan kompleks mereka.

1. Kelebihan membuat sintaks

Pengurus projek buat ialah "pengurus kompilasi automatik" di sini bermakna ia boleh menyusun mengikut fail cap waktu secara automatik menemui fail yang dikemas kini untuk mengurangkan beban kerja Pada masa yang sama, ia melaksanakan sejumlah besar kerja kompilasi dengan membaca kandungan fail makefile. Pengguna hanya perlu menggunakan pernyataan kompilasi ringkas sekali, yang dapat meningkatkan kecekapan sebenar projek.

Mari kita bayangkan dahulu satu kes Andaikan fail boleh laku saya mengandungi empat fail kod sumber, iaitu main.c haha.c sin_value.c cos_value.c. Jika anda mahu Program ini boleh dijalankan, jadi ia perlu disusun seperti ini

[root@linux ~]# gcc -c main.c 
[root@linux ~]# gcc -c haha.c 
[root@linux ~]# gcc -c sin_value.c 
[root@linux ~]# gcc -c cos_value.c 
# 先以上面的动作制作出四个目标文件,然后再进行下面的动作: 
 
[root@linux ~]# gcc -o main main.o haha.o sin_value.o cos_value.o \ 
> -lm -L/usr/lib -L/lib 
# 这样就可以制作出  main 这个执行档啰!执行看看吧! 

[root@linux ~]# ./main 
HaHa! I'm the King of the world 0.706825 0.707388

Jika boleh, bolehkah anda menyelesaikan semua tindakan di atas dalam satu langkah? Cuba buat fail make dalam direktori ini dengan kandungan berikut:

# 1. 先建立编译的规则 
[root@linux ~]# vi makefile 
main: main.o haha.o sin_value.o cos_value.o 
 gcc -o main main.o haha.o sin_value.o cos_value.o -lm 
# 注意:第二行的 gcc 之前是 <tab> 按键产生的空格喔! 
 
# 2. 尝试给他建立规则看看 
[root@linux ~]# rm -f main *.o   <==先将之前的目标文件去除 
[root@linux ~]# make 
cc    -c -o main.o main.c 
cc    -c -o haha.o haha.c 
cc    -c -o sin_value.o sin_value.c 
cc    -c -o cos_value.o cos_value.c 
gcc -o main main.o haha.o sin_value.o cos_value.o -lm 
# 这个时候 make 会主动去读取 makefile 这个档案的内容, 
# 并根据内容直接去给他编译起相关的执行档啰! 
 
# 3. 如果再执行一次 make 会怎样?! 
[root@linux ~]# make 
make: `main' is up to date. # 看到了吧?!是否很方便呢?!

make mempunyai faedah berikut:
• Memudahkan arahan yang perlu dikeluarkan semasa penyusunan;

• Jika fail kod sumber diubah suai selepas kompilasi selesai, make hanya akan menyusun fail yang diubah suai, dan fail objek lain tidak akan ditukar

• Selepas Kemas kini fail boleh laku mengikut kebergantungan.

2. Sintaks asas make

Peraturan asas pembuatan ialah:

目标(target): 依赖条件 1 依赖条件 2 <tab>   gcc -o 欲建立的执行文件 依赖条件 1 依赖条件 2
Makefile mengandungi tiga elemen: matlamat, kebergantungan, arahan. Hanya terdapat satu matlamat akhir dalam fail makefile, dan semua matlamat lain bergantung pada matlamat ini.

Sasaran ialah maklumat yang ingin kami buat, dan syarat kebergantungan ialah fail objek yang berkaitan Sintaks untuk mencipta fail boleh laku ialah baris bermula dengan butang Beri perhatian khusus kepadanya, "Baris arahan mesti bermula dengan kekunci tab"! Peraturannya pada asasnya seperti ini:

• # dalam makefile mewakili ulasan

perlu menjadi aksara pertama dalam baris arahan; • Sasaran dan fail bergantung (iaitu, fail sasaran) mesti dipisahkan dengan ":".

Anda boleh menggunakan perintah dipermudahkan pembolehubah automatik lalai sistem dalam fail make:

Pembelajaran yang disyorkan: "
$^:代表所有的依赖条件。
$@:代表目标文件
$<:代表一个目标文件
tutorial video linux
"

Atas ialah kandungan terperinci Apakah arahan linux make?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel sebelumnya:apa itu linux repoArtikel seterusnya:apa itu linux repo