Tip / 登入 to post questions, reply, level up, and achieve exciting badges. Know more

cross mob
Translation_Bot
Community Manager
Community Manager
Community Manager

大家好,

我有一個使用 modus 工具箱進行編譯的項目,我需要使用 cmake 替換所有內容,以便有一個乾淨/快速的建置流程,無需訪問互聯網進行 CI 自動化(Linux 和 Windows)。是否有關於 PSOc6 構建的例子或指南,因為我真的不知道從哪裡開始。 我需要使用 gcc 進行本地編譯,而不是使用所有繁重的工具鏈事情

謝謝

1 解決方案
Translation_Bot
Community Manager
Community Manager
Community Manager

@qufi

我明白 我不確定 Infineon 是否支持獨立項目創建和編譯。 正如 @nin 提到的,使用的大多數基礎工具都不是專有的。 大多數腳本和 makefiles 都已經可用。 您將不得不重寫所有腳本才能從頭開始創建 PSoC 6 項目。

我在上一篇文章中提到了重新創建構系統所需的文件。 至於下載庫...

您是否允許在另一台機器上創建項目,將項目移"到離線"機器,然後繼續構建? 如果是的話,那會顯著更容易。 如果沒有,您可能想要找出每個 BSP 或每個項目的依賴關係。 讓 getlibs 或庫管理器弄清楚它的方法是通過清單文件-https://github.com/Infineon/mtb-super-manifest/blob/v2.X/mtb-super-manifest-fv2.xml

存在一個清單文件鏈,它提供有關所有依賴關係的信息。 您可以通過手動克隆每個存儲庫等來嘗試重新創建 getlibs 的工作。 您也可以建立指向系統內本機儲存庫的清單連結(清單也CAN是檔案路徑)。無論如何,這是一條艱難的道路...

希望這是合理的。

在原始文章中檢視解決方案

0
8 回應
Translation_Bot
Community Manager
Community Manager
Community Manager

@qufi,

您CAN使用 Make 從命令列建立應用程式。您CAN 參考第 4 節 Eclipse IDE for ModusToolbox™ 使用者指南 的 建置應用程序 ,以了解如何使用 Make 和 GCC 實用程式進行建置。

有關命令行設置,請參閱 2.1.2 CLI 設置說明部分。 ModusToolbox ™ 工具包使用者指南 的 第 4 節 ModusToolbox™ 建置系統 討論了更多詳細資訊。

最好的問候,

0
Translation_Bot
Community Manager
Community Manager
Community Manager

感謝您的回應,但我想從頭開始構建流程,而不是使用任何模式工具箱工具/makefile。

0
Translation_Bot
Community Manager
Community Manager
Community Manager

偶然發現了這個線程。 也許提供有關為什麼要走這條路線的更多信息將有助於...

如果要提高構建性能,你可以看看使 qbuild。 這會略過自動探索。 如果你想要更多的控制,你可能想看看下面的目錄中的 makefile-

... mtb_ 共享\ 核心製作\ 發布-v1.9.1\ 使\ 核心

... 模組方塊\ 工具 _2.4\ 製作

也許修改現有的 makefile 跳過你想要的可以給出合理的結果?

一切都是最好的!

0
Translation_Bot
Community Manager
Community Manager
Community Manager

你好,

只是為了澄清,鑑於我們參與醫療植入物領域,我對特定工具的傾向不是個人偏好,而是由我公司強制執行的。 我們優先考慮對所有流程的絕對控制,並且需要獨立於模式工具箱生態系統的操作。 目標是確保受控制的編譯,並在我們的構建流程中使用極輕量級的工具。 我們致力於根據公司準則使用 CMake。 此外,我們的系統必須保持離線以保持完整性,並且必須在專用的本地服務器上快速執行構建。

感謝您的理解!

0
Translation_Bot
Community Manager
Community Manager
Community Manager

@qufi

Infineon Technologies 明白您想選擇要使用的工具和產品,將它們合併到自己的流程中,並以我們無法預測的方式開發應用程序。 這就是為什麼 ModusToolbox™ 軟體不是一個規定使用任何特定 IDE 的單一專有軟體工具。

請注意,ModusToolbox™ 生態系統包括配置工具、低階驅動程式、庫和作業系統支持,其中大部分與 Linux、macOS 和 Windows 託管環境相容。

nin_1-1696316892866.png

ModusToolbox™ 軟體不包括專有工具或客製化建置環境。這意味著您可以選擇編譯器、IDE、RTOS 和生態系統,而不會影響可用性或對我們領先業界的 Infineon 裝置的存取權限。

您提到,您正在尋找有關建立 PSoC6 的指南。 您能否提供您正確使用的 Infineon 設備?

