انگلیسیفرانسویاسپانیایی

Ad


فاویکون OnWorks

include_server - آنلاین در ابر

اجرای include_server در ارائه دهنده هاست رایگان OnWorks از طریق Ubuntu Online، Fedora Online، شبیه ساز آنلاین ویندوز یا شبیه ساز آنلاین MAC OS

این دستور include_server است که می تواند در ارائه دهنده هاست رایگان OnWorks با استفاده از یکی از چندین ایستگاه کاری آنلاین رایگان مانند Ubuntu Online، Fedora Online، شبیه ساز آنلاین ویندوز یا شبیه ساز آنلاین MAC OS اجرا شود.

برنامه:

نام


include_server.py - تقریب محافظه کارانه وابستگی های include برای C/C++

خلاصه


include_server --بندر INCLUDE_SERVER_PORT [گزینه ها]

شرح


include_server.py یک فرآیند شامل سرور را شروع می کند. این فرآیند به سؤالات از
distcc(1) مشتریان در مورد اینکه چه فایل هایی باید در کامپایل های C/C++ گنجانده شود. include_server.py
به محض اینکه سرور include ایجاد شد، خود فرمان خاتمه می یابد.

آرگومان INCLUDE_SERVER_PORT نام یک سوکت است که برای همه ارتباطات استفاده می شود
بین کلاینت های distcc و سرور شامل. در distcc-pump(1) فرمان مسئول است
برای ایجاد محل سوکت، برای ارسال آن به این اسکریپت، و برای ارسال آن به همه
مشتریان distcc از طریق متغیر محیطی به نام INCLUDE_SERVER_PORT.

پروتکل مورد استفاده توسط سرور include از پیاده سازی RPC distcc استفاده می کند. هر دیسک
درخواست شامل (1) دایرکتوری فعلی و (2) لیستی از آرگومان ها است
دستور کامپایل

اگر سرور شامل قادر به پردازش درخواست باشد، سپس به مشتری distcc توسط پاسخ می دهد
ارسال لیستی از مسیرهای فایل مسیرهای فایل مربوط به منبع فشرده و هدر هستند
فایل‌هایی که برای جمع‌آوری از طریق تجزیه و تحلیل ضروری هستند. لیست نیز
شامل پیوندهای نمادین و حتی فایل های ساختگی است که برای سرور کامپایل مورد نیاز است
یک کپی دقیق از قسمت های فایل سیستم مورد نیاز برای کامپایل بسازید. که در
به این ترتیب، یک فایل هدر مورد نیاز مانند /path/foo.h فشرده، تغییر نام داده و در یک فایل ذخیره می شود.
مکان موقت، مانند /dev/shm/tmpiAvfGv.include_server-9368-1/path/foo.h.lzo. در
کلاینت distcc این فایل ها را به یک سرور کامپایل ارسال می کند، جایی که در آنجا قرار خواهند گرفت
فشرده نشده و به طور موقت نصب شده است.

اگر سرور شامل قادر به پردازش درخواست نباشد، لیست خالی را برمی گرداند
به مشتری distcc.

دو نوع خرابی مربوط به سرور شامل است. سرور شامل ممکن است
نتواند شامل محاسبه شود یا به روش های دیگر شکست بخورد، بخش را ببینید عبارتند از سرور علائم.
همچنین، کامپایل در سرور حذف ممکن است به دلیل ناکافی بودن محاسبه شده با شکست مواجه شود
بسته شدن را شامل می شود، اما پس از تکرار محلی موفق می شود، بخش را ببینید DISTCC عدم تطابق
علائم.

گزینه خلاصه


گزینه های زیر توسط include_server.py قابل درک است.

-dPAT، --debug_pattern=PAT
بردار بیت برای روشن کردن هشدارها و اشکال زدایی
1 = هشدار
2 = ردیابی برخی از توابع
سایر قدرت های دو: به include_server/basics.py مراجعه کنید.

