Ini ialah arahan yang dibuat bergantung yang boleh dijalankan dalam penyedia pengehosan percuma OnWorks menggunakan salah satu daripada berbilang stesen kerja dalam talian percuma kami seperti Ubuntu Online, Fedora Online, emulator dalam talian Windows atau emulator dalam talian MAC OS.
JADUAL:
NAMA
makedepend - cipta kebergantungan dalam makefiles
SINOPSIS
tidak bergantung [ -Dnama=def ] [ -Dnama ] [ -Itermasukir ] [ -Ytermasukir ] [ -a ] [ -fmakefile
] [ -termasuk fail ] [ -oobjsuffix ] [ -pobjprefix ] [ -srentetan ] [ -wlebar ] [ -v ] [ -m ]
[ -- pilihan lain -- ] fail sumber ...
DESCRIPTION
. tidak bergantung program membaca setiap fail sumber dalam urutan dan menghuraikannya seperti C-
prapemproses, memproses semua #termasuk, #define, #undef, #ifdef, #ifndef, #endif, #jika,
#elif and #selamat arahan supaya ia boleh memberitahu yang mana dengan betul #termasuk, arahan akan
digunakan dalam kompilasi. mana-mana #termasuk, arahan boleh merujuk fail yang mempunyai fail lain
#include arahan, dan penghuraian akan berlaku dalam fail ini juga.
Setiap fail yang a fail sumber termasuk, secara langsung atau tidak langsung, adalah apa tidak bergantung panggilan a
kebergantungan. Kebergantungan ini kemudiannya ditulis kepada a makefile sedemikian rupa sehingga membuat(1)
akan mengetahui fail objek mana yang mesti dikompilasi semula apabila kebergantungan telah berubah.
Secara lalai, tidak bergantung meletakkan outputnya dalam fail bernama makefile jika ia wujud,
jika tidak, Makefile. Makefile alternatif boleh ditentukan dengan -f pilihan. Ia dahulu
mencari fail make untuk baris itu
# JANGAN PADAMKAN LINE INI -- make depend bergantung padanya.
atau yang disediakan dengan -s pilihan, sebagai pembatas untuk keluaran kebergantungan. Jika ia mendapati
itu, ia akan memadamkan segala-galanya berikutan ini ke penghujung makefile dan meletakkan output
selepas baris ini. Jika ia tidak menjumpainya, program akan menambahkan rentetan ke penghujung
makefile dan letakkan output selepas itu. Untuk setiap fail sumber muncul pada
baris arahan, tidak bergantung meletakkan baris dalam makefile borang
sourcefile.o: dfile ...
Lokasi sourcefile.o ialah nama daripada baris arahan dengan akhirannya digantikan dengan ``.o'',
and dfile ialah kebergantungan yang ditemui dalam a #include arahan semasa menghuraikan fail sumber or
salah satu fail yang disertakan.
CONTOH
Biasanya, tidak bergantung akan digunakan dalam sasaran makefile supaya menaip ``make depend'' akan
membawa kebergantungan dikemas kini untuk makefile. Sebagai contoh,
SRCS = fail1.c fail2.c ...
CFLAGS = -O -DHACK -I../foobar -xyz
bergantung:
makedepend -- $(CFLAGS) -- $(SRCS)
PILIHAN
Program ini akan mengabaikan sebarang pilihan yang tidak difahaminya supaya anda boleh menggunakan
hujah yang sama yang anda mahu cc(1).
-Dnama=def or -Dnama
takrifkan. Ini meletakkan definisi untuk nama in makedepend's jadual simbol. tanpa
=def simbol menjadi ditakrifkan sebagai ``1''.
-Itermasukir
Sertakan direktori. Pilihan ini memberitahu tidak bergantung untuk prepend termasukir kepada senarainya
direktori untuk mencari apabila ia menemui a #include arahan. Secara lalai,
tidak bergantung hanya mencari standard termasuk direktori (biasanya / usr / sertakan and
mungkin direktori yang bergantung kepada pengkompil).
-Ytermasukir
Gantikan semua direktori termasuk standard dengan satu set yang ditentukan
direktori; anda boleh meninggalkan termasukir untuk hanya menghalang carian standard
sertakan direktori.
-a Tambahkan kebergantungan pada penghujung fail dan bukannya menggantikannya.
-fmakefile
Nama fail. Ini membolehkan anda untuk menentukan makefile alternatif di mana tidak bergantung boleh
letak keluarannya. Menentukan ``-'' sebagai nama fail (iaitu, -f-) menghantar output ke
output standard dan bukannya mengubah suai fail sedia ada.
-termasuk fail
Proses fail sebagai input, dan masukkan semua output yang terhasil sebelum memproses fail
fail input biasa. Ini mempunyai kesan yang sama seolah-olah fail yang ditentukan adalah termasuk
pernyataan yang muncul sebelum baris pertama fail input biasa.
-oobjsuffix
Akhiran fail objek. Sesetengah sistem mungkin mempunyai fail objek yang akhirannya adalah sesuatu
selain ``.o''. Pilihan ini membolehkan anda menentukan akhiran lain, seperti ``.b''
bersama -ob atau ``:obj'' dengan -o:obj dan sebagainya.
-pobjprefix
Awalan fail objek. Awalan ditambah kepada nama fail objek. Ini adalah
biasanya digunakan untuk menetapkan direktori yang berbeza untuk fail objek. Lalainya ialah
rentetan kosong.
-srentetan
Memulakan pembatas rentetan. Pilihan ini membenarkan anda untuk menentukan rentetan yang berbeza untuk
tidak bergantung untuk mencari dalam makefile.
-wlebar
Lebar garisan. Biasanya, tidak bergantung akan memastikan bahawa setiap baris keluaran yang ditulisnya
tidak akan lebih lebar daripada 78 aksara demi kebolehbacaan. Pilihan ini membolehkan
anda untuk menukar lebar ini.
-v Operasi verbose. Pilihan ini menyebabkan tidak bergantung untuk mengeluarkan senarai fail yang disertakan
oleh setiap fail input.
-m Beri amaran tentang kemasukan berbilang. Pilihan ini menyebabkan tidak bergantung untuk mengeluarkan amaran jika
mana-mana fail input termasuk fail lain lebih daripada sekali. Dalam versi sebelumnya
tidak bergantung ini ialah tingkah laku lalai; lalai telah ditukar kepada lebih baik
sepadan dengan tingkah laku pengkompil C, yang tidak menganggap kemasukan berbilang kepada
menjadi kesilapan. Pilihan ini disediakan untuk keserasian ke belakang, dan untuk membantu
masalah penyahpepijatan yang berkaitan dengan kemasukan berbilang.
-- pilihan --
If tidak bergantung menemui tanda sempang berganda (--) dalam senarai argumen, kemudian sebarang
hujah yang tidak diiktiraf berikutan ia akan diabaikan secara senyap; tanda sempang berganda kedua
menamatkan layanan istimewa ini. Dengan cara ini, tidak bergantung boleh dibuat dengan selamat
abaikan hujah pengkompil esoterik yang biasanya ditemui dalam CFLAGS membuat
makro (lihat CONTOH bahagian di atas). Semua pilihan itu tidak bergantung mengenali dan
muncul di antara pasangan sempang berganda diproses secara normal.
ALGORITMA
Pendekatan yang digunakan dalam program ini membolehkannya menjalankan susunan magnitud lebih cepat daripada mana-mana
``penjana pergantungan' yang lain pernah saya lihat. Pusat kepada persembahan ini adalah dua
andaian: bahawa semua fail yang disusun oleh satu makefile akan disusun secara kasar
yang sama -I and -D pilihan; dan kebanyakan fail dalam satu direktori akan termasuk sebahagian besarnya
fail yang sama.
Memandangkan andaian ini, tidak bergantung menjangkakan untuk dipanggil sekali untuk setiap makefile, dengan semua
fail sumber yang diselenggara oleh makefile yang muncul pada baris arahan. Ia menghuraikan
setiap sumber dan sertakan fail tepat sekali, mengekalkan jadual simbol dalaman untuk setiap satu.
Oleh itu, fail pertama pada baris arahan akan mengambil masa yang berkadar dengan
jumlah masa yang diambil oleh prapemproses C biasa. Tetapi pada fail berikutnya, jika ia
menemui fail include yang telah dihuraikan, ia tidak menghuraikannya lagi.
Sebagai contoh, bayangkan anda sedang menyusun dua fail, fail1.c and file2.c, mereka masing-masing termasuk
fail pengepala header.h, dan failnya pengepala.h seterusnya termasuk fail def1.h and
def2.h. Apabila anda menjalankan arahan
fail makedepend1.c fail2.c
tidak bergantung akan menghuraikan fail1.c dan akibatnya, pengepala.h dan kemudian def1.h and def2.h. It
kemudian memutuskan bahawa kebergantungan untuk fail ini adalah
fail1.o: header.h def1.h def2.h
Tetapi apabila program itu dihuraikan fail2.c dan mendapati bahawa ia juga termasuk header.h, ia tidak
tidak menghuraikan fail, tetapi hanya menambah header.h, def1.h and def2.h kepada senarai
tanggungan untuk fail2.o.
Gunakan makedepend dalam talian menggunakan perkhidmatan onworks.net