



Devate هو برنامج متعدد المنصات للهندسة العكسية لـ VLSI شبه التلقائية للمنطق الرقمي في الرقائق. هذا المستودع هو استمرار لمشروع DEGATE الأصلي ، مع تغييرات كبيرة وصيانة جديدة. لمزيد من المعلومات ، يرجى زيارة صفحة Wiki الخاصة بنا ، وإذا كنت ترغب في الدردشة ، فزيارة Gitter. المشرف الرئيسي الحالي ل Degate هو Dorian Bachelot.
تم تطوير Degate بنشاط من قبل Martin Schobert ، خلال أطروحته ، من عام 2008 إلى عام 2011. من 2013 إلى 2018 ، كان المشروع غير نشط بشكل أساسي وحصل فقط على بعض الإصلاحات الصغيرة على مر السنين. في هذا الوقت ، كان المشروع يتكون من مكتبة (Libgate) وواجهة واجهة المستخدم الرسومية (DEGATE).
من المؤكد أن DeGate لديه إمكانات كبيرة ، وذلك بشكل أساسي لأنه البرنامج الوحيد المجاني والمفتوح للمصادر للأجهزة الهندسة العكسية للرقائق ، ولكنه لم يعرف أبدًا كيفية فرض نفسه في المجتمع. أحد الأسباب المحتملة لذلك هو أن Degate كان معروفًا بأنه غير مستقر وله تأثيرات على الأخطاء في المقام الأول.
يمكنك تصفح رمز Degate القديم هنا والمستودع القديم هنا:
https://github.com/nitram2342/degate
يحل هذا المشروع محل النجمة القديم ، مع التركيز على دعم Windows و Linux و MacOS ، ويحصل على استقرار أفضل وتحديث عام. لتحقيق ذلك ، كانت الخطوة الأولى هي إسقاط GTK ، والانتقال إلى QT ودمج LIB وجزء واجهة المستخدم الرسومية من المشروع. هدف آخر هو تقليل عدد التبعيات ، في الوقت الحالي ، يستخدم فقط تعزيز و QT والهدف من منتصف المدة هو الحفاظ على QT فقط وإزالة التعزيز.
كان الاستقرار هو المشكلة الرئيسية في الحجج القديم والسبب الرئيسي لعدم توحيد المجتمع حوله بالفعل. فيما يتعلق بذلك ، نريد أن يكون لدينا عدد أقل من الأخطاء قدر الإمكان ، حتى لو كانت هناك حاجة إلى إسقاط بعض الوظائف (في الوقت الحالي).
في الوقت الحالي لدينا (كوظائف):
لقد أسقطنا هذه الوظائف من التنجيم القديم:
تم إصلاح الكثير من الأخطاء في هذا الإصدار الأحدث ، وينبغي أن يكون قاعدة أفضل لتحسين الحجم أكثر في المستقبل.
لا يزال هناك الكثير مما يجب القيام به في هذا الإصدار الجديد ، ولكن يتم تنفيذ جميع الوظائف الأساسية (وأكثر من ذلك).
وظائف المستقبل المتبقية للتنفيذ (غير محدود):
للحصول على خريطة طريق أكثر دقة ، شاهد ملف Roadmap.md.
توثيق الجهد الرسمي متاح هنا. لا يزال قيد الإنشاء.
أيضا ، يمكنك أن تجد هنا الويكي الرسمي DEGATE. على سبيل المثال ، يمكنك العثور على قائمة البرامج التعليمية لل Degate وللتعدين IC.




