Bu, Ubuntu Online, Fedora Online, Windows çevrimiçi emülatörü veya MAC OS çevrimiçi emülatörü gibi birden fazla ücretsiz çevrimiçi iş istasyonumuzdan birini kullanarak OnWorks ücretsiz barındırma sağlayıcısında çalıştırılabilen makeppreplay komutudur.
Program:
ADI
makeppreplay -- Seçilen makepp eylemlerinin hızlı tekrarlayıcısı
TANIM
?: -?, A: -A,
--args dosyası,
--argümanlar-dosyası, C: -C,
-C, D: --dizin,
--kuru çalışma, H: -H,
--Yardım, I: -BEN,
--Dahil etmek,
--include-dir, J: --sadece-baskı, K: -k,
--devam etmek, L: --kayıt,
--log dosyası, M: -M,
$MAKEPPREPLAYFLAGS,
--modül, N: -N,
--kayıt yok,
--no-print-dizini,
--hayır-uyarmak, P: --profil, R: --keşif,
--root dizini,
--kök dizini, S: -Evet,
--sed, T: -T,
--geçici, V: -V,
--versiyon
makepreplay [ seçenek ... ] [ VAR=değer ] [ hedef ... ]
mppr [ seçenek ... ] [ VAR=değer ] [ hedef ... ]
Makeppreplay, makepp'in yaptığı şeylerin aynısını yapmaya çalışır. Bunu yalnızca şuna dayanarak yapar:
Yapı bilgilerini hatırladım, makefile'ları okumayarak, komutları ayrıştırmayarak çok zaman kazandım,
dosyaları taramamak ve uygun olup olmadığını görmek için her depo dosyasına bakmamak. Ancak
makepp'ten farklı olarak bulduğu tüm depo bağlantılarını yeniden kullanır.
Sahte veya varsayılan hedefleri bilmez, bu yüzden ona gerçek dosyalar veya
Dizinler, makepp'in burada yerleşik olduğu tüm dosyalar için bir kısayol olarak kullanılır. Varsayılan olarak oluşturur
makepp'in tüm dosyaları geçerli veya seçilen dizinde yerleşiktir.
Bu yaklaşım yalnızca yapısal bir değişiklik olmadığında, yani farklı bir değişiklik olmadığında doğrudur.
bağlanacak modüller yok, taşınan dosya yok, farklı "#include" ifadesi yok;
muhtemelen bu dosyaların (yeniden) oluşturulmasına neden olmuştur. Sürüm kontrolünden güncelleme yaptıktan sonra veya
Başkalarının bu tür değişikliklere neden olabileceği bir depoya karşı oluştururken,
potansiyel değişikliklerden sonra makepp'i bir kez çağırın (örneğin, bir gece geçirdikten sonra sabah)
derleme bilgilerinizin güncel olduğundan emin olmak için depo güncellemesi).
Makefile dosyalarını okumamak, bunların içinde tanımlanan herhangi bir alt öğeyi (Perl işlevini) bilmeyeceği anlamına gelir.
Bunun için tüm fonksiyonlarınızı harici bir modüle koymalısınız. O da bilmeyecek
herhangi bir değişken ayarı hakkında; bu yalnızca Perl kodunuz bunlara eriştiğinde sorun olur
(çünkü kural eylemlerinde bunlar zaten genişletilmiştir).
YAPILACAKLAR
Bu hala deneysel ve kusurlu.
· Verilen hedeflerden başlayarak tam bir bağımlılık ağacı oluşturun ve hangisine karar verin
onların yapı kontrolü yöntemlerine göre inşa etmeleri. Bu, yöntemin olmasını gerektirir
Yapı bilgilerinde hatırladım.
· Önceki madde işaretini uyguladıktan sonra, "-j" veya gibi daha fazla makepp seçeneğini kabul edin.
"--inşa etme".
· Örtülü "--no-populate-bc" ile derleme önbelleğine izin ver (çünkü makeppreplay bunu yapmaz)
doğru bir yapıyı garanti eder). Makepp daha sonra derleme önbelleğine istediği her şeyi yayınlayabilir.
tutar.
· Makepp'in tüm başarısız komutlar ve hatırlamadıkları komutlar için derleme bilgilerini hatırlamasını sağlayın
deneme çünkü bağımlılıkları başarısız oldu. Bu yalnızca kısmen mümkündür, çünkü
bağımlılıklar ancak bunları gerektiren dosyalar oluşturulduktan sonra öğrenilebilir. Ne
şununla gerçekleşmelidir (a'nın yapı bilgisi yoktur):
bir: b
M.Ö
cmd_producing_a_and_b
SEÇENEKLER
Seçenekler arasında bazı makepp seçeneklerinin yanı sıra modülleri yüklemek için iki yeni seçenek bulunur.
normalde bir makefile'dan yüklenir.
-A Dosya
--args-dosyası=Dosya
--arguments-dosyası=Dosya
Dosyayı okuyun ve muhtemelen alıntılanmış boşluk ve/veya yeni satırla ayrılmış olarak ayrıştırın
seçenekleri.
-C rehber
--dizin=rehber
Makefile'ı yüklemeden ve hedefleri oluşturmaya çalışmadan önce verilen dizine Cd.
Bu, aşağı yukarı "-F" ile bir dizin belirtmeye eşdeğerdir, ancak şu farkla:
sonraki "-C", "-f", "-F", "-I" ve "-R" seçenekleri yeniye göre yorumlanır
eski dizin yerine dizin.
-c
--root-dir
--kök dizini
RootMakeppfile içeren dizine kadar Cd.
-I rehber
--içerir=rehber
--include-dir=rehber
Ekle rehber Perl yükleme yolu @INC.
-?
-h
--yardım et
Seçeneklerin kısa bir özetini yazdırın.
-k
--devam etmek
Bazılarında hatalar olsa bile mümkün olduğunca çok dosya oluşturun. Varsayılan olarak makepp
gereken başka dosyalar olsa bile ilk hatayla karşılaştığında durur
hatalı dosyaya bağlı olmayan bir şekilde oluşturulacaktır.
--log=günlük dosyası adı
--log-dosyası=günlük dosyası adı
Günlük dosyasının adını belirtilen adla değiştirir. Varsayılan olarak, günlük dosyası
denilen .makepp/günlük. Bu dosya makepplog, mppl ile okunabilir.
-M modül[=arg,...]
--modül=modül[=arg,...]
Modülü yükleyin ve dışa aktardığı tüm işlevleri içe aktarın.
-n
--kuru çalışma
--sadece-baskı
--keşif
Komutları gerçekte çalıştırmadan yazdırın.
--kayıt yok
Günlük dosyasına ne yapıldığına dair ayrıntılı bir açıklama yazma zahmetine girmeyin.
--no-print-dizini
Dizine girme veya çıkma mesajlarını kapatın.
--profil
Her eylemden önce ve sonra ham zaman damgaları çıktısı alın.
-s perl-ifadesi
--sed=perl-ifadesi
Önişlemcide olduğu gibi, çalıştırmadan önce Perl ifadesini komuta karşı çalıştırın.
"-s 's/ -c / -E /; s/\.o\b/.i/g'". Bu, bir derleme komutunu ("-c") dönüştürür
bir önişlemci ("-E") çağrısına dönüştürerek .o sonek .i, Hangi bir olduğunu
önceden işlenmiş C için geleneksel son ek. Veya bazı hata ayıklama çıktılarını eklemek isteyebilirsiniz.
bağlayıcınız. Kuralda yalnızca bir komutunuz varsa, bunu şu şekilde yapabilirsiniz:
onu ilk boşluğa koyarak: "-s 's/ / -Wl,-t /'".
Komut değiştirildiğinde bununla ilgili hiçbir şey hatırlanmaz, yani makepp düşünecektir
dosyayı manuel olarak değiştirerek yeniden oluşturmaya neden oldunuz.
(Makepp'ten farklı olarak) makepppreplay'in komutu ayrıştırmadığını, dolayısıyla fark etmeyeceğini unutmayın.
hedef dosya adının değiştirildiğini. Yani yine de talep etmelisiniz .o hedef bile
yine de bir .i inşa edilecek. Ve makeppclean onu kaldırmayı bilemeyecek.
-t
--geçici
Makeppreplay, dokunduğu tüm dosyaların ve tüm bağımlılıkların yapı bilgilerini değiştirir
değiştirilmiş olarak bulundu. Bunları öyle bir şekilde işaretler ki makepp yine de bunu bildiğini bilir.
bu dosyaları yeniden taraması gerekiyor. Ancak bu seçenekle bunları önleyebilirsiniz.
böylece makepp, makepppreplay olarak oluşturulan tüm dosyaları basitçe dikkate alacaktır.
yanlış.
-V
--versiyon
Sürüm numarasını yazdırın.
--hayır-uyarmak
Herhangi bir uyarı mesajı yazdırmayın.
ÖRNEKLER
Muhtemelen en yaygın kullanım, bir programı veya kitaplığı düzenledikten sonra yeniden bağlamaktır.
Kaynak dosyası:
makeppreplay alt dizini/foo.o bin/bar
mppr alt dizini/foo.o lib/libbar.so
ÇEVRE
Makeppreplay aşağıdaki ortam değişkenine bakar:
$MAKEPPREPLAYFLAGS
Her zaman geçmek isteyebileceğiniz seçenekler.
Onworks.net hizmetlerini kullanarak makeppreplay'i çevrimiçi kullanın