COMPΞZ 🧬
qt-build-guide.pdf
نسخهٔ آنلاین این راهنمای جامع با بهبودهای فراوان و با جزئیات بیشتر هم در اینجاست.
https://docs.genyleap.com/stack
https://docs.genyleap.com/stack/cpp
https://docs.genyleap.com/stack/qt
https://docs.genyleap.com/stack
https://docs.genyleap.com/stack/cpp
https://docs.genyleap.com/stack/qt
Genyleap Docs
Stack Development Guide — Genyleap Documentation
Living Genyleap engineering documentation for modern C++, Qt, CMake, LLVM, cross-platform builds and WebAssembly.
COMPΞZ 🧬
نسخهٔ آنلاین این راهنمای جامع با بهبودهای فراوان و با جزئیات بیشتر هم در اینجاست. https://docs.genyleap.com/stack https://docs.genyleap.com/stack/cpp https://docs.genyleap.com/stack/qt
روشهای نصب و کامپایلی که اینجا نوشتم رو در هیچ کتابی نمیتونید پیدا کنید حتی در کتابهای خودمم که کامل توضیح داده بودم با این دقت نیست!
در مستندات کیوت هم در این حد دقیق و شسته رفته توضیح ندادن. 😉😝
اینارو اضافه کردم برای خودم لازم بود چون من حوصله ندارم صد تا چیزو آزمایش و خطا کنم تمام تجربیات خطا موقع کامپایل کیوت یا آمادهسازی محیط توسعه سی++ رو هرچی بوده آوردم روی این مستندات که فقط با اجرای دستوراتی که هست راحت میشه آمادش کرد.
چیزی که در مراحل بعدی بهش اضافه میکنم یه پروژه به نام Heaven هست که به صورت GUI همه چیز رو نصب و آماده میکنه که خوراک گُشاد جماعته. 😒
در مستندات کیوت هم در این حد دقیق و شسته رفته توضیح ندادن. 😉😝
اینارو اضافه کردم برای خودم لازم بود چون من حوصله ندارم صد تا چیزو آزمایش و خطا کنم تمام تجربیات خطا موقع کامپایل کیوت یا آمادهسازی محیط توسعه سی++ رو هرچی بوده آوردم روی این مستندات که فقط با اجرای دستوراتی که هست راحت میشه آمادش کرد.
چیزی که در مراحل بعدی بهش اضافه میکنم یه پروژه به نام Heaven هست که به صورت GUI همه چیز رو نصب و آماده میکنه که خوراک گُشاد جماعته. 😒
COMPΞZ 🧬
روشهای نصب و کامپایلی که اینجا نوشتم رو در هیچ کتابی نمیتونید پیدا کنید حتی در کتابهای خودمم که کامل توضیح داده بودم با این دقت نیست! در مستندات کیوت هم در این حد دقیق و شسته رفته توضیح ندادن. 😉😝 اینارو اضافه کردم برای خودم لازم بود چون من حوصله ندارم…
چرا معتقدم که کامپایل کردن ابزارها روی سیستم یا سرور خودمان گزینهٔ بهتری است؟
۱) دستورالعملها و شرایط ساخت روی همهٔ سیستمها الزاماً یکسان نیست. معماری CPU، کتابخانهٔ
۲) بیشترین هماهنگی با سختافزار و محیط واقعی اجرا؛ وقتی نرمافزار روی همان سیستم کامپایل میشود، میتوان آن را دقیقاً متناسب با پردازنده، معماری، کتابخانهها و محیط اجرایی همان سیستم بهینه کرد.
۳) کنترل کامل روی گزینههای کامپایلر و قابلیتهای موردنیاز؛ مثلاً
۴) وابسته نبودن به باینریهای از پیش ساختهشده؛ این باینریها معمولاً با تنظیمات محافظهکارانه و با هدف «بیشترین سازگاری با سیستمهای مختلف» ساخته میشوند، نه لزوماً بیشترین کارایی روی سختافزار خودمان.
۵) کنترل دقیق نسخهها؛ خودمان تعیین میکنیم از چه نسخهای از LLVM، GCC، Qt، libcpp یا سایر وابستگیها استفاده شود و مجبور نیستیم منتظر بستههای آماده یا مخازن رسمی توزیع بمانیم.
۶) امکان حذف بخشهایی که به آنها نیازی نداریم و فعال کردن دقیق قابلیتهایی که لازم داریم؛ مخصوصاً در Qt این موضوع میتواند روی حجم نهایی، تعداد وابستگیها، زمان راهاندازی و حتی سطح حملهٔ امنیتی تأثیر بگذارد.
۷) تکرارپذیری فرایند ساخت و شناخت دقیقتر محیط؛ دقیقاً میدانیم هر باینری با چه کامپایلری، چه نسخه یا کامیت، چه گزینههایی و چه وابستگیهایی ساخته شده است.
۸) برای سرورهای عملیاتی هم یک مزیت مهم وجود دارد: اگر محیط ساخت درست طراحی شود، میتوانیم زنجیرهابزار اختصاصی خودمانرا داشته باشیم تا تمام پروژههای ++C بر اساس یک استاندارد مشخص و کنترلشده ساخته شوند.
البته یک نکته مهم وجود دارد: «کامپایل کردن روی خود سیستم» ذاتاً همیشه به این معنی نیست که نتیجه سریعتر یا بهتر خواهد بود.
#note #kit #source #cpp #compile #build
من ساخت از روی سورس را ترجیح میدم، نه فقط برای داشتن جدیدترین نسخه؛ بلکه برای اینکه زنجیرهابزار، وابستگیها و تنظیمات ساخت را دقیقاً با سختافزار، ABI، سیستمعامل و نیازهای واقعی پروژهٔ خودمون هماهنگ کنیم.
۱) دستورالعملها و شرایط ساخت روی همهٔ سیستمها الزاماً یکسان نیست. معماری CPU، کتابخانهٔ
libc، رابط دودویی ABI، پیونددهنده، وابستگیها و حتی تنظیمات سیستمعامل میتوانند متفاوت باشند.۲) بیشترین هماهنگی با سختافزار و محیط واقعی اجرا؛ وقتی نرمافزار روی همان سیستم کامپایل میشود، میتوان آن را دقیقاً متناسب با پردازنده، معماری، کتابخانهها و محیط اجرایی همان سیستم بهینه کرد.
۳) کنترل کامل روی گزینههای کامپایلر و قابلیتهای موردنیاز؛ مثلاً
-march=native، LTO، PGO، Sanitizerها، نسخهٔ استاندارد CPP و قابلیتهای جدید کامپایلر.۴) وابسته نبودن به باینریهای از پیش ساختهشده؛ این باینریها معمولاً با تنظیمات محافظهکارانه و با هدف «بیشترین سازگاری با سیستمهای مختلف» ساخته میشوند، نه لزوماً بیشترین کارایی روی سختافزار خودمان.
۵) کنترل دقیق نسخهها؛ خودمان تعیین میکنیم از چه نسخهای از LLVM، GCC، Qt، libcpp یا سایر وابستگیها استفاده شود و مجبور نیستیم منتظر بستههای آماده یا مخازن رسمی توزیع بمانیم.
۶) امکان حذف بخشهایی که به آنها نیازی نداریم و فعال کردن دقیق قابلیتهایی که لازم داریم؛ مخصوصاً در Qt این موضوع میتواند روی حجم نهایی، تعداد وابستگیها، زمان راهاندازی و حتی سطح حملهٔ امنیتی تأثیر بگذارد.
۷) تکرارپذیری فرایند ساخت و شناخت دقیقتر محیط؛ دقیقاً میدانیم هر باینری با چه کامپایلری، چه نسخه یا کامیت، چه گزینههایی و چه وابستگیهایی ساخته شده است.
۸) برای سرورهای عملیاتی هم یک مزیت مهم وجود دارد: اگر محیط ساخت درست طراحی شود، میتوانیم زنجیرهابزار اختصاصی خودمانرا داشته باشیم تا تمام پروژههای ++C بر اساس یک استاندارد مشخص و کنترلشده ساخته شوند.
البته یک نکته مهم وجود دارد: «کامپایل کردن روی خود سیستم» ذاتاً همیشه به این معنی نیست که نتیجه سریعتر یا بهتر خواهد بود.
#note #kit #source #cpp #compile #build
COMPΞZ 🧬
نسخهٔ آنلاین این راهنمای جامع با بهبودهای فراوان و با جزئیات بیشتر هم در اینجاست. https://docs.genyleap.com/stack https://docs.genyleap.com/stack/cpp https://docs.genyleap.com/stack/qt
این نکتههایی که اینجا گفتم رو صد سال بعد هم توی دانشگاههای شخمی ایران نمیبینید.
تنها چیزی که کم داره freeBSD بر پایهٔ Unix هست که اون رو باید روی ماشین مجازی آزمایش کنم؛ چیز خفنی خواهد شد این دستورالعملها.
کیوت است Cute...
تنها چیزی که کم داره freeBSD بر پایهٔ Unix هست که اون رو باید روی ماشین مجازی آزمایش کنم؛ چیز خفنی خواهد شد این دستورالعملها.
کیوت است Cute...
COMPΞZ 🧬
این نکتههایی که اینجا گفتم رو صد سال بعد هم توی دانشگاههای شخمی ایران نمیبینید. تنها چیزی که کم داره freeBSD بر پایهٔ Unix هست که اون رو باید روی ماشین مجازی آزمایش کنم؛ چیز خفنی خواهد شد این دستورالعملها. کیوت است Cute...
حین همین کار از استاد سلام زنگ زدن میگن ۲ سال پیش حساب داشتی تو مجموعه ما چرا دیگه تدریس نمیکنی! میگم برای کی تدریس کنم؟ کدوم بازار گل و بلبل ایران؟ فوقش برا یه مشت خرزشی که بیاد بره آفتابه بسازه برا خودم پزشو بده؟ درجا خفه شد 😐
COMPΞZ 🧬
هرچیزی که طی اینهمه مدت در مورد AI نکات طلائی گفته بودم همشون سبز شده... همون اوایل وقتی GPT اومد گفتم ببین اگه اجازه بدی AI سوارت بشه، بدبخت میشی... تو باید غالبش بشی و اگرنه بردش خواهی شد. بازخوردهای جامعه نشون میده که همینطوره... 😄
فراموش نکن بارها گفتم شما نباید بردهٔ AI بشی و اگرنه سوارت میشه بعدشم نمیتونی درستش کنی.
با این کشت و کشتاری که راهانداختین فکر میکنید ترسیدیم ازتون؟ خشم و نفرت نسبت به شماها هزاران برابر بیشتر از قبل میشه فقط...
شخصاً قبل از این جریانات اگه سلامتونم میگرفتم الآن توف هم تو روتون نمیاندازم... همین فرمون پیش برید گورِ خودتونو سریعتر و عمیقتر میکنید.
رذل و بیاعتبار شدن بد دردیه که توش گیر کردین هرچقدر هم دست و پا بزنید بیشتر کثیف میشید عینهو خوک که خودش لذت میبره از این کار ولی دیگران رو آزار میده.
چقدر تهوعآور شدین...
ملت افتادن دست یه مشت روانی... یه دسته در حال چپاول هستن به خاطر منافع خودشون یه دسته هم در حال جنایت به خاطر موندگاری بیشتر انگار که مملکت ارث باباشونه.
هرطور حساب میکنم در هیچ جایگاه بشری چنین سطحی از رذل بودن نمیگنجه! باید در چه سطحی از حماقت باشی که به چنین کثافتبازیهایی تن بدی یا راضی باشی یا طرفدارش باشی.
خدا به دادتون برسه فقط... از فرسنگها بوی کثافت شما زمین و آسمون رو گرفته آدم بالا میاره هر روز یه کثافت میشنویم یا میبینیم که خدایا چه بدبختیای بود با یه مشت حیوان تو یه مملکت گیر کردیم.
شخصاً قبل از این جریانات اگه سلامتونم میگرفتم الآن توف هم تو روتون نمیاندازم... همین فرمون پیش برید گورِ خودتونو سریعتر و عمیقتر میکنید.
رذل و بیاعتبار شدن بد دردیه که توش گیر کردین هرچقدر هم دست و پا بزنید بیشتر کثیف میشید عینهو خوک که خودش لذت میبره از این کار ولی دیگران رو آزار میده.
چقدر تهوعآور شدین...
ملت افتادن دست یه مشت روانی... یه دسته در حال چپاول هستن به خاطر منافع خودشون یه دسته هم در حال جنایت به خاطر موندگاری بیشتر انگار که مملکت ارث باباشونه.
هرطور حساب میکنم در هیچ جایگاه بشری چنین سطحی از رذل بودن نمیگنجه! باید در چه سطحی از حماقت باشی که به چنین کثافتبازیهایی تن بدی یا راضی باشی یا طرفدارش باشی.
خدا به دادتون برسه فقط... از فرسنگها بوی کثافت شما زمین و آسمون رو گرفته آدم بالا میاره هر روز یه کثافت میشنویم یا میبینیم که خدایا چه بدبختیای بود با یه مشت حیوان تو یه مملکت گیر کردیم.
COMPΞZ 🧬
با این کشت و کشتاری که راهانداختین فکر میکنید ترسیدیم ازتون؟ خشم و نفرت نسبت به شماها هزاران برابر بیشتر از قبل میشه فقط... شخصاً قبل از این جریانات اگه سلامتونم میگرفتم الآن توف هم تو روتون نمیاندازم... همین فرمون پیش برید گورِ خودتونو سریعتر و عمیقتر…
دیشب رئیس جمهور چین رو تو خوابم دیدم!!! نمیدونم چه ربطی به من داره! اصلاً چرا باید بیاد تو خواب من... دیدم داره گریه میکنه زار زار اشک میریزه برای ایران!!!!😐
خدا بخیر کنه ولی از این مطمئنم این کثافتای کمونیسم هرجا کم میارن یه بامبولی در میارن تا دنیا باهاش درگیر بشه... قبلاً کرونا بود الآن طاعون! اصلاً بلایی نموند ما نچشیده باشیم.
مراقبت کنید هر جا که هستید.
خدا بخیر کنه ولی از این مطمئنم این کثافتای کمونیسم هرجا کم میارن یه بامبولی در میارن تا دنیا باهاش درگیر بشه... قبلاً کرونا بود الآن طاعون! اصلاً بلایی نموند ما نچشیده باشیم.
مراقبت کنید هر جا که هستید.
یکی از دوستان داشت با جنی بازی میکرد روی امبد، گفتیم مستندات رو یکم بهتر کنیم!
https://docs.genyleap.com/geny-token/developers
از این پس هرکس بخواد روی جنی کار کنه میتونه وارد پنلش بشه و به APIهای اختصاصی خودمون دسترسی داشته باشه.
در پروفایل، بخش APIs برای این منظور هست.
به صورت پیشفرض فعلاً دسترسیش مبتنی بر درخواست هست، کم کم مبتنی بر مصرف خود توکن خواهد بود.
همهٔ اینها با زیرساختهای خودمون یعنی OpenProof سادهسازی شده.
https://docs.genyleap.com/geny-token/developers
از این پس هرکس بخواد روی جنی کار کنه میتونه وارد پنلش بشه و به APIهای اختصاصی خودمون دسترسی داشته باشه.
در پروفایل، بخش APIs برای این منظور هست.
به صورت پیشفرض فعلاً دسترسیش مبتنی بر درخواست هست، کم کم مبتنی بر مصرف خود توکن خواهد بود.
همهٔ اینها با زیرساختهای خودمون یعنی OpenProof سادهسازی شده.
بارون که میباره معلوم نیست دکلا نشتی آب میگیرن یا چی همش قطع و وصل میشیم... هیچیشون درست نیست که هیچیشون 😐
میگم آخه این مجری خرزشی اخبار شبکه ۱ آشناست… این نادون هم شهریه منه! 🤣 یه زمانی تو شبکه استانی خبر میداد مردک ربات از روی کاغذ میخونه فقط مهم نیست دروغه راسته…! اینو من گردن نمیگیرم شماهم نگیرید.
هرچی آدم حسابی بود همه فرار کردن ببین کی شده مجری…😆 وای الله درگاهیان شوکور 😁 نمنه بامبیلی وار ایش باشیندا.
الان با خودش میگه پیشرفت کردم از شبکه استانی رفتم به شبکه ملی. 🥴
هرچی آدم حسابی بود همه فرار کردن ببین کی شده مجری…😆 وای الله درگاهیان شوکور 😁 نمنه بامبیلی وار ایش باشیندا.
الان با خودش میگه پیشرفت کردم از شبکه استانی رفتم به شبکه ملی. 🥴
This media is not supported in your browser
VIEW IN TELEGRAM
بعد میگن حس وایبکد داد بهمون... 😄
این قانونی که برای طراحی UI با QML ساختم متشکل از هزاران خط قائده مهندسی طراحی UI/UX هست که عمراً روی کیوت به این راحتیها قابل اجرا باشه.
واکنشگرا یکی از صدها قانونی هست که باید رعایت بشه و صدها موضوع دیگر.
این قانونی که برای طراحی UI با QML ساختم متشکل از هزاران خط قائده مهندسی طراحی UI/UX هست که عمراً روی کیوت به این راحتیها قابل اجرا باشه.
واکنشگرا یکی از صدها قانونی هست که باید رعایت بشه و صدها موضوع دیگر.
COMPΞZ 🧬
بعد میگن حس وایبکد داد بهمون... 😄 این قانونی که برای طراحی UI با QML ساختم متشکل از هزاران خط قائده مهندسی طراحی UI/UX هست که عمراً روی کیوت به این راحتیها قابل اجرا باشه. واکنشگرا یکی از صدها قانونی هست که باید رعایت بشه و صدها موضوع دیگر.
این هم خروجی کرک و پر ریزون از وباسمبلی Qt 😝 در ویرایش ۶.۱۲ عالی است. 👌