InggrisPerancisSpanyol

Ad


favorit OnWorks

include_server - Online di Cloud

Jalankan include_server di penyedia hosting gratis OnWorks melalui Ubuntu Online, Fedora Online, emulator online Windows, atau emulator online MAC OS

Ini adalah perintah include_server 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


include_server.py - perkiraan konservatif dari dependensi include untuk C/C++

RINGKASAN


sertakan_server --Pelabuhan TERMASUK_SERVER_PORT [PILIHAN]

DESKRIPSI


include_server.py memulai proses include server. Proses ini menjawab pertanyaan dari
distcc(1) klien tentang file apa yang akan disertakan dalam kompilasi C/C++. include_server.py
perintah itu sendiri berakhir segera setelah server sertakan telah muncul.

Argumen INCLUDE_SERVER_PORT adalah nama soket yang digunakan untuk semua komunikasi
antara klien distcc dan server sertakan. NS distcc-pompa(1) perintah bertanggung jawab
untuk membuat lokasi soket, untuk meneruskannya ke skrip ini, dan untuk meneruskannya ke semua
distcc klien melalui variabel lingkungan bernama INCLUDE_SERVER_PORT.

Protokol yang digunakan oleh server include menggunakan implementasi RPC distcc. Setiap distrik
permintaan terdiri dari (1) direktori saat ini dan (2) daftar argumen dari
perintah kompilasi.

Jika server yang disertakan dapat memproses permintaan, maka ia menjawab klien distcc dengan:
mengirim daftar jalur file. Jalur file adalah sumber dan header terkompresi
file yang diperlukan untuk kompilasi melalui analisis include. Daftarnya juga
terdiri dari tautan simbolik dan bahkan file dummy yang diperlukan untuk server kompilasi untuk
membangun replika akurat dari bagian-bagian sistem file yang diperlukan untuk kompilasi. Di dalam
dengan cara ini, file header yang diperlukan seperti /path/foo.h dikompresi, diganti namanya, dan disimpan dalam a
lokasi sementara, seperti /dev/shm/tmpiAvfGv.include_server-9368-1/path/foo.h.lzo. NS
klien distcc akan meneruskan file-file ini ke server kompilasi, di mana mereka akan berada
terkompresi dan dipasang sementara.

Jika server yang disertakan tidak dapat memproses permintaan, maka akan mengembalikan daftar kosong
ke klien distcc.

Ada dua jenis kegagalan yang berhubungan dengan server include. Server yang disertakan mungkin
gagal menghitung penyertaan atau gagal dengan cara lain, lihat bagian TERMASUK SERVER GEJALA.
Juga, kompilasi di server hapus mungkin gagal karena ketidakcukupan perhitungan
termasuk penutupan, tetapi kemudian berhasil ketika dicoba ulang secara lokal, lihat bagian DISTCC PERBEDAAN
GEJALA.

PILIHAN RINGKASAN


Opsi berikut dipahami oleh include_server.py.

-dPAT, --debug_pattern=PAT
Vektor bit untuk mengaktifkan peringatan dan debugging
1 = peringatan
2 = melacak beberapa fungsi
kekuatan lain dari dua: lihat include_server/basics.py.

-e, --surel
Kirim email ke 'distcc-pump-errors' atau jika ditentukan, nilai variabel lingkungan
DISTCC_EMAILLOG_WHM_TO_BLAME, ketika server penyertaan mengalami masalah. Standarnya adalah
untuk tidak mengirim email.

--email_bound NOMOR
Jumlah maksimum email yang akan dikirim (selain email terakhir). Standar: 3.

--tanpa email
Jangan kirim email. Ini adalah default.

--path_observation_re=RE
Keluarkan pesan peringatan setiap kali nama file diselesaikan ke jalur nyata yang cocok
oleh RE, yang merupakan ekspresi reguler dalam sintaks Python. Ini berguna untuk menemukan
dari mana file yang disertakan sebenarnya berasal. Gunakan RE="" untuk menemukan semuanya. Catatan:
peringatan harus diaktifkan dengan setidaknya -d1.

--pid_file jalur FILE
Pid dari server include ditulis ke file FILEPATH. Ini memungkinkan skrip
misalnya distcc-pompa untuk meruntuhkan server include.

-S, --statistik
Cetak informasi ke stdout tentang termasuk analisis.

