亚洲国产成人av在线观看,777米奇色狠狠狠888影视,一二三四在线视频观看社区,小荡货奶真大水真多紧视频

新聞資訊
使用Rust on Arm構建安全可靠的軟件
2024-12-17
Rust編程語言因其獨特的安全性、性能和生產(chǎn)力組合而受到關注。Rust旨在消除常見的編程負擔并處理編譯時use-after-free錯誤等問題。值得注意的是,它在不使用垃圾回收器的情況下實現(xiàn)了這一點,生成的機器代碼的性能可與C和C++相媲美。在這個由三部分組成的博客系列中,F(xiàn)errous Systems 的高級工程師兼培訓師Jonathan Pallant概述了Arm架構的Rust支持,包括對 Ferrocene的介紹,F(xiàn)errocene 是用于任務關鍵型和安全關鍵型應用的合格Rust工具鏈。對于任何考慮將Rust用于下一個基于Arm的項目的人來說,這個概述都是必不可少的。本系列探討了從廣泛的Arm領域中挑選的三個示例,研究了在裸機、RTOS和Rich OS應用程序上使用Rust的細節(jié)。此外,它還討論了Ruston Arm的現(xiàn)狀,重點介紹了Rust項目和第三方提供的功能和庫,無論是否有商業(yè)支持。圖1:編寫Rust應用程序的方法第1部分:裸機系統(tǒng)我們將探討的第一個領域是運行純Rust編寫的裸機應用的微控制器案例。在第二部分中,我們將在其基礎上加入一個已有的用C或C++編寫的實時操作系統(tǒng)(RTOS)。這里使用的術語“微控制器”指的是帶有集成SRAM(可能還有Flash)的小型片上系統(tǒng)(SoC)。在Arm架構上,這些設備在AArch32模式下執(zhí)行T32指令集,但有些系統(tǒng)可能會使用A32指令集。這里討論的許多“裸機”問題同樣適用于較大應用處理器上的低級代碼,比如安全啟動固件或虛擬機監(jiān)視器。然而,本節(jié)將著眼于運行在nRF52-DK開發(fā)套件上的NordicnRF52840微控制器。這款流行的微控制器包含一個ArmCortex-M4處理器,以及256KiB的SRAM和1MiB的Flash。針對ArmCortex-M的裸機Rust固件可以依賴由Rust嵌入式設備工作組提供的啟動代碼,這些代碼封裝在一個名為cortex-m-rt的crate中。這個crate允許固件完全用Rust編寫——所需的少量內(nèi)聯(lián)匯編(例如,在main之前初始化數(shù)據(jù)段)被捆綁在cortex-m-rt內(nèi)部,它只需帶你走到Rust的fn main()函數(shù)處即可。當系統(tǒng)啟動并運行Rust代碼時,有一個豐富的驅動程序生態(tài)系統(tǒng)可供選擇。例如,nrf-hal項目為我們的nRF52840中的每個外設提供了驅動程序。實際上,許多基于Arm的微控制器都有一套出色的開源驅動程序,包括來自NordicSemi、STMicro和RaspberryPi的許多驅動。像embedded-hal這樣的跨平臺抽象讓這些驅動程序可以用標準化的方式描述外設,使用戶能夠構建可重用的組件和庫,這些組件和庫可以在任何合適的實現(xiàn)上工作,即使跨越不同的芯片制造商。在2021年最近的芯片短缺期間,許多使用Rust的嵌入式系統(tǒng)開發(fā)者發(fā)現(xiàn)這一點非常有用,因為根據(jù)可用性更換微控制器變得容易得多。如果您以前沒有見過裸機Rust代碼,圖2提供了一個針對nRF52840的完整“blinky”示例。圖2:用于nRF52-DK的最小但完整的Rust“blinky”,使用提供UART驅動程序,GPIO等的開源板支持包。如示例所示,Rust允許開發(fā)豐富的API來描述各種硬件接口,如LED和UART。然而,Rust編譯器內(nèi)置的強大優(yōu)化器產(chǎn)生的機器代碼與C編譯器產(chǎn)生的機器代碼大致相似。圖1中顯示的Led類型(支持nrf52.leds.led_2值)在運行時不占用內(nèi)存。它是所謂的零大小類型。這意味著系統(tǒng)類型可用于將安全性和穩(wěn)健性引入API,而絕對沒有運行時開銷。當然,對于許多應用程序來說,這已經(jīng)足夠了,但開發(fā)人員不僅限于使用Rust在微控制器上編寫基本的事件循環(huán)和中斷例程?;贏rmCortex-M的微控制器可以運行AsyncRust,使用純Rust編寫的小型輕量級異步執(zhí)行器,例如embassy。這通常是啟動完整RTOS的一種高效且經(jīng)濟的替代方案,尤其是當您只需要同時執(zhí)行少量任務時。但有時,完整的RTOS才是正確的解決方案。在第2部分中,我們將探討如何將Rust與現(xiàn)有的C API集成,包括使用Free RTOS和Eclipse ThreadX等RTOS的實際示例。圖3:nRF52840 DK(來源:Nordic Semiconductor)第二部分:Arm上高級Rust與RTOS的集成在本博客系列的第1部分中,我們探討了如何使用Rust在Arm微控制器上構建裸機應用程序。在第2部分中,我們將重點介紹如何將Rust與微控制器和中型微處理器上的實時操作系統(tǒng)(RTOS)進行集成。 大多數(shù)現(xiàn)有的RTOS都是用C編寫的,因此在其上運行的任何Rust程序都需要與現(xiàn)有的CAPI交互。RTOS的示例包括但不限于Eclipse ThreadX、Free RTOS或Zephyr。在Arm上,這些系統(tǒng)通常在AArch32模式下在Cortex-R52等處理器上執(zhí)行A32指令;盡管這里的概念同樣適用于Cortex-M4、Cortex-M55或類似產(chǎn)品。圖1:編寫Rust應用程序的方法Rust支持導入和導出兼容C的函數(shù)、原始指針、易失性內(nèi)存訪問以及內(nèi)聯(lián)匯編,以實現(xiàn)低級別的硬件交互。一個完整的演示超出了博客文章的范圍,因此FerrousSystems發(fā)布了一個開源示例應用,該應用使用Eclipse ThreadXRTOS,并針對Arm Cortex-R5在Arm Versatile ApplicationBoard上(以及Arm PL011UART、Arm PL190向量中斷控制器和Arm SP804雙定時器)。這個例子將ThreadX編譯為靜態(tài)C庫,然后將其鏈接到由Rust和Arm匯編混合編寫的二進制文件中。此示例可以使用Ferrocene或標準Rust工具鏈進行編譯。 就像第一部分提到的裸機微控制器一樣,在這些實時系統(tǒng)上,通常無法使用完整的Rust標準庫。相反,用戶被限制在一個更為基本的子集libcore中。雖然不是不可能做到——對于FreeRTOS和NuttX等存在Rust標準庫移植版,但這些系統(tǒng)通常非常關注資源分配和性能,因此創(chuàng)建高性能綁定到所需的RTOS部分比嘗試將RTOS抽象到更適合應用處理器API的做法更有意義。這種方法對功能安全系統(tǒng)也有利,因為在Rust中認證一個小的自定義RTOS接口比認證整個Rust標準庫更實際。 在ThreadX的例子中,匯編語言啟動代碼設置堆棧指針并啟用浮點單元(FPU)后,執(zhí)行權被交給用Rust編寫的main函數(shù)。Rust代碼初始化外設驅動程序,然后將執(zhí)行權交給ThreadX調度器。ThreadX設置的一部分涉及通過一個名為tx_application_define的函數(shù)回調到Rust固件中,該函數(shù)是用Rust編寫的,但聲明為具有“C兼容”的接口。此函數(shù)用于為任務堆棧創(chuàng)建字節(jié)池和生成各種任務。圖2展示了如何輕松地用Rust調用CAPI的一個片段。圖2:使用Rust創(chuàng)建ThreadX字節(jié)池的示例。threadx_sys crate包含基于RTOS的C頭文件自動生成的綁定。threadx_syscrate包含基于RTOSC頭文件自動生成的綁定。代替手動轉換ThreadX頭文件為Rust,示例使用bindgen工具自動為ThreadX生成Rust綁定。這個最初由Mozilla開發(fā)并由Ferrous Systems支持的工具幾乎可以應用于任何帶有標準C頭文件的庫,例如ThreadX提供的庫。示例使用來自bindgen的自動生成綁定,允許Rust代碼調用任何ThreadX函數(shù),而RTOS可以回調到任何標記為extern"C"鏈接的Rust函數(shù)。 ThreadX源代碼必須使用標準C編譯器編譯,這在示例中是自動處理的。然后告訴Rust將生成的libthreadx.a鏈接到編譯后的Rust代碼,以生成最終的二進制文件。 在我們的示例中,啟動代碼是用Rust編寫的,但你可能更傾向于讓RTOS從C處理啟動和驅動初始化,只將任務用Rust編寫?;蛘撸憧梢允褂猛耆肦ust編寫的RTOS,如OxidOS。一般步驟保持不變:將你需要的庫代碼編譯成靜態(tài)庫,然后使用這些靜態(tài)庫編譯和鏈接二進制文件。無論是RTOS作為庫還是作為二進制文件,變化不大,只是編譯順序有所不同。 請參閱第3部分,我們將探討如何在Arm處理器上使用Rust和Linux、Windows和macOS等成熟的操作系統(tǒng)。圖3:實時操作系統(tǒng)通常用于工業(yè)和汽車應用程序。 第三部分,我們將探索在Arm處理器上使用Rust與完整操作系統(tǒng)如Linux、Windows和macOS的應用。在本博客系列的第一部分中,我們探討了使用Rust在Arm微控制器上構建裸機應用程序。第二部分深入研究了將Rust與實時操作系統(tǒng)(RTOS)集成在微控制器和中型微處理器上的應用。現(xiàn)在,在第三部分中,我們將注意力轉向使用Rust與完整操作系統(tǒng)如Linux、Windows、macOS、QNX或Android在Arm處理器上的應用。 在Arm架構上,這些系統(tǒng)通常執(zhí)行A64指令,在AArch64模式下運行,例如在RaspberryPi5中找到的Cortex-A76,或者最新AWSGraviton云服務器中的NeoverseV2。Rust還為32位Arm系統(tǒng)提供了良好的支持,例如Cortex-A8和Arm11,甚至可以追溯到1990年代的Arm7。圖1展示了編寫Rust應用程序的方法。 圖1:編寫Rust應用程序的方法在應用處理器上,你通常可以訪問完整的Rust標準庫。這個庫抽象了許多特定于操作系統(tǒng)的接口,提供了一致的API用于線程、文件系統(tǒng)、網(wǎng)絡等,無論操作系統(tǒng)是什么。這意味著開發(fā)者可以使用他們喜歡的開發(fā)平臺,并且可以確信相同的源代碼可以在比如基于Linux的生產(chǎn)系統(tǒng)上編譯。 為了展示Rust的高層次表達能力,圖2顯示了一個示例Rust應用程序。 圖2:在Rust中處理文本文件圖1中的代碼讀取一個UTF-8編碼的文本文件到堆分配的String中,如果文件無法打開則干凈地退出。隨后逐行處理它變得非常簡單,這要歸功于內(nèi)置的迭代器支持——這個例子查找以"MESSAGE:"開頭的行并打印匹配行的其余部分。這種高層API的感覺像Java或C#,但具有C應用程序的性能——這是Rust的獨特優(yōu)勢。 開箱即用的交叉編譯Rust工具鏈不僅僅包括編譯器;它還包括一個結合了構建系統(tǒng)和包管理器的工具叫做cargo。這個工具大大簡化了構建Rust應用程序的過程——通常只需要一條簡單的cargobuild--release命令就可以構建最復雜的項目。作為構建的一部分,cargo可以從第三方包倉庫(如crates.io)下載依賴項,解析語義版本,并為你的項目構建一個完整的依賴樹——包括重要的開源許可信息。 Rust編譯器本身也是一個開箱即用的交叉編譯器。這意味著不像某些C編譯器,你不需要安裝特定版本的編譯器來適應任何給定的主機或目標組合。相反,你可以使用rustup(Rust工具鏈管理器),下載并安裝適合你所選目標的預編譯Rust標準庫,然后就可以開始工作了。圖3展示了如何使用rustup添加對新目標的支持,例如針對Armv7架構的32位ArmLinux的交叉編譯。 圖3:使用rust up添加對新目標的支持Rust項目將其支持的目標分為幾個級別。一級是最高級別,這里的任何目標都會在每次Rust發(fā)布時進行編譯和測試。這一級包括64位ArmLinux,以及x86Linux、Windows和macOS。 二級目標會進行編譯,但不會運行測試套件。這一級包括上面提到的Armv7Linux示例。三級目標僅提供盡力而為的支持,這里是更奇特的目標所在——例如NintendoSwitch上的Rust,或者LinuxonArm7上的Rust。目前,三級目標僅支持使用‘nightly’Rust工具鏈,而不支持穩(wěn)定版本。值得注意的是,Rust就像C和C++一樣,需要一個適合你目標平臺的鏈接器。對于許多目標,捆綁的LLVM鏈接器‘lld’可以工作,但在某些情況下,你可能需要安裝特定的鏈接器。 對于那些需要超出標準Rust層級系統(tǒng)提供的支持的人來說,F(xiàn)errocene提供了解決方案。Ferrocene是商業(yè)支持的Rust工具鏈下游產(chǎn)品,由Ferrous Systems制作。Arm和Ferrous Systems緊密合作,使得特定硬件目標能夠在Ferrocene中可用,這些目標在上游Rust項目中可能只作為二級或三級目標。Ferrocene目標通過了Rust測試套件,并且其中一部分已經(jīng)通過TüVSüd認證,適用于ISO26262ASIL-D和IEC61508SIL-4,還有更多的行業(yè)特定認證正在計劃中。 掌握整個Arm譜系上的Rust本博客系列探討了從廣泛的Arm設備譜系中選取的三個例子,并深入研究了在這個平臺上使用Rust的具體情況。我們看到,無論是要在現(xiàn)有的完全成熟的操作系統(tǒng)上構建,還是與實時操作系統(tǒng)協(xié)作,或者是裸機開發(fā),Rust都能幫助開發(fā)者構建高性能、安全和可靠的軟件。它提供的特性使開發(fā)者能夠比使用傳統(tǒng)語言更快地進入生產(chǎn)階段。類型檢查允許構造難以誤用的API,這意味著你更有可能正確使用它們——節(jié)省寶貴的調試時間。借用檢查意味著緩沖區(qū)溢出和釋放后使用錯誤在“安全”Rust中實際上是不可能的,而你只需要在我們的項目可能用來與硬件或操作系統(tǒng)交互的那一小部分“不安全”Rust代碼中檢查這些問題。來自使用LLVM優(yōu)化的結果是,無論是在應用處理器、實時系統(tǒng)還是微控制器上,Rust生成的二進制文件在性能上都與C和C++相當。 如果你正在尋找?guī)в猩虡I(yè)支持和可選功能安全認證的Rust編譯器,請查看FerrousSystems提供的Ferrocene。Ferrocene當前提供經(jīng)過ISO26262ASIL-D和IEC61508SIL-4認證的AArch64裸機目標編譯器,同時面向32位ArmCortex-R和Cortex-M目標的資格認證也正在進行中。圖4:樹莓派5 https://www.raspberrypi.com/documentation/computers/raspberry-pi.html本文翻譯自“community.arm.com”+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++關于億道電子上海億道電子技術有限公司是國內(nèi)資深的研發(fā)工具軟件提供商,公司成立于2009年,面向中國廣大的制造業(yè)客戶提供研發(fā)、設計、管理過程中使用的各種軟件開發(fā)工具,致力于幫助客戶提高研發(fā)管理效率、縮短產(chǎn)品設計周期,提升產(chǎn)品可靠性。十多年來,先后與ARM、Altium、Ansys、QT、Green Hills、Minitab、EPLAN、QA Systems、OpenText、Visu-IT、HighTec、PLS、Ashling、MSC Software、Autodesk、Source Insight、IncrediBuild、Lauterbach、Adobe、Testplant、TeamEDA等多家全球知名公司建立戰(zhàn)略合作伙伴關系,并作為他們在中國區(qū)的主要分銷合作伙伴服務了數(shù)千家中國本土客戶,為客戶提供從芯片級開發(fā)工具、EDA設計工具、軟件編譯以及測試工具、結構設計工具、仿真工具、電氣設計工具、以及嵌入式GUI工具等等。億道電子憑借多年的經(jīng)驗積累,真正的幫助客戶實現(xiàn)了讓研發(fā)更簡單、更可靠、更高效的目標。歡迎關注“億道電子”公眾號了解更多研發(fā)工具軟件知識
查看更多→
HelixQAC 2024.3中的新功能
2024-12-03
HelixQAC2024.3中的新功能Helix QAC2024.3版本帶來了新的基于Qt的安裝程序,適用于 Windows和Linux,并增強了對Validate SAML/OIDC 身份驗證的支持。此版本還改進了某些環(huán)境下的Dataflow穩(wěn)健性,并在產(chǎn)品中進行了許多提高生活質量的增強。C++分析增強此版本提高了與指針算術相關的分析效率,從而減少了包含大量函數(shù)的特定文件項目的分析時間。Validate平臺改進和功能增強了Helix QAC圖形界面和IDE插件對Validate SAML/OIDC身份驗證的支持。數(shù)據(jù)流在內(nèi)存受限環(huán)境中改善了Dataflow的穩(wěn)健性。安裝程序安裝程序已更新為基于Qt安裝程序框架的包,以提升用戶體驗。適用于Linux的舊版安裝程序(擴展名為 .run)仍然提供,并且運行默認程序【即缺少圖形庫的Linux安裝,或在較舊的操作系統(tǒng)(如 RHEL 7)上】是必需的。命令行選項對于無人值守/靜默安裝已更改,詳細信息可以在文檔中找到。提高生活質量的增強設置:當以管理員身份安裝時指定的通用設置將傳播給所有用戶。自動CCT生成:根據(jù)項目配置預先選擇了自動CCT項目的源語言(C或C++)。Eclipse IDE插件:支持與較新版本的Eclipse集成。GUI:GUI語法高亮支持最新的C++關鍵字/類型。報告:Helix QAC報告中包含的函數(shù)名稱現(xiàn)在具有完整的函數(shù)簽名,提高了可讀性和一致性。文檔:對分析消息文檔進行了各種增強。Validate:提升了上傳構建到Validate的速度。Helix QAC2024.3的重要變更生命周期維護終止公告CentOS Linux7和 RHEL 7的支持終止:從Helix QAC2024.3開始,CentOS Linux 7和 RHEL 7的支持已被棄用。需要傳統(tǒng)安裝程序來在CentOS Linux 7/RHEL 7上安裝。Jenkins插件棄用:從Helix QAC 2024.3開始,Jenkins 插件已被棄用。插件將繼續(xù)保留在Jenkins插件目錄中,但相應頁面將更新以表明其已棄用的狀態(tài)。Structure101集成棄用:從2024.3開始,Helix QAC與Structure 101的集成已被棄用且不再支持。安裝程序變更Qt安裝程序框架:從2024.3開始,安裝程序已更新為基于Qt安裝程序框架的包。因此,用于靜默/無人值守安裝的命令已更改,任何用于自動化的腳本都需要進行更新。本文翻譯自“PERFORCE”官網(wǎng)+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++關于億道電子上海億道電子技術有限公司是國內(nèi)資深的研發(fā)工具軟件提供商,公司成立于2009年,面向中國廣大的制造業(yè)客戶提供研發(fā)、設計、管理過程中使用的各種軟件開發(fā)工具,致力于幫助客戶提高研發(fā)管理效率、縮短產(chǎn)品設計周期,提升產(chǎn)品可靠性。十多年來,先后與ARM、Altium、Ansys、QT、Green Hills、Minitab、EPLAN、QA Systems、OpenText、Visu-IT、HighTec、PLS、Ashling、MSC Software、Autodesk、Source Insight、IncrediBuild、Lauterbach、Adobe、Testplant、TeamEDA等多家全球知名公司建立戰(zhàn)略合作伙伴關系,并作為他們在中國區(qū)的主要分銷合作伙伴服務了數(shù)千家中國本土客戶,為客戶提供從芯片級開發(fā)工具、EDA設計工具、軟件編譯以及測試工具、結構設計工具、仿真工具、電氣設計工具、以及嵌入式GUI工具等等。億道電子憑借多年的經(jīng)驗積累,真正的幫助客戶實現(xiàn)了讓研發(fā)更簡單、更可靠、更高效的目標。歡迎關注“億道電子”公眾號了解更多研發(fā)工具軟件知識
查看更多→
Altium Designer 25.0.2 版本發(fā)布,新功能說明
2024-11-25
在 Altium Designer 25中的新特性免費試用!如果您對我們展示的內(nèi)容感興趣,但目前還不是我們的用戶,不妨嘗試一下Altium Designer吧!只需點擊此處,填寫一份簡單的表格,備注“AD試用”,即可獲得為期15天的免費試用機會。在這期間,您可以全面、自由地體驗Altium Designer所有功能,感受這款PCB設計軟件為何受到眾多工程師和設計師的喜愛。Altium Designer 25.0Altium Designer 25.0發(fā)行說明PCB CoDesign協(xié)同設計改進新增撤銷合并更改的功能在 PCB CoDesign 協(xié)同設計面板中添加了【Undo Merge】撤銷合并控件。當設計完成合并后,此控件會出現(xiàn)在面板中,允許您在必要時撤銷合并結果。約束管理器改進更新了指令導入流程從指令導入到Constraint Manager的功能已被增加進【Refresh】刷新功能中。當在Constraint Manager中點擊【Refresh】按鈕時,會打開“Refresh Constraint Manager”對話框,包含了規(guī)則指令導入的概要。通過點擊對話框中的【Import】按鈕來完成導入的過程。檢測網(wǎng)絡類、差分對及差分對類中的變更現(xiàn)在可以檢測到通過指令導入的網(wǎng)絡類、差分對及差分對類中的變更(新增或移除的元素),并且可以同步的不一致情況(即原理圖與約束管理器之間的不一致),會在相應對象名稱左側顯示橙色提示條。導線鍵合改進增強了裸片焊盤在重疊三維主體上的放置功能裸片焊盤現(xiàn)在會按照高度綁定到其所在的三維主體,而不是裸片焊盤位置處的最高三維主體上。當在同一位置上存在多個三維主體時(例如,當PCB被外殼覆蓋時),此項功能將確保裸片焊盤能夠留在正確的三維主體表面上。如果裸片焊盤放置位置處存在多個三維主體,則您現(xiàn)在可以從重疊主體集內(nèi)選定需要放置焊盤的三維主體。將裸片焊盤放置在存在多個三維主體的重疊位置。在此情況下,會出現(xiàn)一個選定彈出對話框,以確保您能夠選擇需要綁定焊盤的三維主體。在三維模式下,您會看到裸片焊盤位于所選的三維主體表面上。增強了導線鍵合表報表中的排序功能增強了導線鍵合表報表中的排序功能。表內(nèi)的入口現(xiàn)在將按照如下方式進行排序:首先,將列出始于元件基元的鍵合導線。此組內(nèi)的入口將首先按照元件位號標識符的字母順序,然后按照焊盤位號標識符的字母順序進行排序。然后,將列出始于自由基元而終于元件基元的鍵合導線。此組內(nèi)的入口將按照基元名稱和/或位號標識符的字母順序進行排序。最后,將列出起始于自由基元且終止于自由基元的鍵合導線。此組內(nèi)的入口同樣將按照字母順序進行排序。多板設計改進支持外部外設/元件(開放測試階段)本次發(fā)布擴展了多板設計領域的功能,新增對非常規(guī)子PCB裝配體的外部外設/元件(即“非PCB”元件)的支持。例如,這些元件包括外部開關、傳感器以及其他現(xiàn)成的第三方電子模塊。多板原理圖文檔(*.MbsDoc)通過支持以下兩種新對象類型實現(xiàn)了這一功能:自定義部件(Custom Part)自定義部件是指類似于模塊的實體,可鏈接一個或多個庫元件的功能。通過主菜單的 Place ? Custom Part 命令或Active Bar的 Custom Part 命令添加到多板原理圖文檔中。系統(tǒng)會自動為每個鏈接的元件添加一個入口。自定義連接(Custom Connection)自定義連接支持通過從“Components”面板中拖放所需元件到圖紙上的空白區(qū)域,單個庫元件添加到多板原理圖文檔中。系統(tǒng)會自動為元件的每個引腳添加一個入口。請注意,您還可以為元件創(chuàng)建專門用于多板原理圖文檔的自定義符號。在引腳屬性的 Name 字段中添加逗號分隔的名稱后,可將多個引腳分組導入口中,從而以更少的入口創(chuàng)建視覺上更加簡潔的符號,使此類元件的連接更加簡便。編輯原理圖符號時,將多個以逗號分隔的名稱添加到引腳的 Name 字段中。當元件被添加到多板原理圖中的自定義部件上時,將為每個元件引腳創(chuàng)建一個入口,而不是為元件創(chuàng)建單一入口,并且將創(chuàng)建具有多個引腳的入口。當將元件作為自定義連接放置到多板原理圖中時,將創(chuàng)建具有多個引腳的入口。庫元件是指已連接Workspace和可用本地庫中提供的元件。完成放置/定義后,即可以使用線纜和線束連接等,將元件連接到更多設計中。其結果是,整個系統(tǒng)的所有元素均被考慮在內(nèi),并且其連接均會被正確記錄下來。其會在多板原理圖文檔的單一位置處提供了一個完整的‘系統(tǒng)圖’,以確保無需像先前那樣制作‘虛擬’PCB,即可實現(xiàn)此類功能,從而節(jié)省時間。在第一步實施中,通過自定義部件和/或自定義連接定義的鏈接元件既不會自動包含在整個產(chǎn)品/系統(tǒng)BOM中,亦不會在多板裝配體(*.MbaDoc)中顯示。該功能處于開放測試階段,且僅在Advanced Settings 對話框中啟用MBS.PlacePart和 MBS.UseGeometryMaker MBS.UseGeometryMaker選項時可用。向Draftsman文檔添加注釋增加了向Multi-board Draftsman文檔 (*.MbDwf) 添加注釋的功能。可以像在其他文檔類型(例如, Place 菜單、按鈕等)中一樣,使用控件添加注釋。線束設計改進更改計算導線長度您現(xiàn)在可以更改Layout Drawing(*.LdrDoc)上的計算導線長度。在Properties面板中輸入所需的Offset Length,或者在Length Type的下拉列表中選擇Manual ,然后手動定義所需的絕對長度。數(shù)據(jù)管理改進非Altium Designer項目的打開項目對話框功能增強在本次發(fā)布中,Open Project對話框功能得到了增強,從而能夠更好地支持將非Altium Designer項目(OrCAD, KiCad, and EAGLE項目)上傳至已連接Altium 365 Workspace中。對話框中的非Altium Designer項目入口現(xiàn)在隨附相應的圖標,并標有Web Viewer Only文本。當選定非Altium Designer項目入口時,該對話框的右側窗格內(nèi)現(xiàn)在會顯示一條消息,提示本項目僅能在Web Viewer中使用對話框底部的新按鈕Open in Web Viewer打開。將變量參數(shù)傳播至已發(fā)布的裝配數(shù)據(jù)中當使用Project Releaser發(fā)布PCB項目時,針對項目變量定義的參數(shù)現(xiàn)在包含在裝配數(shù)據(jù)集的相應版本中。可以使用Explorer 面板瀏覽此類參數(shù)。在Classic View中查看項目時,可以在選定所需的裝配數(shù)據(jù)集版本后,切換至Parameters環(huán)節(jié)視圖選項卡,以查看變量參數(shù)。項目變量Default具有變量參數(shù)VariantLabel = A在Explorer 面板中查看此變量的裝配數(shù)據(jù)集版本時,此參數(shù)會顯示在Parameters 環(huán)節(jié)視圖選項卡上。+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++關于億道電子上海億道電子技術有限公司是國內(nèi)資深的研發(fā)工具軟件提供商,公司成立于2009年,面向中國廣大的制造業(yè)客戶提供研發(fā)、設計、管理過程中使用的各種軟件開發(fā)工具,致力于幫助客戶提高研發(fā)管理效率、縮短產(chǎn)品設計周期,提升產(chǎn)品可靠性。十多年來,先后與ARM、Altium、Ansys、QT、Green Hills、Minitab、EPLAN、QA Systems、OpenText、Visu-IT、HighTec、PLS、Ashling、MSC Software、Autodesk、Source Insight、IncrediBuild、Lauterbach、Adobe、Testplant、TeamEDA等多家全球知名公司建立戰(zhàn)略合作伙伴關系,并作為他們在中國區(qū)的主要分銷合作伙伴服務了數(shù)千家中國本土客戶,為客戶提供從芯片級開發(fā)工具、EDA設計工具、軟件編譯以及測試工具、結構設計工具、仿真工具、電氣設計工具、以及嵌入式GUI工具等等。億道電子憑借多年的經(jīng)驗積累,真正的幫助客戶實現(xiàn)了讓研發(fā)更簡單、更可靠、更高效的目標。歡迎關注“億道電子”公眾號了解更多研發(fā)工具軟件知識
查看更多→
Qt for Python 6.8:現(xiàn)已發(fā)布!
2024-11-21
我們非常高興地宣布 Qt for Python 6.8 的最新發(fā)布。每發(fā)布一個新版本,我們都會嘗試利用Qt的新功能和新的流行理念帶來新的驚喜。為方便起見,您可以查看Qt for Python6.8中的新功能和改進功能,以及整個變更日志:https://code.qt.io/cgit/pyside/pyside-setup.git/tree/doc/changelogs/changes-6.8.0(瀏覽器復制打開)。在每個版本中,Qt for Python團隊都努力在錯誤修復、功能開發(fā)和全新想法之間取得良好的平衡。在此版本中,您將看到一些與改進我們當前產(chǎn)品相關的更改,例如更改 Python可調用的信號連接,為移除Python的GIL做準備,擴展對懶加載的支持以包括智能指針和嵌套類型,以及其他一些小的修復。我們想重點介紹團隊投入時間最多的幾項主要任務。Qt Design Studio兼容性聽說了嗎?現(xiàn)在可以使用Python后端輕松運行QtDS項目了!如果您還沒有了解,請查看我們之前的博文,其中介紹了QtDS中的新導出功能,以及新的PySide6_DS包,其中包含了專屬的QtQuick組件。此外,您還可以使用 pyside6-deploy部署帶有Python后端的Design Studio項目。導出項目后,只需使用安裝了PySide6的Python環(huán)境,在導出的項目中運行以下命令即可:pyside6-deploy Python/main.py減少二進制文件大小封裝Qt庫可能會在性能方面帶來開銷,還會影響安裝的大小。在此版本中,我們將二進制大小減少了約10%,但我們相信還有更大的可能,因此我們?nèi)栽谥铝τ诖隧椆ぷ?。換個角度來看,對于Linux上的QtCore,Qt二進制文件約為6.8MB,封裝二進制文件約為4.4MB。這意味著,如果您要使用PySide中的QtCore,大約需要11.2MB,考慮到應用程序的部署,這可能是嵌入式系統(tǒng)甚至桌面應用程序的一個問題。我們注意到一些字符串可以被壓縮,其他字符串甚至可以被移除,但我們?nèi)栽谂⒋笮∵M一步縮小,并設法為Qt二進制文件提供一個輕量級封裝。改進我們的Python存根(類型提示)一些系統(tǒng)性的問題來自Shiboken類型系統(tǒng)中一些dunder 方法的返回類型,它們使用了通用的PyObject*而不是 str。在某些情況下,mypy無法處理重載鏈中不一致的靜態(tài)方法。大部分更新的文件都是我們的示例和教程,其中mypy需要幾個小版本之前引入的新枚舉才能正確處理這些代碼行,即使我們出于兼容性目的而設置了容錯模式(例如,我們應該使用Qt.Orientation.Horizonal,而不是 Qt.Horizontal)。許多關于輸入的舊Bug也得到了修復,但在未來的版本中仍有一些問題需要解決。動態(tài)綁定研究在過去的幾個月中,我們一直在研究簡化綁定生成過程的方法,更確切地說,是依靠QMetaObject為QObject提供 Python動態(tài)綁定。這包括使用QMetaType轉換函數(shù)參數(shù)類型的機制,以及使用自定義轉換器擴展其他類型的機制。這是一個棘手的主題,您需要從Qt方面、CPython方面以及C++方面解決許多細節(jié)問題,因此您可以理解,找到適當?shù)钠胶饪赡芫哂刑魬?zhàn)性。需要做更多工作的一個特定主題是對象所有權的概念,我們已經(jīng)通過Shiboken解決了這個問題,但這個項目是全新的。我們可以重用其中的一些邏輯,但我們希望避免與當前的產(chǎn)品過于緊密。我們希望很快在后續(xù)博客中討論這一主題,主要是因為它提供了一種更簡單的方法來在Qt/C++應用程序中啟用腳本功能。PySide6 Flatpak Baseapp介紹雖然不是6.8版獨有,但我們一直在努力開發(fā)PySide6的Flatpak baseapp。這將使PySide6 Linux開發(fā)人員能夠毫不費力地使用PySide6創(chuàng)建Flatpak應用程序。 基于強大的KDE SDK構建,baseapp預裝了PySide6庫,使開發(fā)比以往任何時候都更加順暢。目前,baseapp只支持PySide6 6.7.3,并且可以在Flathub上隨時可用。一旦KDE運行時將Qt版本更新到6.8.0后,baseapp將立即更新到PySide6 6.8.0。要開始使用,只需運行以下命令:?flatpak install flathub io.qt.PySide6.BaseApp//6.7有關使用baseapp創(chuàng)建自己的PySide6應用程序的深入指南,請查看KDE開發(fā)人員文檔中的精彩教程:https://develop.kde.org/docs/getting-started/python/ 適用于PySide6 的Android Wheels隨著PySide6 6.8的發(fā)布,您現(xiàn)在可以下載PySide6的 Android輪(預構建的組件和庫),它與`pyside6-android-deploy`CLI工具無縫集成。這使得為Android 架構打包PySide6應用程序變得更加容易。在此之前,開發(fā)人員必須自己完成交叉編譯Android PySide6二進制文件的繁瑣過程。這通常被證明是一項具有挑戰(zhàn)性且耗時的任務。但是現(xiàn)在,有了預構建的PySide6 Android輪子,這一過程將比以往任何時候都更加簡化和方便。要開始使用,您可以從Qt for Python官方發(fā)布頁面下載 Android輪子:https://download.qt.io/official_releases/QtForPython/pyside6/另外,您可以使用即將發(fā)布(0.1.4)的qtpip直接下載輪子。?qtpip download PySide6 --android --arch aarch64可以下載aarch64輪子,或x86_64輪子 qtpip將輸出下載輪子的路徑,然后您可以使用 `pyside6-android-deploy`工具打包您的PySide6 Android應用程序。?pyside6-android-deploy--wheel-pyside=<path_to_pyside6_wheel>--wheel-shiboken=<;path_too_shiboken_wheel> --name <application_name> --ndk-path=<downloaded_ndk_path> --sdk-path=<downloaded_sdk_path>要了解如何使用pyside6-android-deploy,請參閱官方文檔。 新工具:Pyside6-svgtoqml PySide6對應于svgtoqml工具,可用于將SVG文檔轉換為QML文件,以便在QtQuick應用程序中使用。 pyside6-svgtoqml <svg_file_to_read> <qml_file_to_write> 本文轉自公眾號:Qt軟件+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++關于億道電子上海億道電子技術有限公司是國內(nèi)資深的研發(fā)工具軟件提供商,公司成立于2009年,面向中國廣大的制造業(yè)客戶提供研發(fā)、設計、管理過程中使用的各種軟件開發(fā)工具,致力于幫助客戶提高研發(fā)管理效率、縮短產(chǎn)品設計周期,提升產(chǎn)品可靠性。十多年來,先后與ARM、Altium、Ansys、QT、Green Hills、Minitab、EPLAN、QA Systems、OpenText、Visu-IT、HighTec、PLS、Ashling、MSC Software、Autodesk、Source Insight、IncrediBuild、Lauterbach、Adobe、Testplant、TeamEDA等多家全球知名公司建立戰(zhàn)略合作伙伴關系,并作為他們在中國區(qū)的主要分銷合作伙伴服務了數(shù)千家中國本土客戶,為客戶提供從芯片級開發(fā)工具、EDA設計工具、軟件編譯以及測試工具、結構設計工具、仿真工具、電氣設計工具、以及嵌入式GUI工具等等。億道電子憑借多年的經(jīng)驗積累,真正的幫助客戶實現(xiàn)了讓研發(fā)更簡單、更可靠、更高效的目標。歡迎關注“億道電子”公眾號了解更多研發(fā)工具軟件知識
查看更多→
GreenHills Software成為首家獲得ISO/SAE21434汽車網(wǎng)絡安全證書的嵌入式軟件公司
2024-11-11
GreenHills Software宣布已獲得ISO/SAE21434汽車網(wǎng)絡安全標準的合規(guī)認證。作為安全可靠實時操作系統(tǒng)的供應商,GreenHills Software是首個獲得由全球知名認證機構exida頒發(fā)的該證書的公司。此證書再次確認了GreenHills Software在支持全球汽車制造商(OEM)滿足UNECE WP.29 R155法規(guī)要求以及在其開發(fā)、生產(chǎn)和售后流程中融入安全措施方面的前沿地位。該認證進一步鞏固了Green Hills Software現(xiàn)有的與OEM的合作關系,共同設計和保障聯(lián)網(wǎng)軟件定義車輛的安全,涵蓋自動駕駛、集成座艙、區(qū)域和域控制器、車輛網(wǎng)關、遠程信息處理、無鑰匙進入、診斷系統(tǒng)、電動汽車充電系統(tǒng)等領域。隨著歐盟國家、日本和韓國在2024財年對新車發(fā)布實施汽車網(wǎng)絡安全法規(guī),其他國也有望跟進,支持這一全球汽車網(wǎng)絡安全標準的重要性將在未來大幅增長?!癳xida贊揚GreenHills Software在提供汽車網(wǎng)絡安全認證解決方案和服務方面持續(xù)不斷的努力,”exida認證總監(jiān)Mike Medoff說?!巴ㄟ^獲得ISO/SAE21434道路車輛——網(wǎng)絡安全工程的合規(guī)證書,GreenHills Software證明了他們有一套貫穿整個開發(fā)生命周期的安全過程,以提供設計即安全的產(chǎn)品。GreenHills Software在交付用于車輛電子設備的安全可靠平臺軟件方面,一直處于行業(yè)的前沿?!逼嚲W(wǎng)絡安全是汽車安全的關鍵組成部分。數(shù)十年來,Green Hills Software始終致力于協(xié)助電子制造商開發(fā)和部署具備高安全性和高安全級別的嵌入式系統(tǒng),并在業(yè)內(nèi)贏得廣泛認可和良好聲譽。這得益于其豐富的行業(yè)經(jīng)驗,以及通過分離、最小特權和加密原則確保安全性的實時操作系統(tǒng)、開發(fā)工具和編譯器。ISO/SAE21434認證進一步增強了Green Hills在為汽車OEM及其供應商提供關鍵安全能力方面的優(yōu)勢?!白鳛閾碛袕V泛的安全性和安全性認證軟件解決方案組合的汽車市場嵌入式軟件重要推動者,GreenHills非常高興能通過這項業(yè)界首例ISO/SAE21434網(wǎng)絡安全認證擴展我們的產(chǎn)品線,”GreenHills Software業(yè)務發(fā)展副總裁Dan Mender說。“該認證表明,GreenHills具備有利條件,能夠支持汽車OEM及其供應商在其產(chǎn)品和過程中實現(xiàn)這一全球采納的網(wǎng)絡安全標準?!比缧韪嘈畔ⅲ埪?lián)系億道電子:021-62650520,了解GreenHills如何幫助您的公司滿足ISO/SAE21434要求。本文翻譯自GHS官方網(wǎng)站+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++關于億道電子上海億道電子技術有限公司是國內(nèi)資深的研發(fā)工具軟件提供商,公司成立于2009年,面向中國廣大的制造業(yè)客戶提供研發(fā)、設計、管理過程中使用的各種軟件開發(fā)工具,致力于幫助客戶提高研發(fā)管理效率、縮短產(chǎn)品設計周期,提升產(chǎn)品可靠性。十多年來,先后與ARM、Altium、Ansys、QT、Green Hills、Minitab、EPLAN、QA Systems、OpenText、Visu-IT、HighTec、PLS、Ashling、MSC Software、Autodesk、Source Insight、IncrediBuild、Lauterbach、Adobe、Testplant、TeamEDA等多家全球知名公司建立戰(zhàn)略合作伙伴關系,并作為他們在中國區(qū)的主要分銷合作伙伴服務了數(shù)千家中國本土客戶,為客戶提供從芯片級開發(fā)工具、EDA設計工具、軟件編譯以及測試工具、結構設計工具、仿真工具、電氣設計工具、以及嵌入式GUI工具等等。億道電子憑借多年的經(jīng)驗積累,真正的幫助客戶實現(xiàn)了讓研發(fā)更簡單、更可靠、更高效的目標。歡迎關注“億道電子”公眾號了解更多研發(fā)工具軟件知識
查看更多→
Qt開發(fā)框架的多語言文檔
2024-11-07
本文翻譯自:Translations of Qt framework documentation原文作者: Topi Reini?隨著Qt 6.8 LTS版本的發(fā)布,位于https://doc.qt.io/qt-6/的Qt開發(fā)框架文檔現(xiàn)在已被機器翻譯為另外五種語言:中文(簡體)、日文、韓文、德文和法文。您可以從globe圖標下的下拉列表中選擇語言這些文件是使用DeepL翻譯服務創(chuàng)建的。由于它們是機器翻譯的,因此可能存在一些不準確或翻譯錯誤的術語,尤其是在 API 參考文檔中。雖然我們可能無法確保將一個句子翻譯成所有目標語言,但我們將繼續(xù)改進這一過程。如果您發(fā)現(xiàn)任何影響所有翻譯語言的問題,請告知我們!請使用文檔網(wǎng)站上的反饋鏈接,或創(chuàng)建錯誤報告(請使用英文提交)我們希望這些翻譯文檔對您有所幫助!本文轉載自"Qt軟件”+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++關于億道電子上海億道電子技術有限公司是國內(nèi)資深的研發(fā)工具軟件提供商,公司成立于2009年,面向中國廣大的制造業(yè)客戶提供研發(fā)、設計、管理過程中使用的各種軟件開發(fā)工具,致力于幫助客戶提高研發(fā)管理效率、縮短產(chǎn)品設計周期,提升產(chǎn)品可靠性。十多年來,先后與ARM、Altium、Ansys、QT、Green Hills、Minitab、EPLAN、QA Systems、OpenText、Visu-IT、HighTec、PLS、Ashling、MSC Software、Autodesk、Source Insight、IncrediBuild、Lauterbach、Adobe、Testplant、TeamEDA等多家全球知名公司建立戰(zhàn)略合作伙伴關系,并作為他們在中國區(qū)的主要分銷合作伙伴服務了數(shù)千家中國本土客戶,為客戶提供從芯片級開發(fā)工具、EDA設計工具、軟件編譯以及測試工具、結構設計工具、仿真工具、電氣設計工具、以及嵌入式GUI工具等等。億道電子憑借多年的經(jīng)驗積累,真正的幫助客戶實現(xiàn)了讓研發(fā)更簡單、更可靠、更高效的目標。歡迎關注“億道電子”公眾號了解更多研發(fā)工具軟件知識
查看更多→
Qt 6.8 LTS發(fā)布!
2024-10-18
我們非常高興地宣布Qt 6.8現(xiàn)已發(fā)布,該版本支持新的桌面、移動和嵌入式平臺,獲得數(shù)百項改進以及令人興奮的新功能,可提升您的開發(fā)體驗并滿足苛刻應用程序的需求。在此版本中,我們專注于改進和穩(wěn)定現(xiàn)有功能。自Qt 6.7以來,我們已修復了500多個錯誤并提升了性能,您的現(xiàn)有代碼無需改動即可更好地運行。在macOS上,Qt Quick應用程序現(xiàn)在可與原生菜單欄集成,要獲得Windows 11的原生外觀,可以使用新的Fluent風格。使用Qt 6.8,Quick窗口的大小調整在macOS上變得更快,而在Windows上,通過將默認字體數(shù)據(jù)庫更改為DirectWrite,應用程序的啟動時間也得到了改善。技術預覽版中的幾個模塊已經(jīng)完善:Qt Graphs、Qt HttpServer和Qt GRPC在此版本中將得到全面支持。感謝用戶的反饋,我們得以在這些模塊初次作為技術預覽引入后,進行大量改進并最終完成這些模塊。對于商業(yè)用戶,Qt 6.8提供長周期支持,隨著該版本的發(fā)布,我們將支持和維護時間從3年延長至5年。此外,我們通過提供 SPDX v2.3 格式的 Qt 庫軟件材料清單 (SBOM) 文檔,為軟件產(chǎn)品的創(chuàng)建者提供支持,使其符合歐盟即將出臺的《網(wǎng)絡彈性法案》(Cyber-Resilience Act)規(guī)定,并提供提高軟件安全性所需的信息。部署到新平臺、架構和設備上通過升級到Qt 6.8,您可以使現(xiàn)有的移動應用程序適用于運行iOS 18或Android 14的用戶。現(xiàn)在完全支持在Arm上開發(fā)Windows應用程序,使用戶能夠針對今年新推出的Microsoft CoPilot+ PC進行開發(fā)。您的桌面應用程序可以部署到 macOS 15和Arm架構的Linux桌面。這樣,Qt對Arm架構的支持就涵蓋了從嵌入式到移動和桌面端的所有設備類別。作為一個全新的設備類別,您現(xiàn)在可以為Apple Vision Pro和Meta Quest 3 XR頭顯創(chuàng)建應用程序和用戶體驗。對于設備創(chuàng)建者,我們增加了對Raspberry Pi 5和NVIDIA AGX Orin的支持,以及對恩智浦(NXP)、韜睿(Toradex)和意法半導體(STM)等技術合作伙伴的SoC系列的支持。隨著StarFive VisionFive 2的加入,Qt 6.8支持基于日益流行的新型RISC-V平臺的單板計算機。構建更小、更精簡的Qt應用程序利用Qt 6.8的 "配置選項",開發(fā)者可以微調Qt的性能和效率,從而精確地滿足其應用程序的特定需求。通過移除Qt框架中未使用的功能和組件,應用程序可減少多達77%的ROM使用量,降低32% 的RAM消耗,并顯著加快啟動速度。請閱讀我們關于減少咖啡機示例二進制文件大小的指南,以及關于構建優(yōu)化Qt的文檔,了解更多信息。Qt Graphs:全面支持3D數(shù)據(jù)可視化Qt 6.8現(xiàn)在全面支持Qt Graphs,為開發(fā)者創(chuàng)建交互式動態(tài)2D和3D可視化提供了強大的工具包。無論您是在進行科學模擬、金融圖表還是實時數(shù)據(jù)分析,Qt Graphs都能提供所需的渲染功能和性能優(yōu)化,讓您的數(shù)據(jù)栩栩如生。Qt Graphs 3D現(xiàn)在支持Bars3D中的透明度,并可對標簽邊距、標題位置和網(wǎng)格線渲染進行更多控制。Qt Graphs 2D可以使用QML組件渲染自定義條形圖,支持堆疊和百分比堆疊條形圖,可以在條形圖上顯示標簽,在坐標軸上顯示標題,并擁有更多的數(shù)據(jù)映射API。我們統(tǒng)一了2D和3D圖形的主題API,并將Qt Widgets的特定API移到了單獨的Qt Graphs Widgets模塊中,因此純Qt Quick應用程序不再需要鏈接Qt Widgets。有關我們在Qt Graphs技術預覽版期間對其所做更改的更多詳情,請參閱Sami 的博文。希望從Qt Charts或Qt DataVisualization遷移的用戶可在我們的文檔中找到遷移指南。Qt Multimedia:自定義數(shù)據(jù)和音頻后處理Qt Multimedia一直是構建富媒體應用程序的基石,在Qt 6.8中,我們使其變得更加出色。通過QVideoFrameInput、QAbstractVideoBuffer和QAudioBufferInput,應用程序可以將自定義媒體數(shù)據(jù)發(fā)送到錄制會話中;通過QAudioBufferOutput,可以接收解碼后的音頻數(shù)據(jù)以進行后處理。在Linux桌面上,QScreenCapture現(xiàn)在支持 Wayland合成器,通過XDG Desktop Portal使用ScreenCast服務。Qt Quick:更多特效和可縮放矢量圖形Qt Quick仍然是構建快速流暢用戶界面的首選模塊。在Qt 6.8中,我們進行了多項性能優(yōu)化,以提高渲染速度,尤其是復雜場景的渲染速度。Qt Quick Effect Maker學會了發(fā)光和遮罩模糊,可以制作精靈動畫,并將項目彎曲成圓形或弧形。這意味著在資源密集型應用程序中,動畫更流暢,響應速度更快。該版本新增的一個重要功能是Qt Quick Vector Image模塊,它能將SVG文件作為可縮放矢量圖形無縫集成到Qt Quick場景中。對于希望創(chuàng)建分辨率獨立和響應靈敏UI元素的開發(fā)者來說,這是一個理想選擇,可確保您的設計在不同設備和屏幕尺寸上都能保持清晰一致。在Qt Quick Shapes模塊中,ShapePath元素現(xiàn)在可以使用任意紋理提供項目來填充形狀,并應用任意變換。5 有關Qt 6.8中矢量圖形改進的更多信息,請參閱Eskil的博文。QQuickRenderTarget獲得了新的API,為開發(fā)者提供了對紋理處理的更多控制,并簡化了Qt Quick 3D與外部引擎、框架和API的集成。TableView現(xiàn)在允許開發(fā)者和最終用戶移動列和行,Image和BorderImage類型可以在異步加載新設置的圖像之前保留先前的圖像。Qt Quick Control:更好地集成到桌面Qt 6.8添加了Fluent WinUI3設計系統(tǒng)的實現(xiàn),作為Qt Quick Control樣式。這種新樣式使應用程序在Windows 11上看起來更像原生應用,但它是使用Qt Quick基元實現(xiàn)的,并可用于所有平臺。在macOS上,QuickMenuBar和菜單默認與系統(tǒng)的原生菜單欄集成。上下文菜單和其他彈出窗口也可以作為頂級彈出窗口,現(xiàn)在這已成為桌面平臺上Qt Quick對話框的默認行為。應用程序可以使用新的popupType屬性來控制每個彈出窗口。5 新的XR模塊:提供沉浸式體驗隨著虛擬現(xiàn)實、增強現(xiàn)實和混合現(xiàn)實應用的重要性與日俱增,我們很高興在Qt 6.8中推出一個專門支持XR設備的新模塊。新的Qt Quick 3D Xr模塊使開發(fā)者能夠更輕松地為虛擬現(xiàn)實(VR)和增強現(xiàn)實(AR)平臺構建身臨其境的體驗,確保Qt始終是應用程序開發(fā)者的首選,無論目標設備是什么。新模塊通過手部跟蹤和控制器實現(xiàn)了對空間輸入以及空間錨點和移動的支持。這樣,用戶在使用Apple VisionPro或Meta Quest 2和3等OpenXR 設備時,就可以與Qt Quick 3D構建的環(huán)境進行交互。為了優(yōu)化頭戴式顯示器的渲染性能,我們在Qt Quick場景圖、標準Quick項目和材質以及Qt Shader Tools構建系統(tǒng)集成中完成了對多視角渲染的支持。Qt Quick 3D:改進的陰影和材質增強功能Qt Quick 3D 6.8通過使用級聯(lián)陰影貼圖和百分比更接近過濾軟陰影來渲染更好的陰影。技術美術師可以通過PrincipledMaterial的新屬性調整Fresnel,并根據(jù)頂點顏色屬性應用蒙版。自定義材質現(xiàn)在支持與PrincipledMaterial相同的屬性。網(wǎng)絡功能: Qt Network、Qt Network Auth、Qt GRPC和Qt HttpServerQNetworkAccessManager現(xiàn)在可通過本地套接字發(fā)送HTTP請求,應用程序可使用QFormDataBuilder輕松創(chuàng)建多部分HTTP消息。在Qt Network Auth模塊中,我們根據(jù)用戶反饋進行了許多改進并解決了許多問題。此外,新的QOAuthUriSchemeReplyHandler類允許處理私有/自定義或 https URI方案重定向,QOAuth2AuthorizationCodeFlow類支持密鑰代碼交換證明。QDnsLookup了解了TLS關聯(lián)記錄,現(xiàn)在可以通過TLS發(fā)送 DNS,并告知客戶端DNS服務器是否已對數(shù)據(jù)的真實性進行了驗證??蛻舳爽F(xiàn)在已完全支持Qt GRPC和Qt Protobuf模塊,其API已趨于穩(wěn)定,并增加了對流媒體的支持??缒K的其他增強功能除上述主要新增功能外,我們還對整個框架進行了一系列增強,以進一步簡化開發(fā)。有關所有功能的完整列表,請查看我們的Qt 6.8新特性文檔頁面。Qt Core新的QChronoTimer與std::chrono集成,提高了基于時間的操作的精確度。在常用代碼路徑中,QString、QByteArray和QList現(xiàn)在可以調整大小而無需數(shù)據(jù)初始化。QHash現(xiàn)在支持某些Qt類型的異構查找,特別是QString和QStringView,而QDirListing則為目錄條目提供了基于迭代器的API:針對Android平臺的開發(fā)者可以使用QtJniTypes命名空間聲明帶有JNI簽名的Java 類型,并在通過QJniObject與JNI交互時依賴編譯時簽名生成。QJniArray類型可讓您輕松地從C++代碼中使用 Java數(shù)組。我們還繼續(xù)為Qt值類型添加對C++20 space-ship運算符<=>()的支持,QPointF和QMarginsF等浮點幾何類型現(xiàn)在支持模糊比較和空值檢查。Qt GUI使用Qt 6.8開發(fā)的應用程序現(xiàn)在可以顯式請求顏色方案,以顯式的深色或淺色外觀覆蓋系統(tǒng)設置:應用程序還可以覆蓋上下文菜單觸發(fā)器,以提供跨平臺的一致應用程序行為。我們對色彩空間支持做了一些補充,并增加了更多的API,以便對字體的合并和樣式策略進行精細控制。輔助功能框架現(xiàn)在支持屬性報告,并允許應用程序引發(fā)公告事件,供輔助技術使用。Qt SQLQt SQL模塊的用戶現(xiàn)在可以指定數(shù)值精度策略,QSqlDatabase可以更改數(shù)據(jù)庫連接的線程親和性。PostgreSQL和 MySQL/MariaDB驅動程序現(xiàn)在可以在服務器與客戶端位于不同時區(qū)時正確處理日期和時間數(shù)據(jù)。Qt Test測試作者現(xiàn)在可以讓失敗或跳過的測試拋出異常,從而更容易編寫使用子例程的測試。超時宏現(xiàn)在可接受std::chrono字面量,從而使測試代碼更具可讀性。Qt WebEngine新的QWebEngineFrame類添加了特定于框架的API,例如在特定框架上打印或運行JavaScript。QWebEngineClientHints可讓應用程序能夠更好地控制瀏覽器標識,而QWebEnginePermission則可輕松管理新舊網(wǎng)站權限。Qt Widget我們對高DPI顯示器的渲染代碼進行了多項改進,使基于Widget的應用程序在所有屏幕類型上都能清晰顯示。工具我們的文檔生成器QDoc與 Clang互連,現(xiàn)在要求最低Clang 17。它已從基于C的 API 轉向基于C++的API。這提高了我們在QDoc中實現(xiàn)對新C++語言特性支持的能力。此外,QDoc還擴展了一系列新命令。具體細節(jié)請查看發(fā)布說明。QML Language Server現(xiàn)在提供語義語法高亮顯示,改進了對JavaScript語言的支持,可為Quick類型生成片段,并提供文檔提示。立即升級有了這些強大的新功能和性能改進,Qt 6.8將繼續(xù)賦能開發(fā)者在各種平臺上構建響應迅速、視覺上引人入勝和媒體豐富的應用程序。我要感謝所有幫助實現(xiàn)Qt 6.8的貢獻者。您可以在發(fā)布說明的末尾找到為Qt源代碼提供補丁的所有社區(qū)成員的完整列表。特別感謝所有通過報告錯誤、向我們提供反饋和貢獻,或告訴我們您使用案例來幫助 改進Qt的各位。最后但同樣重要的是,我要感謝所有參與發(fā)布的人員!我們迫不及待地想看到您如何利用最新版本的Qt創(chuàng)建下一代應用程序。立即升級到Qt 6.8,讓您的項目更上一層樓!本文轉自公眾號“Qt軟件”+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++關于億道電子上海億道電子技術有限公司是國內(nèi)資深的研發(fā)工具軟件提供商,公司成立于2009年,面向中國廣大的制造業(yè)客戶提供研發(fā)、設計、管理過程中使用的各種軟件開發(fā)工具,致力于幫助客戶提高研發(fā)管理效率、縮短產(chǎn)品設計周期,提升產(chǎn)品可靠性。十多年來,先后與ARM、Altium、Ansys、QT、Green Hills、Minitab、EPLAN、QA Systems、OpenText、Visu-IT、HighTec、PLS、Ashling、MSC Software、Autodesk、Source Insight、IncrediBuild、Lauterbach、Adobe、Testplant、TeamEDA等多家全球知名公司建立戰(zhàn)略合作伙伴關系,并作為他們在中國區(qū)的主要分銷合作伙伴服務了數(shù)千家中國本土客戶,為客戶提供從芯片級開發(fā)工具、EDA設計工具、軟件編譯以及測試工具、結構設計工具、仿真工具、電氣設計工具、以及嵌入式GUI工具等等。億道電子憑借多年的經(jīng)驗積累,真正的幫助客戶實現(xiàn)了讓研發(fā)更簡單、更可靠、更高效的目標。歡迎關注“億道電子”公眾號了解更多研發(fā)工具軟件知識
查看更多→
Klocwork 2024.2中的新功能
2024-08-13
Klocwork 2024.2中的新功能Klocwork 2024.2為現(xiàn)代 C/C++ 分析引擎引入了顯著的準確性和性能改進。此版本還包括增強的安全性和身份驗證功能、改進的用戶體驗、MISRA?和CERT規(guī)則集的改進、Java語言增強,以及Kotlin的新CWE映射。C/C++分析引擎Klocwork 2024.2引入了獨立運行現(xiàn)代分析引擎的選項,為現(xiàn)代C和C++代碼結構帶來了顯著的性能改進和擴展的語言特性支持。。“現(xiàn)代模式”功能為C++17及更新語言版本提供更廣泛的代碼覆蓋率和缺陷檢測。降低假陽性率和假陰性率。對選定項目分析速度提高可達25%。注意:由于分析覆蓋范圍和理解的增加,“現(xiàn)代模式”可能會而導致結果發(fā)生更顯著的變化。*(基于內(nèi)部基準測試的OSS開放源碼軟件項目)新的Validate平臺身份驗證改進使用SAML和OIDC身份驗證增強安全性您現(xiàn)在可以使用安全斷言標記語言(SAML)或OpenID Connect (OIDC)身份驗證將您的身份提供者與Validate集成,從而享受以下優(yōu)勢:通過集中身份驗證增強安全性。通過單點登錄(SSO)簡化用戶管理和體驗。經(jīng)過Validate測試的身份提供者包括:SAML:Keycloak、Okta、AWS、Cisco、GitHub。OIDC:Keycloak、Google、Microsoft Entra(以前稱為Azure AD)、AWS。在Validate中驗證和管理用戶會話和應用程序令牌現(xiàn)在您可以在Validate中創(chuàng)建應用程序令牌,以通過SAML或OIDC支持的服務器安全地進行以下任務的身份驗證:使用kwauth或validate auth登錄命令行工具。從Validate或Web API導入項目。管理員現(xiàn)在可以通過Validate管理各個用戶會話,通過注銷用戶的Validate會話來控制用戶。其他改進包括增強了在Validate中使用基本身份驗證時的密碼安全性。Java分析引擎在kwandroid中使用-ignore files選項,無需修改構建規(guī)范即可專注于一組選定的Java文件進行分析。Klocwork實用程序增強現(xiàn)在可以通過設置KW_JAVA環(huán)境變量指定Klocwork工具應使用的Java虛擬機(JVM),從而提供更大的靈活性和與不同Java環(huán)境的兼容性。為了簡化在自動化環(huán)境中部署Klocwork分析工具,持續(xù)集成工具現(xiàn)在包含在構建工具包中。MISRA? C和C++通過Klocwork改進的MISRA C和MISRA C++分類法來強制執(zhí)行MISRA合規(guī)性。以規(guī)則優(yōu)先的方式進行分類。檢查器現(xiàn)在是分類法中規(guī)則的子類別。編碼標準Klocwork 2024.2的新增和擴展編碼標準覆蓋范圍和分類法:適用于Kotlin的CWE定義提高產(chǎn)品質量IDE插件和擴展引入了新的Validate身份驗證,允許您使用經(jīng)典身份驗證、SAML或OIDC身份驗證連接到任何插件中的項目流。編譯器支持對以下編譯器的新增或改進支持:ClangClang-clGCCIARRenesasKlocwork 2024.2中的重要更改許可證管理變更自2023.4版本起,Klocwork工具現(xiàn)在使用Reprise License Manager(RLM)v15.1BL2。升級后的RLM v15.1BL2服務器包含在Klocwork 2023.4+安裝中。任何較早版本的RLM服務器需要升級到此版本才能與Klocwork 2023.4及更高版本配合使用。FLEXlm/FlexNet Publisher的支持在2022.2版本中已棄用,從Klocwork 2023.1+版本起將不再兼容。2023年許可證與Klocwork 2024.1或更新版本不兼容。要使用產(chǎn)品的最新版本,請聯(lián)系Perforce(license@perforce.com)獲取新許可證。Klocwork 2022版本結束維護所有Klocwork 2022版本的維護已于2024年3月31日結束。此外,維護結束(EOM)日期和銷售結束(EOS)日期也在2024年3月31日。有關任何Klocwork版本的支持可用性的信息,請參閱Klocwork產(chǎn)品生命周期。舊版幫助網(wǎng)站生命周期終止從2024年1月起,Klocwork已關閉了2022年前版本的舊版幫助網(wǎng)站(https://docs.roguewave.com/)。請使用新的幫助網(wǎng)站(https://help.klocwork.com/)獲取所有文檔需求。2021.x及更早版本的文檔需要使用發(fā)布包中提供的離線內(nèi)容進行訪問。棄用NIS訪問控制如果使用NIS訪問控制,在從早期版本遷移到2024.2時,必須切換到其他身份驗證方法。建議在遷移前切換到替代方法,以確保升級后用戶可以繼續(xù)登錄。停止使用Jenkins插件從Klocwork 2024.2開始,Jenkins插件已從Klocwork中移除,并且不再提供安裝包。刪除Validate代碼審查從Klocwork 2024.2開始,代碼審查功能及其相關命令行工具已從Validate中刪除。預告CentOS Linux 7和RHEL 7的終止支持 - Klocwork 2024.3從Klocwork 2024.3開始,將不再支持CentOS Linux 7和RHEL 7。CentOS Linux 7已到達生命周期終點,而RHEL 7的維護也于2024年6月30日結束。NIS訪問控制的停用從Klocwork 2024.3開始,將不再支持NIS訪問控制。部分功能可能會在2024.2版本中受到影響。+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++關于億道電子上海億道電子技術有限公司是國內(nèi)資深的研發(fā)工具軟件提供商,公司成立于2009年,面向中國廣大的制造業(yè)客戶提供研發(fā)、設計、管理過程中使用的各種軟件開發(fā)工具,致力于幫助客戶提高研發(fā)管理效率、縮短產(chǎn)品設計周期,提升產(chǎn)品可靠性。十多年來,先后與ARM、Altium、Ansys、QT、Green Hills、Minitab、EPLAN、QA Systems、OpenText、Visu-IT、HighTec、PLS、Ashling、MSC Software、Autodesk、Source Insight、IncrediBuild、Lauterbach、Adobe、Testplant、TeamEDA等多家全球知名公司建立戰(zhàn)略合作伙伴關系,并作為他們在中國區(qū)的主要分銷合作伙伴服務了數(shù)千家中國本土客戶,為客戶提供從芯片級開發(fā)工具、EDA設計工具、軟件編譯以及測試工具、結構設計工具、仿真工具、電氣設計工具、以及嵌入式GUI工具等等。億道電子憑借多年的經(jīng)驗積累,真正的幫助客戶實現(xiàn)了讓研發(fā)更簡單、更可靠、更高效的目標。歡迎關注“億道電子”公眾號了解更多研發(fā)工具軟件知識
查看更多→