-ه ، --پست الکترونیک
ارسال ایمیل به 'distcc-pump-errors' یا در صورت تعریف، مقدار متغیر محیطی
DISTCC_EMAILLOG_WHOM_TO_BLAME، زمانی که سرور شامل مشکل می شود. پیش فرض است
برای عدم ارسال ایمیل

--email_bound عدد
حداکثر تعداد ایمیل برای ارسال (علاوه بر ایمیل نهایی). پیش فرض: 3.

--بدون ایمیل
ایمیل ارسال نکنید. این پیش فرض است.

--path_observation_re=RE
هر زمان که نام فایل به یک مسیر واقعی که مطابقت دارد، پیغام هشدار صادر کنید
توسط RE که یک عبارت منظم در نحو پایتون است. این برای پیدا کردن مفید است
مشخص کنید که فایل های گنجانده شده در واقع از کجا آمده اند. از RE="" برای پیدا کردن همه آنها استفاده کنید. توجه داشته باشید:
هشدارها باید با حداقل -d1 فعال شوند.

--pid_file مسیر فایل
pid سرور شامل روی فایل FILEPATH نوشته شده است. این اجازه می دهد تا یک اسکریپت
مثل distcc-pump برای خراب کردن سرور شامل.

-s ، --آمار
چاپ اطلاعات به stdout در مورد شامل تجزیه و تحلیل.

--stat_reset_triggers=LIST
هنگامی که مُهر زمانی هر مسیر فایل در LIST تغییر می‌کند، کش‌های آمار را فلاش کنید
filepath وارد یا خارج می شود. LIST یک رشته جدا شده از دو نقطه است
مسیرهای فایل، احتمالاً حاوی glob های ساده (همانطور که ماژول glob پایتون اجازه داده است).
هر زمان که چنین تغییری رخ داد (در صورت فعال بودن هشدارها) یک هشدار چاپ کنید. این
گزینه استثناهای محدودی را برای فرض عادی distcc-pump که منبع است، اجازه می دهد
فایل ها در طول ساخت اصلاح نمی شوند.

-t، --زمان
چاپ سپری شده، کاربر و زمان سیستم به stderr.

--unsafe_absolute_includes
پیش پردازش را در سرور کامپایل انجام دهید حتی اگر شامل مسیرهای فایل مطلق باشد
مواجه می شوند. معمولاً شامل-سرور به پیش پردازش محلی بازمی گردد
در صورتی که تشخیص دهد شامل مطلق است. بنابراین، این پرچم برای جلوگیری از چنین مواردی مفید است
زمانی که مطلق شامل می شود، هشدار نادرست است، یا به دلیل مطلق
شامل در حین پیش پردازش یا به دلیل اینکه فایل کاملاً موجود است کنار گذاشته می شود
در سرورهای کامپایل وجود دارد.

به طور دقیق تر، با --unsafe_absolute_includes شامل مطلق نادیده گرفته می شود
اهداف جمع آوری شامل بسته شدن است. استفاده از این گزینه ممکن است منجر به
نتایج نادرست است زیرا (1) هدر ممکن است در واقع درج شود
سرور کامپایل و ممکن است مانند سرویس گیرنده نباشد، (2) شامل
دستورالعمل های هدر بیشتر تحلیل نمی شوند.

این گزینه برای کامپایل کدهایی که دارای چنین مکان های مطلق کدگذاری شده ای هستند مفید است
فایل‌های هدر داخل دستورالعمل‌های شرطی (مانند "#ifdef") که رندر می‌کنند
شامل نامربوط به طور دقیق تر، این شامل باید در طول حذف شود
پیش پردازش برای پیکربندی واقعی سپس پرسش از وجود
فایل هدر موت است و کامپایل از راه دور صدا است. این اغلب مورد است اگر
چنین شامل برای پیکربندی های غیر معمول متفاوت از واقعی است
پیکربندی

-v، -- تأیید کنید
بررسی کنید که فایل‌های بسته شدن CPP در بسته شدن محاسبه شده توسط شامل وجود دارد
پردازنده