--stat_reset_triggers=DAFTAR
Bersihkan cache stat saat stempel waktu jalur file apa pun di LIST berubah atau
filepath masuk atau keluar dari keberadaan. LIST adalah string yang dipisahkan titik dua dari
filepaths, mungkin berisi gumpalan sederhana (seperti yang diizinkan oleh modul gumpalan Python).
Cetak peringatan setiap kali perubahan seperti itu terjadi (jika peringatan diaktifkan). Ini
opsi memungkinkan pengecualian terbatas untuk asumsi normal distcc-pump bahwa sumber
file tidak dimodifikasi selama pembuatan.

-T, --waktu
Cetak waktu berlalu, pengguna, dan sistem ke stderr.

--tidak aman_absolute_includes
Lakukan pra-pemrosesan di server kompilasi bahkan jika termasuk jalur file absolut
ditemui. Biasanya include-server akan kembali pada preprocessing lokal
jika mendeteksi adanya mutlak termasuk. Dengan demikian, bendera ini berguna untuk mencegah hal tersebut
fallback ketika yang absolut termasuk adalah alarm palsu, baik karena absolut
include dibuang selama prapemrosesan atau karena file yang benar-benar disertakan
ada di server kompilasi.

Lebih tepatnya, dengan --unsafe_absolute_includes penyertaan mutlak diabaikan untuk
tujuan pengumpulan termasuk penutupan. Menggunakan opsi ini dapat menyebabkan
hasil yang salah karena (1) header mungkin benar-benar disertakan pada
kompilasi server dan mungkin tidak sama seperti pada klien, (2) termasuk
arahan dari header tidak dianalisis lebih lanjut.

Opsi ini berguna untuk mengkompilasi kode yang memiliki lokasi absolut yang di-hardcode
dari file header di dalam arahan bersyarat (misalnya "#ifdef") yang membuat
termasuk tidak relevan. Lebih tepatnya, ini termasuk harus dihilangkan selama
preprocessing untuk konfigurasi yang sebenarnya. Kemudian pertanyaan tentang keberadaan
file header dapat diperdebatkan dan kompilasi jarak jauh terdengar. Ini sering terjadi jika
termasuk tersebut dimaksudkan untuk konfigurasi yang tidak biasa berbeda dari yang sebenarnya
konfigurasi.

-di, --memeriksa
Verifikasi bahwa file dalam penutupan CPP terkandung dalam penutupan yang dihitung dengan menyertakan
prosesor.

-w, --write_include_closure
Tulis file .d_approx yang mencantumkan semua file yang disertakan dihitung dengan menyertakan
server; dengan -x, tulis juga file yang disertakan seperti yang dihitung oleh CPP ke a
file .d_exact.

-X, --analisis_tepat
Gunakan CPP sebagai gantinya, jangan hilangkan file header sistem.

TERMASUK SERVER GEJALA DAN MASALAH


Pesan dan peringatan yang paling mungkin datang dari prosesor yang disertakan tercantum di bawah ini.

Pemrosesan awal secara lokal. Memasukkan Server tidak penutup: tidak bisa menentukan kegagalan sistem
memasukkan direktori
Untuk menentukan direktori header sistem default, server sertakan menjalankan:
compiler sekali untuk setiap bahasa yang dibutuhkan selama sesi. Pesan ini menunjukkan
bahwa kompiler yang ditentukan untuk distcc tidak ada di klien.

Pemrosesan awal secara lokal. Memasukkan Server tidak penutup: Menjamin di luar karena memasukkan Server
menghabiskan lebih dari ...S pemakai waktu penanganan permintaan
Dalam situasi yang tidak biasa, server penyertaan gagal menganalisis makro yang sangat rumit
ekspresi. Klien distcc akan menggunakan mode distcc biasa.

Peringatan: Jalur file harus be relatif tapi tidak
Server yang disertakan tidak menerima jalur file absolut, seperti
/usr/include/stdio.h, dalam arahan include, karena tidak ada jaminan bahwa
header ini di mesin server kompilasi akan sama dengan yang ada di
klien. Server penyertaan berhenti menganalisis penutupan penyertaan. distrik
klien tidak dapat menggunakan mode pompa.

