makepp_builtin - Online di Cloud

Ini adalah perintah makepp_builtin yang dapat dijalankan di penyedia hosting gratis OnWorks menggunakan salah satu dari beberapa workstation online gratis kami seperti Ubuntu Online, Fedora Online, emulator online Windows atau emulator online MAC OS

PROGRAM:

NAMA


makepp_builtin -- Aturan bawaan untuk makepp

DESKRIPSI


Makepp mungkin dapat mengetahui cara mengkompilasi dan menautkan program Anda bahkan jika Anda menentukan
tidak ada aturan sama sekali (atau jika Anda bahkan tidak memiliki Makeppfile). Setelah setiap Makeppfile adalah
dimuat, makepp juga memuat seperangkat aturan default. (Aturan ini khusus karena mereka
jangan menimpa aturan lain di Makeppfile.) Basis data aturan default disimpan
dalam file "makepp_builtin_rules.mk" di direktori distribusi atau perpustakaan makepp, jadi
Anda selalu dapat melihatnya untuk melihat dengan tepat apa aturan defaultnya.

Aturan bawaan Makepp hampir sama dengan aturan di GNU make, kecuali tidak ada
aturan untuk beberapa bahasa langka yang dibuat GNU memiliki aturan. (Ini disengaja; saya
sering mengalami masalah dengan GNU make pada beberapa proyek yang secara tidak sengaja menggunakan kembali sebagian dari
sufiks yang dibuat GNU ditetapkan untuk bahasa langka itu.) Aturannya menggunakan hal yang sama
variabel seperti yang dibuat GNU, dengan beberapa tambahan yang mungkin berguna. Makepp lebih pintar dari GNU
buat tentang menyimpulkan kompiler mana yang akan digunakan, dan objek dan pustaka mana yang akan ditautkan
masuk

Default variabel nilai-nilai
Makepp menyediakan nilai default untuk sejumlah variabel. Sebagian besar dari ini biasanya
digunakan dalam aturan, dan memang digunakan dalam aturan default. Nilai-nilai mereka dapat diganti
dengan menetapkan variabel-variabel ini di Makeppfile Anda atau di baris perintah.

Variabel-variabel ini didokumentasikan dalam "Variabel Standar" di makepp_variables. Jika Anda memiliki
pertanyaan tentang apa yang dievaluasi oleh variabel apa pun, Anda selalu dapat meletakkan garis seperti itu
dari baris ini di Makeppfile Anda:

boneka := $(cetak $(CC))
&echo -- $(CC) # Harus lebih kecil dari aturan sebelumnya.

yang hanya mencetak nilai variabel "$(CC)" saat Makeppfile dimuat.
(Kebetulan, ini adalah cara yang berguna untuk men-debug ekspresi apa pun yang Anda tidak yakin
Baik.)

Kompilasi aturan
Dalam bentuk yang disederhanakan, inilah kira-kira seperti apa aturan kompilasi itu. Jika kamu
ubah nilai dari salah satu variabel yang ditunjukkan, perintah kompilasi diubah sebagai
diharapkan.

#
# Untuk program C:
#
%.o: %.c
$(CC) $(CFLAGS) $(CPPFLAGS) -c $(masukan) -o $(keluaran)

#
# Untuk program C++:
#
%.o: %.cxx # dan juga %.cc, %.cpp, %.c++, dan %.C
$(CXX) $(CXXFLAGS) $(CPPFLAGS) -c $(masukan) -o $(keluaran)

#
# Untuk program Fortran:
#
%.dari
$(FC) $(FFLAGS) -c $(masukan) -o $(keluaran)

#
# Yacc dan lex:
#
%.c: %.y
$(YACC) $(YFLAGS) $(masukan)
&mv -f y.tab.c $(keluaran)

%.c: %.l
$(LEX) $(LFLAGS) -t $(masukan) -o $(keluaran)

Jika Anda penasaran dengan detail tepatnya, Anda dapat melihat di file
makepp_builtin_rules.mk dalam distribusi makepp.

Link aturan
Makepp juga tahu cara menautkan program. Makepp berusaha menjadi lebih pintar dari
standar Unix buat dalam hal mencari tahu perintah tautan. Misalkan Anda sedang mencoba
untuk membangun program target "xyz". Makepp akan mencoba membangun ini dari "xyz.o", dan
(tidak seperti merek Unix standar) ia juga akan mencoba menyimpulkan apakah ada objek lain atau
perpustakaan harus terhubung.

Aturan tautan terlihat seperti ini:

xyz: $(infer_objects xyz.o, *.o)
$(infer_linker $(masukan)) $(masukan) $(LDFLAGS) $(LDLIBS) $(LIBS) -o $(keluaran)

"$(infer_objects)" mencoba menyimpulkan file ".o" apa yang perlu ditautkan berdasarkan
file ".h" apa yang disertakan.

"Inferred linker" adalah sedikit sihir khusus yang berubah menjadi "$(CC)" jika semua sumbernya
adalah kode C, "$(CXX)" jika salah satu sumbernya adalah C++, atau "$(F77)" jika salah satu sumbernya adalah
Benteng.

Putar lepas itu built-in aturan
Jika Anda tidak menyukai aturan bawaan, jangan gunakan. Jika mereka tidak bekerja untuk Anda, Anda
dibangun mungkin cukup rumit sehingga Anda memerlukan Makeppfile kustom Anda sendiri
pula.

Untuk mematikan aturan bawaan, Anda dapat menambahkan baris seperti ini ke Makeppfile Anda:

makepp_no_builtin = 1

Jika Anda menggunakannya, tetapi bukan aturan tautan bawaan yang cukup mahal, Anda dapat mengubahnya
mati dengan:

makepp_no_builtin_linker = 1

Untuk kompatibilitas mundur, makepp juga mematikan aturan defaultnya jika Anda menyertakan ini
baris di suatu tempat di Makeppfile Anda:

.SUFFIX:

Anda dapat menonaktifkan aturan bawaan untuk setiap Makeppfile di seluruh build dengan menentukan:
Opsi "--no-builtin-rules" pada baris perintah.

Gunakan makepp_builtin online menggunakan layanan onworks.net



Program online Linux & Windows terbaru