-w، --write_include_closure
یک فایل .d_approx بنویسید که تمام فایل‌های شامل محاسبه شده توسط include را فهرست می‌کند
سرور؛ با -x، علاوه بر این، فایل‌های همراه را همانطور که توسط CPP محاسبه شده است در a بنویسید
فایل .d_exact.

-ایکس، -تحلیل_دقیق
به جای آن از CPP استفاده کنید، فایل های هدر سیستم را حذف نکنید.

عبارتند از سرور علائم و مسائل


محتمل‌ترین پیام‌ها و اخطارهایی که از پردازنده شامل می‌آیند در زیر فهرست شده‌اند.

پیش پردازش محلی شامل سرور نه پوشش: نمی توانست مشخص کردن به طور پیش فرض سیستم
شامل دایرکتوری
برای تعیین دایرکتوری های هدر سیستم پیش فرض، سرور include اجرا می کند
کامپایلر یک بار برای هر زبان مورد نیاز در طول جلسه آن. این پیام نشان می دهد
که کامپایلر مشخص شده برای distcc در کلاینت وجود ندارد.

پیش پردازش محلی شامل سرور نه پوشش: وثیقه خارج زیرا شامل سرور
صرف بیش نسبت به ... ها کاربر زمان اداره درخواست
در موقعیت‌های غیر معمول، سرور شامل نمی‌تواند ماکرو بسیار پیچیده را تجزیه و تحلیل کند
اصطلاحات. مشتری distcc از حالت distcc ساده استفاده می کند.

هشدار: مسیر فایل باید be نسبی اما نه
سرور شامل مسیرهای فایل مطلق را نمی پذیرد، مانند
/usr/include/stdio.h، در دستورالعمل های شامل، زیرا هیچ تضمینی وجود ندارد
این هدر در دستگاه سرور کامپایل مانند آن خواهد بود
مشتری. سرور شامل از تجزیه و تحلیل بسته شدن شامل صرف نظر می کند. distcc
مشتری نمی تواند از حالت پمپ استفاده کند.

برای غلبه بر این مشکل به روشی که همیشه قابل اعتماد نیست، متغیر محیط را تنظیم کنید
INCLUDE_SERVER_ARGS='--unsafe_absolute_includes' هنگام فراخوانی distcc-pump
اسکریپت برای ارسال گزینه --unsafe_absolute_includes به سرور include.

هشدار: مطلق مسیر فایل ... بود نادیده گرفته شد
--unsafe_absolute_includes در حال استفاده است. این وضعیت تحت همان اتفاق می افتد
شرایطی مانند زمانی که "Filepath باید نسبی باشد اما نیست" صادر شده است، اما در این
در صورتی که شامل پاسخی به کلاینت distcc می دهد.

هشدار: راه '/PATH/FILE' تغییر/آمد به وجود/خیر دیگر وجود دارد
این هشدارها هنگام استفاده از محرک های بازنشانی آمار صادر می شود. زیرا /PATH/FILE
تغییر کرد، سرور شامل حافظه پنهان خود را پاک می کند. نسخه جدید فایل (یا
فقدان آن) تحلیل شامل را نامعتبر می کند. این پیام معمولا می تواند باشد
نادیده گرفته شد؛ این نشان دهنده استفاده ناپایدار از فایل ها توسط سیستم ساخت است.
توصیه می شود سیستم ساخت را به گونه ای تعمیر کنید که فایل ها بازنویسی نشوند.

هشدار: برای ترجمه واحد ... مراجعه of پرونده ... مصمم به ... که مسیر واقعی is
...
این اخطار با --path_observation_re زمانی رخ می دهد که مسیر realpath جدید با a مطابقت داشته باشد
منبع یا فایل هدر مشاهده می شود.

DISTCC عدم تطابق علائم


تعاملات بین سیستم ساخت، distcc و سرور شامل تا حدودی است
مجتمع هنگامی که یک دستور distcc یک کامپایل ناموفق از سرور راه دور دریافت می کند
کامپایل را به صورت محلی دوباره امتحان می کند. این بخش به بررسی علل اختلاف می پردازد
بین کامپایل از راه دور و محلی اینها با پیام تنزل پرچم گذاری می شوند:

__________هشدار: ... حالت پمپ مجموعه(های) ناموفق on سرور، سرور اما موفق شدم محلی
__________Distcc-pump بود کمرنگ به ساده حالت. دیدن la Distcc اختلاف نشانه ها
بخش in la include_server(1) مرد احتمال برد مراجعه کنید.

اسکریپت distcc-pump این پیام را در پایان ساخت صادر می کند. این بدان معنی است که برای در
حداقل یک فراخوانی distcc یک کامپایل محلی پس از کامپایل از راه دور موفق شد
ناموفق. هر فراخوانی distcc که چنین تناقضی برای آنها رخ داده است نیز به نوبه خود یک مورد را صادر می کند
پیامی مانند:

هشدار: دور تالیف of '...' ناموفق، دوباره امتحان کرد به صورت محلی و کردم a مختلف نتيجه

تنزل باعث می شود که فراخوان های بعدی distcc از حالت distcc ساده استفاده کنند. بدین ترتیب
پیش پردازش در ماشین محلی برای باقی مانده ساخت انجام خواهد شد. این
این تکنیک از ساخت‌های بسیار کند جلوگیری می‌کند که در آن همه کامپایل‌ها به ماشین محلی ختم می‌شوند
پس از شکست از راه دور

البته، اگر کامپایل‌های محلی پس از خرابی‌های راه دور از کار بیفتند، distcc
فراخوان با وضعیت غیر صفر کامپایل محلی خارج می شود. پیام های خطا
چاپ شده نیز از مجموعه محلی است.

رفتار بازگشتی برای حالت distcc-pump به کامپایل محلی را می توان با تنظیم غیرفعال کرد
متغیر محیطی DISTCC_FALLBACK به 1، که باعث می شود دستور distcc به زودی با شکست مواجه شود.
زیرا کامپایل از راه دور ناموفق بوده است. این تنظیم برای رفع اشکال بسیار مفید است
کامپایل از راه دور اشتباه انجام شد، زیرا اکنون خروجی از سرور چاپ خواهد شد.

در ادامه به علل احتمالی ناسازگاری ها می پردازیم.

La کاربر تغییر a منبع or هدر پرونده در طی la ساختن.
این البته نتایج متناقضی را به همراه دارد.

A منبع or هدر پرونده تغییر در طی la ساختن.
سیستم ساخت یک فایل را بازنویسی می کند. برای هسته لینوکس 2.6، این اتفاق می افتد
'include/linux/compile.h' و 'include/asm/asm-offsets.h'. این شرط ثابت است
با اجازه دادن به سرور شامل می‌داند که باید حافظه پنهان خود را در صورت وجود یک آمار بازنشانی کند
از فایل ها تغییر می کند در عمل، این کار با جمع آوری فایل ها در یک کولون انجام می شود.
لیست جدا شده و سپس دستور INCLUDE_SERVER_ARGS را به صورت زیر تنظیم کنید:

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

A هدر پرونده is بالقوه مشمول، اما میکند نه وجود داشته باشد، و is سپس بعد گنجانده شده است.

این زمانی اتفاق می‌افتد که برخی از هدرهای foo.h شامل فایل هدر دیگری trick.h باشد، اما
فایل trick.h هنوز ایجاد نشده است و شامل در واقع نادیده گرفته شده است
به دلیل دستورالعمل های پیش پردازش سرور شامل بررسی خواهد شد
وجود trick.h، زیرا تمام دستورالعمل های راه های ممکن را بیش از حد تقریب می کند
در واقع ارزیابی کنید مشخص شده است که فایل trick.h وجود ندارد. اگر دیرتر باشد
تولید شده، و سپس واقعاً گنجانده شده است، سپس سرور شامل به اشتباه باور خواهد کرد
که فایل هنوز وجود ندارد. راه حل این مشکل ساختن است
سیستم ساخت trick.h را قبل از اولین باری که هر فایل هدر گنجانده می شود تولید می کند
که ارجاع نحوی به trick.h می کند