ModusToolbox™ 工具包安裝程式為任何應用程式提供必要且可選的核心資源。

根據您的要求,以下快速鏈接對您很有用。

連結

描述

ModusToolbox™ 工具包安裝指南

用於安裝工具套件

ModusToolbox™ 的 Eclipse IDE 使用者指南

第 4 節使用 Make 和 GCC 實用程序構建應用程序。

ModusToolbox™ 工具包使用者指南

第 2.1.2 節 有關命令列設定的 CLI 設定說明和 ModusToolbox™ 建置系統的第 4 部分

 

讓我知道這個

最好的問候,

0
Translation_Bot
Community Manager
Community Manager
Community Manager


你好

我正在尋求為 PSoC 6 項目設置 CMake 構建過程,特別是模型 CY8CMOD-062-4343W,而無需安裝 ModusToolbox。 此外,我需要能夠離線構建項目。 因此,我將在 Git 存儲庫中推送所需的庫,並在機器上安裝必要的編譯工具鏈。

我正在努力從 ModusToolbox 中找到應包含在存儲庫中的必要的 lib 以促進這一點。 有人可以指導我如何構建,在以下限制下的 hello world 示例:沒有 ModusToolbox,沒有使用 Infineon 生成的 Makefile,以及離線時?

 

感謝您的協助。 最好的問候。

0
Translation_Bot
Community Manager
Community Manager
Community Manager

@qufi

ModusToolbox™ 命令列介面 (CLI) 和支援的 IDE 皆使用相同的建置系統。因此,完全支持它們之間切換。 程式設計/偵錯和其他工具CAN在命令列或 IDE 環境中使用。在所有情況下,建置系統都依賴 ModusToolbox™ 安裝程式中包含的 ModusToolbox™ 工具。

ModusToolbox™ 建置系統是基於GNU make 。它執行應用程序構建並提供啟動工具和運行公用程序所需的邏輯。 它由一組輕巧且可訪問的 Makefiles 組成,部署為每個應用程序的一部分。 此結構允許每個應用程序擁有構建程序,並允許相對輕鬆地進行特定環境或應用程序特定的更改。 系統在任何具有 make git 公用程序 的 環境上 運行。因此,您CAN使用 make 和 git 實用程式在 Infineon 裝置上編輯、偵錯和執行您的應用程式。

大多數 Makefile 都部署為git 儲存庫(稱為「repos」) ,與在 ModusToolbox™ 軟體中部署程式庫的方式相同。有兩個獨立的存儲:所有食譜使用的 核心製作和包 BSP/目標特定詳細信息的 食譜 make-xxx。這些是啟用應用程序構建所需的最低要求。 這些 Makefiles 一起形成構建系統。

匯入 Infineon GitHub 上可用的代碼範例時,您需要有互聯網連接。 將應用程式匯入系統後,您CAN在沒有網路的情況下建置、偵錯和編程您的裝置。

以下命令列範例將「 Hello world 」應用程式複製到指定的工作目錄C:/mtb_projects中,該應用程式具有為CY8CPROTO-062-4343W (您正在使用的裝置)BSP 配置的所需名稱「MyHelloWorld」:

project-creator-cli --board-id CY8CPROTO-062-4343W --app-id mtb-example-hal-hello-world --user-app-name MyHelloWorld --target-dir "C:/mtb_projects"

專案創建者-cli 工具使用 git 克隆並製作 getlibs 命令來獲取存儲庫並導入所需的庫。

若要建立您的應用程式:

 make build

若要編程您的 PSoC 裝置:

 make program

 

最好的問候,

0
Translation_Bot
Community Manager
Community Manager
Community Manager

@qufi

我明白 我不確定 Infineon 是否支持獨立項目創建和編譯。 正如 @nin 提到的,使用的大多數基礎工具都不是專有的。 大多數腳本和 makefiles 都已經可用。 您將不得不重寫所有腳本才能從頭開始創建 PSoC 6 項目。

我在上一篇文章中提到了重新創建構系統所需的文件。 至於下載庫...

您是否允許在另一台機器上創建項目,將項目移"到離線"機器,然後繼續構建? 如果是的話,那會顯著更容易。 如果沒有,您可能想要找出每個 BSP 或每個項目的依賴關係。 讓 getlibs 或庫管理器弄清楚它的方法是通過清單文件-https://github.com/Infineon/mtb-super-manifest/blob/v2.X/mtb-super-manifest-fv2.xml

存在一個清單文件鏈,它提供有關所有依賴關係的信息。 您可以通過手動克隆每個存儲庫等來嘗試重新創建 getlibs 的工作。 您也可以建立指向系統內本機儲存庫的清單連結(清單也CAN是檔案路徑)。無論如何,這是一條艱難的道路...

希望這是合理的。

0