



DeGate是一種用於芯片中數字邏輯半自動VLSI反向工程的多平台軟件。該存儲庫是原始DEGATE項目的延續,具有重大變化和新的維護者。有關更多信息,請訪問我們的Wiki頁面,如果您想聊天,請訪問我們的Gitter。目前的Degate主要維護者是Dorian Bachelot。
Degate在2008年至2011年的論文期間由馬丁·肖伯特(Martin Schobert)積極開發。從2013年到2018年,該項目主要是不活躍的,多年來僅進行了一些小問題。目前,該項目由庫(Libgate)和GUI接口(DEGATE)組成。
DeGate絕對具有巨大的潛力,主要是因為它是唯一用於芯片硬件反向工程的免費和開源軟件,但從來不知道如何將自己強加於社區中。造成這種情況的一個可能是,眾所周知,Degate是不穩定的,並且首先具有影響錯誤。
您可以在此處和舊存儲庫中瀏覽舊的Degate代碼:
https://github.com/nitram2342/degate
該項目以窗口,Linux和MacOS支持的重點取代了舊的學位,從而獲得了更好的穩定性和一般的現代化。為了實現這一目標,第一步是放棄GTK,移至QT並合併LIB和GUI部分。另一個目的是最大程度地減少依賴性的數量,因為現在它僅使用增強和QT,而中期目標是僅保留QT並刪除增強功能。
穩定性是舊學位的主要問題,也是社區尚未團結起來的主要原因。關於這一點,即使需要刪除某些功能(目前),我們也希望盡可能少。
目前,我們擁有(作為功能):
我們從舊學位刪除了這些功能:
這個較新的版本已解決了許多錯誤,這應該是更好的基礎,以便將來更多地提高染料。
在這個新版本中,仍然有很多事情要做,但是實現了所有核心功能(甚至更多)。
剩下的未來功能要實施(不限):
有關更精確的路線圖,請參閱路線圖.md文件。
官方的Degate文檔可在此處找到。它仍在建設中。
另外,您可以在這裡找到官方的Wiki。例如,您可以在其上找到用於Degate和IC反向工程的教程列表。




DEGATE僅具有2個依賴性:Boost和Qt6。
我們使用VCPKG來處理這些安裝,請參閱下面的#快速啟動部分。
對於Linux(請閱讀下面的Linux部分,僅在使用VCPKG的QT時才需要一些依賴項):
對於MacOS(請閱讀下面的MacOS部分):
如果您正在使用本地QT6安裝:
首先,克隆此存儲庫(在此處提供幫助):
> git clone https://github.com/DegateCommunity/Degate
> git submodule update --init --recursive準備依賴項的安裝(僅當使用VCPKG的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二進製文件在“構建/淘汰/bin”文件夾中。
如果您希望使用本地QT安裝(並避免通過VCPKG重建QT),請使用-DVCPKG_QT=0選項。
安裝依賴項:
> . v cpkg b ootstrap-vcpkg.bat -disableMetrics構建(例如,在“構建”文件夾中):
> cmake .. -DVCPKG_QT=1
> cmake --build .二進製文件在“構建/淘汰/bin”文件夾中。
如果您希望使用本地QT安裝(並避免通過VCPKG重建QT),請使用-DVCPKG_QT=0選項,並使用-DCMAKE_PREFIX_PATH="path_to_qt"指定QT6的路徑。
準備依賴的安裝:
> ./vcpkg/bootstrap-vcpkg.sh -disableMetrics
> brew install autoconf autoconf-archive automake 構建(例如,在“構建”文件夾中):
> cmake .. -DVCPKG_QT=1
> cmake --build .二進製文件在捆綁包中的“構建/淘汰/bin”文件夾中。
如果您希望使用本地QT安裝(並避免通過VCPKG重建QT),請使用-DVCPKG_QT=0選項。
Could NOT find Boost (missing: filesystem system thread) (found version "1.71.0")
此消息可能是由默認選項引起的,這些選項強迫使用Boost庫的靜態和多線程版本。例如,在MacOS上使用MacPorts安裝Boost時,這是一個問題,因為默認情況下安裝的版本不提供靜態版本。要更改這些默認選項,您可以在調用CMAKE(開/關)時使用這兩個命令:
> 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的錯誤。只需將您的DEG文件夾移至沒有目錄名稱中沒有空格的文件樹。
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 。
您可以在這裡找到演示項目。
閱讀“ contruting.md”文件。
目前,只有英語和法語得到支持,但是如果您希望您可以輕鬆提供幫助。 Degate使用QT語言學家進行翻譯,您可以在此處了解更多:https://doc.qt.io/qt-5/linguist-translators.html。您可以在“ res/語言”中找到.ts文件(與QT語言學家一起使用)。
語言:
要添加新語言打開一個新問題,或使用我們的Crowdin項目:https://crowdin.com/project/degate。
DEGATE根據GNU通用公共許可證版本第3版發布。有關詳細信息,請參見Licenter.txt。
目前的DEGATE的主要維護者是Dorian Bachelot [email protected],最初的Degate Mainter是Martin Schobert [email protected]。