La شامل سرور بود آغاز شده با --unsafe_absolute_includes.
اگر فایل‌های هدر به صورت محلی وجود داشته باشد که از راه دور وجود نداشته باشد، این مشکل است
که در واقع استفاده می شوند. چنین شامل اغلب توسط مشروط محافظت می شود
دستورالعمل هایی که ارزیابی می کنند به طوری که در واقع فقط در موارد خاص و اغلب استفاده می شوند
پلتفرم های غیر معمول اگر برای چنین پلتفرمی کامپایل نمی کنید، ممکن است اینطور باشد
استفاده صحیح --unsafe_absolute_include.

La شامل سرور است محاسبه la اشتباه شامل می شود.
ما چنین وضعیتی را نمی شناسیم.

خروج کد ها


کد خروج از include_server.py معمولا 0 است. این که سرور include راه اندازی شده است
از طریق وجود pid_file به درستی ارتباط برقرار می شود.

محیط زیست متغیرها


DISTCC_EMAILLOG_WHOM_TO_BLAME آدرس ایمیل مورد استفاده شامل سرور خودکار است
ایمیل ها پیش‌فرض «distcc-pump-errors» است (که یک آدرس ایمیل است که احتمالاً چنین خواهد شد
در دامنه شما وجود ندارد).

علاوه بر این، فراخوانی کامپایلر ممکن است از متغیرهای محیطی اضافی استفاده کند.

با استفاده از خدمات onworks.net از include_server آنلاین استفاده کنید


سرورها و ایستگاه های کاری رایگان

دانلود برنامه های ویندوز و لینوکس

  • 1
    فازر
    فازر
    Phaser یک باز سریع، رایگان و سرگرم کننده است
    منبع چارچوب بازی HTML5 که ارائه می دهد
    WebGL و Canvas Rendering در سراسر
    مرورگرهای وب دسکتاپ و موبایل بازی ها
    می تواند با ...
    دانلود فازر
  • 2
    موتور VASSAL
    موتور VASSAL
    VASSAL یک موتور بازی برای ایجاد است
    نسخه های الکترونیکی تخته سنتی
    و بازی های کارتی پشتیبانی می کند
    رندر و تعامل قطعه بازی،
    و ...
    دانلود VASSAL Engine
  • 3
    OpenPDF - Fork of iText
    OpenPDF - Fork of iText
    OpenPDF یک کتابخانه جاوا برای ایجاد است
    و ویرایش فایل های PDF با LGPL و
    مجوز منبع باز MPL. OpenPDF است
    LGPL/MPL جانشین منبع باز iText،
    و ...
    OpenPDF - Fork of iText را دانلود کنید
  • 4
    GIS SAGA
    GIS SAGA
    SAGA - سیستم برای خودکار
    تجزیه و تحلیل جغرافیایی - یک جغرافیا است
    نرم افزار سیستم اطلاعات (GIS) با
    قابلیت های بسیار زیاد برای داده های جغرافیایی
    پردازش و آنا...
    دانلود SAGA GIS
  • 5
    جعبه ابزار برای جاوا/JTOpen
    جعبه ابزار برای جاوا/JTOpen
    جعبه ابزار IBM برای جاوا / JTOpen یک است
    کتابخانه کلاس های جاوا که از
    کلاینت/سرور و برنامه نویسی اینترنتی
    مدل های سیستمی که دارای OS/400 است،
    i5/OS، o...
    جعبه ابزار را برای جاوا/JTOpen دانلود کنید
  • 6
    D3.js
    D3.js
    D3.js (یا D3 برای اسناد داده محور)
    یک کتابخانه جاوا اسکریپت است که به شما اجازه می دهد
    برای تولید داده های پویا و تعاملی
    تجسم در مرورگرهای وب با D3
    شما...
    D3.js را دانلود کنید
  • بیشتر "

دستورات لینوکس

Ad