DEGATE لديه فقط 2 تبعيات: BOOST و QT6.
نحن نستخدم VCPKG للتعامل مع تثبيت هذه ، يرجى الرجوع إلى القسم السريع #البداية أدناه.
بالنسبة إلى Linux (يرجى قراءة قسم Linux أدناه ، هناك حاجة إلى بعض التبعيات فقط إذا كنت تستخدم VCPKG's QT ):
بالنسبة إلى MacOS (يرجى قراءة قسم MacOS أدناه):
إذا كنت تستخدم تثبيت QT6 محلي:
أولاً ، استنساخ هذا المستودع (مساعدة هنا):
> git clone https://github.com/DegateCommunity/Degate
> git submodule update --init --recursiveقم بإعداد تثبيت التبعيات (هناك حاجة إلى بعضها فقط إذا استخدمت VCPKG's QT ):
> ./vcpkg/bootstrap-vcpkg.sh -disableMetrics
> apt install ' ^libxcb.*-dev ' libx11-xcb-dev libglu1-mesa-dev libxrender-dev libxi-dev libxkbcommon-dev
libxkbcommon-x11-dev libegl1-mesa-dev libglu1-mesa-dev mesa-common-dev libxrandr-dev libxxf86vm-dev
autoconf autoconf-archiveإذا كان أي شيء مفقودًا ، فيجب أن تتم مطالبتك بمساعدة كيفية تثبيت الأدوات المطلوبة.
بناء (في مجلد "بناء" ، على سبيل المثال):
> cmake .. -DVCPKG_QT=1
> makeالثنائيات في مجلد "بناء/خارج/بن".
إذا كنت تفضل استخدام تثبيت QT المحلي (وتجنب إعادة بناء QT من خلال VCPKG) ، فيرجى استخدام خيار -DVCPKG_QT=0 .
تثبيت التبعيات:
> . v cpkg b ootstrap-vcpkg.bat -disableMetricsبناء (في مجلد "بناء" ، على سبيل المثال):
> cmake .. -DVCPKG_QT=1
> cmake --build .الثنائيات في مجلد "بناء/خارج/بن".
إذا كنت تفضل استخدام تثبيت QT المحلي (وتجنب إعادة بناء QT من خلال VCPKG) ، فيرجى استخدام خيار -DVCPKG_QT=0 وتحديد مسار QT6 مع -DCMAKE_PREFIX_PATH="path_to_qt" .
إعداد تثبيت التبعيات:
> ./vcpkg/bootstrap-vcpkg.sh -disableMetrics
> brew install autoconf autoconf-archive automake بناء (في مجلد "بناء" ، على سبيل المثال):
> cmake .. -DVCPKG_QT=1
> cmake --build .الثنائيات في مجلد "Build/Out/Bin" في الحزمة ".App".
إذا كنت تفضل استخدام تثبيت QT المحلي (وتجنب إعادة بناء QT من خلال VCPKG) ، فيرجى استخدام خيار -DVCPKG_QT=0 .
Could NOT find Boost (missing: filesystem system thread) (found version "1.71.0")
قد تكون هذه الرسالة ناتجة عن الخيارات الافتراضية التي تجبر على استخدام نسخة ثابتة ومتعددة مؤشرات الترابط من مكتبة Boost. على سبيل المثال ، هذه مشكلة عند تثبيت Boost مع Macports على MacOS لأن الإصدار المثبت لا يوفر إصدارًا ثابتًا افتراضيًا. لتغيير هذه الخيارات الافتراضية ، يمكنك استخدام هذين الأمرين عند الاتصال بـ CMake (ON/OFF):
> cmake .. -DBoost_USE_STATIC_LIBS=OFF -DBoost_USE_MULTITHREADED=OFFعلى Windows ، يمكن أن يكون سبب ذلك أيضًا إصدارًا مثبتًا من Boost الذي لا يتطابق مع برنامج التحويل البرمجي المثبت.
/etc/cmake/ConfigureFiles.cmake:25 (file): file failed to open for reading (No such file or directory): .../VERSION
يمكن أن تظهر هذه الرسالة لمستخدمي MacOS. المشكلة تأتي من مسافات في أسماء الدليل ، وهذا خطأ من Cmake. ما عليك سوى نقل مجلد Degate إلى شجرة ملفات بدون مسافات في أسماء الدليل.
CMake Error at vcpkg_execute_required_process.cmake:127 (message): Command failed: vcpkg/downloads/tools/ninja/1.10.2-linux/ninja -v
يرجى الرجوع إلى إخراج VCPKG ، ويرتبط هذا بتثبيت QT الذي يحتاج إلى تبعيات تم تثبيتها مسبقًا على بعض الأنظمة الأساسية. على سبيل المثال ، على Linux ، تحتاج إلى تنفيذ: sudo apt-get install '^libxcb.*-dev' libx11-xcb-dev libglu1-mesa-dev libxrender-dev libxi-dev libxkbcommon-dev libxkbcommon-x11-dev libegl1-mesa-dev sudo apt-get install libxi-dev libgl1-mesa-dev libglu1-mesa-dev mesa-common-dev libxrandr-dev libxxf86vm-dev .
يمكنك العثور على مشاريع تجريبية هنا.
اقرأ ملف "المساهمة. md".
في الوقت الحالي ، يتم دعم اللغة الإنجليزية والفرنسية فقط ، ولكن إذا كنت ترغب في أن تتمكن من المساعدة بسهولة. DEGATE استخدام QT Linguist للترجمة ، يمكنك معرفة المزيد هنا: https://doc.qt.io/qt-5/linguist-translators.html. يمكنك العثور على ملفات .ts (لاستخدامها مع اللغوي QT) في "الدقة/اللغات".
اللغات:
لإضافة لغة جديدة ، يفتح مشكلة جديدة ، أو استخدم مشروع CrowdIn: https://crowdin.com/project/degate.
يتم إصدار DEGATE بموجب إصدار ترخيص GNU العام 3. راجع الترخيص. txt للحصول على التفاصيل.
المشرف الرئيسي الحالي لـ Degate هو Dorian Bachelot [email protected] والمباريات الأصلية Degate هي Martin Schobert [email protected].