Untuk mengatasi masalah ini dengan cara yang tidak selalu dapat diandalkan, atur variabel lingkungan
INCLUDE_SERVER_ARGS='--unsafe_absolute_includes' saat menjalankan pompa distcc
skrip untuk meneruskan opsi --unsafe_absolute_includes ke server sertakan.

Peringatan: Mutlak jalur file ... adalah diabaikan
--unsafe_absolute_includes sedang digunakan. Situasi ini terjadi di bawah yang sama
keadaan seperti ketika "Filepath harus relatif tetapi tidak" dikeluarkan, tetapi dalam hal ini
kasus penyertaan akan memberikan jawaban kepada klien distcc.

Peringatan: xtra '/PATH/FILE' berubah/datang ke ada/tidak ada lagi ada
Peringatan ini dikeluarkan saat menggunakan pemicu reset stat. Karena /PATH/FILE
diubah, server penyertaan membersihkan cache-nya; versi baru file (atau
kekurangannya) membuat analisis penyertaan menjadi tidak valid. Pesan ini biasanya dapat berupa
diabaikan; itu menandakan penggunaan file yang agak genting oleh sistem build.
Disarankan untuk memperbaiki sistem build agar file tidak ditulis ulang.

Peringatan: Untuk terjemahan satuan ... lookup of fillet ... diselesaikan untuk ... yang jalan nyata is
...
Peringatan ini terjadi dengan --path_observation_re ketika realpath baru cocok dengan a
sumber atau file header diamati.

DISTCC PERBEDAAN GEJALA


Interaksi antara sistem build, distcc, dan server sertakan agak
kompleks. Ketika perintah distcc menerima kompilasi yang gagal dari server jarak jauh, itu
mencoba kompilasi secara lokal. Bagian ini membahas penyebab perbedaan
antara kompilasi jarak jauh dan lokal. Ini ditandai oleh pesan penurunan pangkat:

__________Peringatan: ... mode pompa kompilasi gagal on server, tapi berhasil secara lokal.
__________Distcc-pompa adalah diturunkan pangkatnya untuk polos mode. Lihat itu Distrik Perbedaan Gejala
bagian in itu sertakan_server(1) pria .

Skrip distcc-pump mengeluarkan pesan ini di akhir build. Ini berarti bahwa untuk
setidaknya satu doa distcc kompilasi lokal berhasil setelah kompilasi jarak jauh
gagal. Setiap pemanggilan distcc di mana perbedaan tersebut terjadi pada gilirannya juga mengeluarkan a
pesan seperti:

Peringatan: terpencil kompilasi of '...' gagal, dicoba lagi lokal dan mendapat a berbeda hasil.

Demosi membuat pemanggilan distcc berikutnya menggunakan mode distcc biasa. Dengan demikian
pra-pemrosesan akan berlangsung pada mesin lokal selama sisa pembangunan. Ini
teknik mencegah build yang sangat lambat di mana semua kompilasi berakhir di mesin lokal
setelah gagal dari jarak jauh.

Tentu saja, jika kompilasi lokal gagal setelah kegagalan jarak jauh, maka distcc
doa keluar dengan status bukan nol dari kompilasi lokal. Pesan kesalahan
dicetak juga merupakan kompilasi lokal.

Perilaku mundur untuk mode pompa distcc ke kompilasi lokal dapat dinonaktifkan dengan menyetel
variabel lingkungan DISTCC_FALLBACK ke 1, yang membuat perintah distcc segera gagal
karena kompilasi jarak jauh telah gagal. Pengaturan ini sangat berguna untuk men-debug mengapa
kompilasi jarak jauh salah, karena sekarang output dari server akan dicetak.

Selanjutnya kita membahas kemungkinan penyebab perbedaan.

Grafik pemakai berubah a sumber or Header fillet selama itu membangun.
Hal ini tentu saja memberikan hasil yang tidak konsisten.

A sumber or Header fillet berubah selama itu membangun.
Sistem build menulis ulang file. Untuk kernel Linux 2.6, ini terjadi untuk
'include/linux/compile.h' dan 'include/asm/asm-offsets.h'. Kondisi ini tetap
dengan memberi tahu server penyertaan bahwa ia harus mereset cache-nya saat status apa pun
dari perubahan file. Secara praktis, ini dilakukan dengan mengumpulkan file-file dalam sebuah titik dua.
daftar terpisah dan kemudian mengatur perintah INCLUDE_SERVER_ARGS seperti pada:

include_server_args="--stat_reset_triggers=include/linux/compile.h:include/asm/asm-
offset.h"

A Header fillet is berpotensi termasuk, tapi tidak tidak ada, dan is kemudian kemudian disertakan.

Ini terjadi ketika beberapa header foo.h menyertakan file header lain trick.h, tetapi
file trick.h belum dibuat dan penyertaan sebenarnya diabaikan
karena arahan preprocessing. Server yang disertakan akan menyelidiki
keberadaan trick.h, karena itu melebih-lebihkan semua kemungkinan cara direktif
benar-benar mengevaluasi. File trick.h ditentukan tidak ada. Jika nanti
dihasilkan, dan kemudian benar-benar disertakan, maka server yang disertakan akan salah percaya
bahwa file tersebut masih belum ada. Solusi untuk masalah ini adalah dengan membuat
membangun sistem menghasilkan trick.h sebelum pertama kali file header disertakan
yang membuat referensi sintaksis ke trick.h

Grafik memasukkan Server adalah mulai dengan --tidak aman_absolute_includes.
Ini adalah masalah jika ada file header lokal yang tidak ada dari jarak jauh dan
yang sebenarnya digunakan. Termasuk tersebut sering dilindungi oleh kondisional
arahan yang mengevaluasi sehingga benar-benar digunakan hanya pada spesifik dan sering
platform yang tidak biasa. Jika Anda tidak mengkompilasi untuk platform seperti itu, mungkin saja
benar untuk digunakan --tidak aman_absolute_include.

Grafik memasukkan Server memiliki dihitung itu salah termasuk.
Kami tidak tahu situasi seperti itu.

EXIT KODE


Kode keluar dari include_server.py biasanya 0. Bahwa server penyertaan telah dimulai
benar dikomunikasikan melalui keberadaan pid_file.

LINGKUNGAN VARIABEL


DISTCC_EMAILLOG_WHOM_TO_BLAME Alamat email yang digunakan untuk menyertakan server otomatis
email. Standarnya adalah 'distcc-pump-errors' (yang merupakan alamat email yang mungkin akan
tidak ada di domain Anda).

Selain itu, permintaan kompiler dapat menggunakan variabel lingkungan tambahan.

Gunakan include_server online menggunakan layanan onworks.net


Server & Workstation Gratis

Unduh aplikasi Windows & Linux

  • 1
    facetracknoir
    facetracknoir
    Program pelacakan kepala modular itu
    mendukung banyak pelacak wajah, filter
    dan protokol permainan. Di antara pelacak
    adalah SM FaceAPI, AIC Inertial Head
    Pelacak...
    Unduh facetracknoir.dll
  • 2
    Kode QR PHP
    Kode QR PHP
    Kode QR PHP adalah sumber terbuka (LGPL)
    perpustakaan untuk menghasilkan Kode QR,
    kode batang 2 dimensi. Berdasarkan
    libqrencode C library, menyediakan API untuk
    membuat batang Kode QR...
    Unduh Kode QR PHP
  • 3
    freeciv
    freeciv
    Freeciv adalah turn-based gratis
    game strategi multipemain, di mana masing-masing
    pemain menjadi pemimpin a
    peradaban, berjuang untuk mendapatkan
    tujuan akhir: menjadi...
    Unduh Freeciv.dll
  • 4
    Kotak Pasir Cuckoo
    Kotak Pasir Cuckoo
    Cuckoo Sandbox menggunakan komponen untuk
    memantau perilaku malware di a
    Lingkungan kotak pasir; diisolasi dari
    sisa sistem. Ini menawarkan otomatis
    analisis...
    Unduh Kotak Pasir Cuckoo
  • 5
    LMS-YouTube
    LMS-YouTube
    Putar video YouTube di LMS (porting dari
    Triode's to YouTbe API v3) Ini
    aplikasi yang juga dapat diambil
    dari
    https://sourceforge.net/projects/lms-y...
    Unduh LMS-YouTube
  • 6
    Yayasan Presentasi Windows
    Yayasan Presentasi Windows
    Yayasan Presentasi Windows (WPF)
    adalah kerangka kerja UI untuk membangun Windows
    aplikasi desktop. WPF mendukung
    set luas pengembangan aplikasi
    fitur...
    Unduh Windows Presentation Foundation
  • Lebih banyak lagi »

Perintah Linux

Ad