久久亚洲成a人片熟女精品色一区二区三区|国产精品视频第一精品视频|av天堂热无码手机版|亚洲?v无码久久无遮挡|国产精品偷伦视频免费观看国产|麻豆国产自产精品丰满熟妇|av无码av不卡一区二区|久久亚洲精品中文字

ARTICLE DETAIL

資訊詳情

深耕商務(wù)建站與企業(yè)官網(wǎng)運營的一線實戰(zhàn)洞察。

KLayout macOS 源碼構(gòu)建完全指南:build4mac.py 從模塊組合、編譯部署到 QA 測試與 DMG 打包

KLayout macOS 源碼構(gòu)建完全指南:build4mac.py 從模塊組合、編譯部署到 QA 測試與 DMG 打包 硬件開發(fā)桌面應(yīng)用圖形學(xué)【免費下載鏈接】klayoutKLayout Main Sources項目地址https://gitcode.com/gh_mirrors/kl/klayout點擊查看免費下載本文以 KLayout 倉庫中macbuild目錄的官方構(gòu)建說明 macbuild/ReadMe.md 為主體完整覆蓋 KLayout 0.30.9 在 macOS 上的源碼構(gòu)建全流程如何選擇 Qt5/Qt6 與 Ruby/Python 模塊組合、如何調(diào)用build4mac.py完成編譯與部署、如何用macQAT.py運行ut_runner單元 QA 測試、以及如何用makeDMG4mac.py制作可分發(fā)的 DMG 安裝包。讀完本文你能夠在一臺 Intel x86_64 或 Apple Silicon 的 Mac 上獨立復(fù)現(xiàn) KLayout 的 macOS 原生構(gòu)建并理解輸出包目錄命名ST-/LW-/HW-/EX-背后的源碼級邏輯。1. 適用系統(tǒng)與構(gòu)建目標macbuild目錄包含構(gòu)建 KLayout適用版本 0.30.9 及以上所需的全部 macOS 構(gòu)建文件。根據(jù) macbuild/ReadMe.md 的說明當前支持的 macOS 版本為macOS 版本狀態(tài)Golden Gate (27.x)實驗性在 M4 Mac Mini 上驗證Tahoe (26.x)實驗性在 M4 Mac Mini 上驗證Sequoia (15.x)主開發(fā)環(huán)境Sonoma (14.x)實驗性對更早的操作系統(tǒng)Ventura 13.7.8、Monterey 12.7.6、Big Sur 11.7.10、Catalina 10.15.7、Mojave 10.14、High Sierra 10.13、Sierra 10.12、El Capitan 10.11的構(gòu)建支持已經(jīng)停止也不再提供預(yù)構(gòu)建的 DMG 包。原文檔說明這些舊系統(tǒng)中 Ventura 與 Monterey 上構(gòu)建理論上仍可能成功但已不屬于官方維護范圍。這一點可以從源碼得到印證macbuild/build4mac.py 中的Get_Default_Config()通過platform.uname()解析 OS 主版本號并映射為平臺名27→GoldenGate、25→Tahoe、24→Sequoia、23→Sonoma、22→Ventura、21→Monterey而對非Darwin系統(tǒng)或未列出的發(fā)行版會直接打印錯誤并sys.exit(1)。需要特別注意的架構(gòu)限制從源碼結(jié)構(gòu)看macbuild/build4mac.py 要求機器為x86_64若檢測到arm64Apple Silicon且平臺在支持列表中則會設(shè)置環(huán)境變量QMAKE_APPLE_DEVICE_ARCHSarm64以構(gòu)建原生 ARM64 版本。原文檔指出其主線目標機器是Intel x86_64 macOS SequoiaApple Silicon 環(huán)境的詳細構(gòu)建流程雖然與 Intel Mac 基本相同但文檔未單獨展開。2. Qt 框架的選擇KLayout 的 macOS 構(gòu)建依賴 Qt 圖形框架。原文檔給出的三種來源默認MacPorts 的 Qt5通常位于/opt/local/libexec/qt5/Homebrew 的 Qt6通常位于/usr/local/opt/qt6/Apple Silicon 上為/opt/homebrew/opt/qt6/Anaconda3 的 Qt6安裝配置稍復(fù)雜見第 7 節(jié) 6F 用例。macbuild/build4mac_env.py 是這些模塊路徑的集中定義文件。它為每個 Qt 來源定義了qmake、macdeployqt與libdir三個關(guān)鍵路徑例如Qt5MacPorts { qmake : /opt/local/libexec/qt5/bin/qmake, deploy: /opt/local/libexec/qt5/bin/macdeployqt, libdir: /opt/local/libexec/qt5/lib } Qt6Brew { qmake : %s/opt/qt6/bin/qmake % DefaultHomebrewRoot, deploy: %s/opt/qt6/bin/macdeployqt % DefaultHomebrewRoot, libdir: %s/opt/qt6/lib % DefaultHomebrewRoot }其中 Homebrew 根目錄按架構(gòu)自動區(qū)分x86_64機器取/usr/localarm64機器取/opt/homebrew見 macbuild/build4mac_env.py。對于 Anaconda3Qt5/Qt6 分別安裝在虛擬環(huán)境klayout-qt5/klayout-qt6下x86_64 位于/Applications/anaconda3/envs/arm64 位于/opt/anaconda3/envs/Qt6 環(huán)境使用qmake6與macdeployqt6可執(zhí)行文件。原文檔還給出兩點重要提示Qt6 遷移仍在進行中可用但可能遇到構(gòu)建或運行時錯誤構(gòu)建 KLayout 0.29.0 且使用 Homebrew 環(huán)境時必須使用 Qt6 6.7.0以解決上游報告的一個 Qt5 編譯問題原文檔引用了上游 issue #1599。3. 腳本語言支持Ruby 與 Python 的模塊組合KLayout 支持 Ruby 與 Python 兩種對象腳本語言構(gòu)建時通過build4mac.py的組合參數(shù)決定綁定哪種語言、以及語言解釋器來自哪個軟件包管理器。macbuild/build4mac_env.py 按以下維度組織字典Rubynil不綁定/Sys各 macOS 版本系統(tǒng)自帶的 Ruby 2.6解釋器位于/System/Library/Frameworks/Ruby.framework/Versions/2.6/usr/bin/ruby頭文件與libruby.tbd取自 Xcode SDK 或 Command Line Tools SDK/MP34MacPorts Ruby 3.4/opt/local/bin/ruby3.4/HB34Homebrew Ruby 3.4{Homebrew 根}/opt/ruby3.4/Ana3Anaconda3 環(huán)境內(nèi)的 Ruby 3.4Pythonnil/Sys系統(tǒng) Command Line Tools 自帶的 Python 3.9框架位于/Library/Developer/CommandLineTools/Library/Frameworks/Python3.framework//MP314、MP313MacPorts Python 3.14/3.13位于/opt/local/Library/Frameworks/Python.framework//HB314、HB313、HB311Homebrew 對應(yīng)版本/HBAuto自動探測 Homebrew 中最新的 Python 3.x/Ana3Anaconda3 環(huán)境內(nèi) Python。其中HBAuto的實現(xiàn)值得注意macbuild/build4mac_env.py 用正則掃描{Homebrew 根}/opt/python*/Frameworks/Python.framework按版本號排序取最大者若系統(tǒng)完全沒有 Homebrew Python會打印 WARNING 并禁用該選項。每個模塊字典統(tǒng)一包含exe解釋器、inc頭文件目錄、lib動態(tài)庫三項供后續(xù) qmake/make 階段生成正確的編譯鏈接參數(shù)。4. 構(gòu)建前置條件按照原文檔第 4 節(jié)構(gòu)建前需要準備與目標 macOS 匹配的最新 Xcode 與 Command Line ToolsMacPorts 的 Qt5或 Homebrew / Anaconda3 的 Qt6來自 MacPorts、Homebrew 或 Anaconda3 的libgit2可選MacPorts、Homebrew 或 Anaconda3 的 Ruby 與 Python 包。對于 Ruby/Python 的具體版本匹配要求原文檔要求參考 macbuild/build4mac_env.py 中各字典項注釋里列出的安裝命令如sudo port install ruby34、brew install python3.14、conda install -y --override-channels -c conda-forge ruby3.4.7等。5. build4mac.py 命令行選項詳解macbuild/build4mac.py 是 macOS 構(gòu)建的頂層 Python 腳本操作系統(tǒng)類型會被自動檢測-q選項的默認值按平臺生成GoldenGate/Tahoe/Sequoia/Sonoma 上默認組合為qt5macportssyssys。完整選項表如下繼承自原文檔第 5 節(jié) Usage of build4mac.py for building KLayout 0.30.9 or later on different Apple macOS platforms. $ [python] ./build4mac.py option argument : descriptions (refer to macbuild/build4mac_env.py for details) | default value ------------------------------------------------------------------------------------------------------- [-q|--qt type] : case-insensitive type[Qt5MacPorts, Qt5Brew, Qt5Ana3, | qt5macports : Qt6MacPorts, Qt6Brew, Qt6Ana3] | : Qt5MacPorts: use Qt5 from MacPorts | : Qt5Brew: use Qt5 from Homebrew | : Qt5Ana3: use Qt5 from Anaconda3 | : Qt6MacPorts: use Qt6 from MacPorts (*) | : Qt6Brew: use Qt6 from Homebrew (*) | : Qt6Ana3: use Qt6 from Anaconda3 (*) | : (*) migration to Qt6 is ongoing | [-r|--ruby type] : case-insensitive type[nil, Sys, MP34, HB34, Ana3] | sys : nil: dont bind Ruby | : Sys: use [GoldenGate|Tahoe|Sequoia|Sonoma]-bundled Ruby 2.6 | : MP34: use Ruby 3.4 from MacPorts | : HB34: use Ruby 3.4 from Homebrew | : Ana3: use Ruby 3.4 from Anaconda3 | [-p|--python type] : case-insensitive type[nil, Sys, MP314, HB314, Ana3, | sys : MP313, HB313, | : HB311, HBAuto] | : nil: dont bind Python | : Sys: use [GoldenGate|Tahoe|Sequoia|Sonoma]-bundled Python 3.9 | : MP314: use Python 3.14 from MacPorts | : HB314: use Python 3.14 from Homebrew | : Ana3: use Python 3.14 from Anaconda3 | : MP313: use Python 3.13 from MacPorts | : HB313: use Python 3.13 from Homebrew | : HB311: use Python 3.11 from Homebrew () | : () required to provide the legacy pip in HW-*.dmg | : HBAuto: use the latest Python 3.x auto-detected from Homebrew | [-P|--buildPymod] : build and deploy Pymod (*.whl) for LW-*.dmg | disabled [-n|--noqtbinding] : dont create Qt bindings for ruby scripts | disabled [-u|--noqtuitools] : dont include uitools in Qt binding | disabled [-s|--no32bitcoord] : dont use short (32bit) coordinates; use long (64bit) instead | disabled [-g|--nolibgit2] : dont include libgit2 for Git package support | disabled [-m|--make option] : option passed to make | --jobs4 [-d|--debug] : enable debug mode build; AddressSanitizer (ASAN) is linked | disabled [-c|--checkcom] : check command-line and exit without building | disabled [-y|--deploy] : deploy executables and dylibs, including Qts Frameworks | disabled [-Y|--DEPLOY] : deploy executables and dylibs for those who built KLayout | disabled : from the source code and use the tools in the same machine | : ! After confirmation of the successful build of klayout.app, | : rerun this script with BOTH: | : 1) the same options used for building AND | : 2) -y|--deploy OR -Y|--DEPLOY | : optionally with [-v|--verbose 0-3] | [-v|--verbose 0-3] : verbose level of macdeployqt (effective with -y only) | 1 : 0 no output, 1 error/warning (default), | : 2 normal, 3 debug | [-?|--?] : print this usage and exit; in zsh, quote like -? or --? | disabled結(jié)合源碼可以補充幾點文檔未展開的實現(xiàn)細節(jié)選項解析-q/-r/-p的值經(jīng)大寫化后在候選字典中查找大小寫不敏感非法取值會打印錯誤并終止見 macbuild/build4mac.py。-y與-Y互斥兩者同時傳入會報錯退出-yfull deploy會內(nèi)嵌 Qt及視組合內(nèi)嵌 PythonFramework-Ypartial deploy只部署可執(zhí)行文件與 dylib不內(nèi)嵌 Qt[5|6]/Ruby/Python因此適用于在本機源碼構(gòu)建、本機直接使用的場景。版本號來源KLayout 版本從項目根目錄的version.sh讀取見 macbuild/build4mac.py 的GetKLayoutVersionFrom(./version.sh)最終參與包目錄命名。-m選項默認--jobs4直接透傳給make-d開啟 debug 模式并鏈接 AddressSanitizer。輸出包目錄命名規(guī)則源碼級解釋構(gòu)建/部署完成后產(chǎn)物位于一個形如ST-qt5MP.pkg.macos-Sequoia-C32-release-RsysPsys的目錄。目錄名由 macbuild/build4mac.py 按模板%s%s.pkg.macos-%s-%s-%s-%s % (PackagePrefix, qt, Platform, coordSize, mode, ruby_python)生成各段含義目錄名片段含義ST-標準包standard內(nèi)嵌 Qt使用系統(tǒng)自帶 Ruby 2.6 與 Python 3.9LW-輕量包lightweight不內(nèi)嵌 Qt[5|6]、Ruby、Python可加--buildPymod附帶*.whlHW-重量包heavyweight內(nèi)嵌 Qt 與 Homebrew Python 3.11 的 FrameworksEX-特殊組合exceptional不落入上述三類的模塊組合qt5MP/qt5Brew/qt5Ana3/qt6MP/qt6Brew/qt6Ana3所用 Qt 來源Sequoia等macOS 平臺名C32/C64坐標表示為 32 位整數(shù)默認/ 64 位整數(shù)-s選項release/debug構(gòu)建模式-d選項RsysPsys等Ruby 與 Python 模塊標識如Rmp34Pmp314、Rhb34Phb314、RsysPhb311、Rana3Pana3從源碼結(jié)構(gòu)看前綴的判定邏輯集中在 macbuild/build4mac.py-Y一律LW--y時若 Ruby 與 Python 均為系統(tǒng)自帶則為ST-EmbedQtTrue若 Python 為 Homebrew 3.11或 HBAuto 恰好解析到 3.11則為HW-EmbedQtTrue、EmbedPython3True其余為EX-且HW-包要求 Qt 來自 MacPorts 或 HomebrewAnaconda3 的 Qt 不允許內(nèi)嵌不滿足時直接退出。6. 實戰(zhàn)用例6A6H以下各用例中的實際文件名取自 macOS Sequoia 環(huán)境在不同 macOS 上平臺名等片段會相應(yīng)變化。所有構(gòu)建用例的共同流程為*安裝依賴 → 調(diào)用build4mac.py構(gòu)建約一小時→ 用相同構(gòu)建參數(shù)加-y/-Y重新運行以部署klayout.app內(nèi)的可執(zhí)行文件與 dylibbuddy 命令行工具 strm一并部署到klayout.app/Contents/Buddy/→ 將klayout.app拷貝到/Applications**。6A. 標準構(gòu)建系統(tǒng)自帶 Ruby/Python MacPorts Qt5安裝 MacPorts 后安裝 Qt5 與 libgit2$ sudo port install coreutils $ sudo port install findutils $ sudo port install qt5 $ sudo port install libgit2確認系統(tǒng)自帶 Python 存在/Library/Developer/CommandLineTools/Library/Frameworks/Python3.framework/*原文檔說明撰寫時該 Python 版本為3.9.6與源碼字典PythonSequoia指向的Python3.framework/Versions/3.9一致。調(diào)用構(gòu)建腳本這些選項在 Tahoe/Sequoia/Sonoma 上即默認值$ cd /where/build.sh/exists $ ./build4mac.py -q qt5macports -r sys -p sys確認構(gòu)建成功約一小時取決于機器配置。用相同選項加-y重新運行將可執(zhí)行文件與庫部署到klayout.app內(nèi)$ ./build4mac.py -q qt5macports -r sys -p sys -y產(chǎn)物位于ST-qt5MP.pkg.macos-Sequoia-C32-release-RsysPsys目錄ST-標準包qt5MPMacPorts Qt5C3232 位坐標RsysPsys系統(tǒng) Ruby 2.6 系統(tǒng) Python 3.9。 4. 將生成的klayout.app拷貝/移動到/Applications完成安裝。6B. 全 MacPorts 構(gòu)建MacPorts Ruby 3.4 MacPorts Python 3.14安裝依賴$ sudo port install coreutils $ sudo port install findutils $ sudo port install qt5 $ sudo port install ruby34 $ sudo port install python314 $ sudo port install py314-pip $ sudo port install libgit2構(gòu)建$ cd /where/build.sh/exists $ ./build4mac.py -q qt5macports -r mp34 -p mp314確認構(gòu)建成功。相同選項加-Y重新運行以部署$ ./build4mac.py -q qt5macports -r mp34 -p mp314 -Y若在步驟 1 與步驟 3 都使用--buildPymod選項KLayout 獨立 Python 包*.whl將被構(gòu)建并部署到klayout.app/Contents/pymod-dist/。產(chǎn)物位于LW-qt5MP.pkg.macos-Sequoia-C32-release-Rmp34Pmp314目錄LW-輕量包Rmp34Pmp314MacPorts Ruby 3.4 MacPorts Python 3.14。 4. 將klayout.app安裝到/Applications。6C. 全 Homebrew 構(gòu)建Homebrew Ruby 3.4 Homebrew Python 3.14注意構(gòu)建 KLayout 0.29.0 需要 Qt6 6.7.0以解決上游 Qt5 編譯問題issue #1599。安裝依賴并運行 Homebrew Python 目錄結(jié)構(gòu)整理工具 macbuild/python3HB.py該工具在{Homebrew 根}/opt/pythonver/lib/下建立Python.framework - ../Frameworks/Python.framework/的標準化符號鏈接結(jié)構(gòu)支持-v 3.11/3.12/3.13/3.14$ brew install qt6 $ brew install ruby3.4 $ brew install python3.14 $ brew install libgit2 $ cd /where/build.sh/exists $ cd macbuild $ ./python3HB.py -v 3.14構(gòu)建$ cd /where/build.sh/exists $ ./build4mac.py -q qt6brew -r hb34 -p hb314確認構(gòu)建成功。相同選項加-Y部署$ ./build4mac.py -q qt6brew -r hb34 -p hb314 -Y產(chǎn)物位于LW-qt6Brew.pkg.macos-Sequoia-C32-release-Rhb34Phb314目錄。 4. 將klayout.app安裝到/Applications。警告Homebrew Python 3.12 不再提供傳統(tǒng)pip命令直接使用會報error: externally-managed-environment。按照 Homebrew 的建議應(yīng)使用虛擬環(huán)境詳見Resources/script-bundle-B.zip內(nèi)的HomebrewUser-ReadMeFirst.txt。6D. 部分 Homebrew 構(gòu)建系統(tǒng) Ruby Homebrew Python 3.11注意構(gòu)建 KLayout 0.29.0 需要 Qt6 6.7.0同 6C 的原因。安裝依賴$ brew install qt6 $ brew install python3.11 $ brew install libgit2 $ cd /where/build.sh/exists $ cd macbuild $ ./python3HB.py -v 3.11構(gòu)建$ cd /where/build.sh/exists $ ./build4mac.py -q qt6brew -r sys -p hb311確認構(gòu)建成功。相同選項加-y重新運行將可執(zhí)行文件與庫含 Qt 與 Python 兩套 Frameworks部署到klayout.app內(nèi)strm* 工具同樣部署到klayout.app/Contents/Buddy/$ ./build4mac.py -q qt6brew -r sys -p hb311 -y產(chǎn)物位于HW-qt6Brew.pkg.macos-Sequoia-C32-release-RsysPhb311目錄HW-重量包因同時內(nèi)嵌 Qt6 與 Python FrameworksRsysPhb311系統(tǒng) Ruby Homebrew Python 3.11。 4. 將klayout.app安裝到/Applications。重要目前尚不支持部署 Homebrew Ruby。因此若計劃使用-y選項進行完整部署構(gòu)建時必須使用-r sys。6E. 異構(gòu)組合MacPorts Qt5 系統(tǒng) Ruby Homebrew Python 3.11注意這是構(gòu)建常用 HW*.dmg 包的另一種實用方案。分別安裝兩套依賴# MacPorts 側(cè) $ sudo port install coreutils $ sudo port install findutils $ sudo port install qt5 $ sudo port install libgit2 # Homebrew 側(cè) $ brew install python3.11 $ cd /where/build.sh/exists $ cd macbuild $ ./python3HB.py -v 3.11構(gòu)建$ cd /where/build.sh/exists $ ./build4mac.py -q qt5macports -r sys -p hb311確認構(gòu)建成功。相同選項加-y部署$ ./build4mac.py -q qt5macports -r sys -p hb311 -y產(chǎn)物位于HW-qt5MP.pkg.macos-Sequoia-C32-release-RsysPhb311目錄HW-重量包內(nèi)嵌 Qt5 與 Python Frameworks。 4. 將klayout.app安裝到/Applications。6F. 全 Anaconda3 構(gòu)建Anaconda3 Ruby 3.4 Anaconda3 Python 3.13若 Anaconda3 安裝在$HOME/opt/anaconda3/或其他位置需先建立符號鏈接/Applications/anaconda3/ - $HOME/opt/anaconda3/然后按下述步驟安裝以 Intel x86_64 的Anaconda3-2025.06-0-MacOSX-x86_64.pkg為例裝到/Applications后創(chuàng)建新虛擬環(huán)境1) Create a new env klayout-qt6 (with stable solver channels) switch solver to libmamba for faster/more stable resolves $ conda install -n base -y conda-libmamba-solver $ conda config --set solver libmamba Create the environment (on this x86_64 machine it will pull osx-64 builds) $ conda create -n klayout-qt6 python3.13 -y $ conda activate klayout-qt6 In this env only, prefer conda-forge strictly (to avoid mixing) $ conda config --env --add channels conda-forge $ conda config --env --add channels defaults $ conda config --env --set channel_priority strict 2) Install Qt6 (qt6-main and qt6-multimedia) only from conda-forge Qt6 core (builds that typically include Designer/UiTools) $ conda install -y --override-channels -c conda-forge qt6-main6.9.3 $ conda install -y --override-channels -c conda-forge qt6-multimedia6.9.3 3) Additionally, install Ruby and libgit2 only from conda-forge $ conda install -y --override-channels -c conda-forge ruby3.4.7 $ conda install -y --override-channels -c conda-forge libgit21.9.1上述 conda-forge 版本約束與 macbuild/build4mac_env.py 注釋中給出的推薦完全一致qt6-main6.9.3、qt6-multimedia6.9.3、ruby3.4.7、libgit21.9.1且腳本期望的解釋器路徑即環(huán)境內(nèi)的bin/python3.13與include/python3.13見 macbuild/build4mac_env.py 的PythonAnaconda3V6。構(gòu)建$ cd /where/build.sh/exists $ ./build4mac.py -q qt6ana3 -r ana3 -p ana3確認構(gòu)建成功。相同選項加-Y部署若步驟 1 與 3 均使用--buildPymod*.whl將部署到klayout.app/Contents/pymod-dist/$ ./build4mac.py -q qt6ana3 -r ana3 -p ana3 -Y產(chǎn)物位于LW-qt6Ana3.pkg.macos-Sequoia-C32-release-Rana3Pana3目錄Rana3Pana3Anaconda3 Ruby 3.4 Anaconda3 Python 3.13。 4. 將klayout.app安裝到/Applications。 5. 由于解釋器位于 conda 虛擬環(huán)境中還需要創(chuàng)建一個 Automator 包裝應(yīng)用Launcher來啟動 KLayout詳見Resources/script-bundle-A.zip內(nèi)的Anaconda3User-ReadMeFirst.txt。6G. 其他組合除 6A6F 之外邏輯上還可以選擇其他模塊組合包括nil。選擇這類非常規(guī)組合時產(chǎn)物目錄將以EX-exceptional為前綴——這與 macbuild/build4mac.py 中的PackagePrefix EX-分支吻合。6H. 通過代理服務(wù)器使用 git 版 Salt Package Manager如果通過代理服務(wù)器使用基于 git 的 Salt Package Manager需要設(shè)置KLAYOUT_GIT_HTTP_PROXY環(huán)境變量$ export KLAYOUT_GIT_HTTP_PROXYhttp://111.222.333.444:5678代理服務(wù)器的實際 IP 與端口請向系統(tǒng)管理員索取。原文檔強烈建議將此設(shè)置放入啟動用的 service script bundle 中示例腳本*.app.Bash可在 macbuild/Resources/script-bundle-A.zip、macbuild/Resources/script-bundle-B.zip、macbuild/Resources/script-bundle-H.zip、macbuild/Resources/script-bundle-P.zip、macbuild/Resources/script-bundle-S.zip 中找到。7. QA 測試用 macQAT.py 驅(qū)動 ut_runner構(gòu)建完成后可選地進行 QA 測試。macOS 環(huán)境下的 QA 工作目錄為[ST|LW|HB]-build_directory.macQAT目錄中隨附macQAT.py它是ut_runner可執(zhí)行文件的包裝腳本。操作步驟繼承自原文檔第 7 節(jié)進入 QA 工作目錄cd [ST|LW|HB]-build_directory.macQAT打印ut_runner用法./macQAT.py -u僅啟動 KLayout 主 GUI 窗口./macQAT.py -k正常運行ut_runner./macQAT.py -r如有需要可用-x test選項跳過個別出錯測試可多次使用支持逗號分隔的測試名列表。從 macbuild/macQAT.py 源碼可以看出該包裝腳本的完整能力與工作原理環(huán)境變量注入ExportEnvVariablesmacbuild/macQAT.pyTESTSRC..測試源目錄、TESTTMPQATest_Git短SHA1_時間戳_目錄名測試臨時目錄在 Darwin 上另設(shè)置DYLD_LIBRARY_PATH指向.、db_plugins、lay_plugins、pymod、MallocNanoZone0以及一組ASAN_OPTIONS關(guān)閉 leak detection、symbolize 等這解釋了QA 所需的環(huán)境變量由macQAT.py設(shè)置這一說明-u實際執(zhí)行./ut_runner --help-all-k實際執(zhí)行./klayout.app/Contents/MacOS/klayout-r默認繼續(xù)運行對應(yīng)ut_runner的-c-s/--stop可切換為遇錯即停運行日志寫入QATest_*.log支持--dryrun僅打印命令行單元測試套件本身位于 src/unit_tests 與各模塊的unit_tests子目錄如 src/db/unit_testsut_runner由 src/klayout.pro 構(gòu)建體系生成。8. 制作 DMG 安裝包使用另一個 Python 腳本 macbuild/makeDMG4mac.py 可以制作 DMG 安裝包。前提該目錄是 6A6F 中以-y/-Y選項運行build4mac.py生成的產(chǎn)物目錄。若尚不存在從父目錄即build.sh所在目錄為腳本建立符號鏈接makeDMG4mac.py - macbuild/makeDMG4mac.py帶-p指定包目錄與-m制作壓縮 DMG選項調(diào)用$ cd /where/build.sh/exists $ ./makeDMG4mac.py -p LW-qt5MP.pkg.macos-Sequoia-C32-release-Rmp34Pmp314 -m該命令生成兩個文件LW-klayout-0.30.9-macOS-Sequoia-C32-1-qt5MP-Rmp34Pmp314.dmg—— 主 DMG 文件LW-klayout-0.30.9-macOS-Sequoia-C32-1-qt5MP-Rmp34Pmp314.dmg.md5—— MD5 值文本文件。DMG 文件名中的1是 DMG 序列號可通過-s|--serial修改默認 1。從 macbuild/makeDMG4mac.py 的 usage 可知腳本還支持-c/--clean清理工作目錄與-m互斥、-b|--bundle強制指定 DMG 內(nèi)的 bundle 名、-u/--unsafe跳過部分檢查慎用、-t|--targetdmg指定輸出文件名其實現(xiàn)基于create-dmg的衍生工作DMG 背景圖與卷圖標取自 macbuild/Resources 中的 PNG 與.icns資源AppleScript 模板為 macbuild/Resources/template-KLayoutDMG.applescript。9. 已知問題與維護要點原文檔Known issues一節(jié)指出由于構(gòu)建腳本假定了一些特定版本的非 OS 標準 Ruby/Python更新 Homebrew、MacPorts 或 Anaconda3 后可能引發(fā)構(gòu)建與鏈接錯誤此時需要相應(yīng)更新 macbuild/build4mac_env.py 中的字典內(nèi)容如 Ruby 3.4 的 include 目錄從ruby-3.4.0變?yōu)樾掳姹咎?、libruby.3.4.dylib路徑變化、Homebrew Python 框架路徑等。換言之build4mac_env.py是版本錨點文件第三方軟件包管理器升級后應(yīng)優(yōu)先核對該文件各字典項與實際安裝路徑是否一致。此外結(jié)合源碼還可以得到兩條實用結(jié)論選擇nil/非系統(tǒng)語言組合時NonOSStdLang標志會被置位-y完整部署的可用性取決于組合類型如 HW- 包強制要求 Homebrew python3.11見 macbuild/build4mac.py需要部署的 KLayout 可執(zhí)行文件清單klayout及 11 個 buddy 工具strm2cif、strm2dxf、strm2gds、strm2gdstxt、strm2lstr、strm2mag、strm2oas、strm2txt、strmclip、strmcmp、strmrun、strmxor定義在 macbuild/build4mac_env.py 的KLayoutExecs與原文檔中buddy 命令行工具strm*部署到klayout.app/Contents/Buddy/的說明對應(yīng)。10. 小結(jié)KLayout 的 macOS 構(gòu)建體系圍繞三個腳本協(xié)作build4mac.py構(gòu)建與部署模塊組合由build4mac_env.py的字典驅(qū)動、macQAT.pyut_runnerQA 包裝器、makeDMG4mac.pyDMG 打包輔以python3HB.py整理 Homebrew Python 的框架目錄結(jié)構(gòu)。默認路徑是 MacPorts Qt5 系統(tǒng) Ruby 2.6 系統(tǒng) Python 3.9 的ST-標準包追求輕量分發(fā)可選LW-組合需要自帶解釋器分發(fā)的 HW*.dmg 則選擇 Homebrew python3.11 方案。對于 Qt6 或 Python 3.13/3.14 等新組合務(wù)必以 macbuild/build4mac_env.py 中字典項注釋標注的 conda-forge/MacPorts/Homebrew 具體版本號為準以規(guī)避軟件包管理器升級帶來的構(gòu)建鏈接問題。贊分享硬件開發(fā)桌面應(yīng)用圖形學(xué)【免費下載鏈接】klayoutKLayout Main Sources項目地址https://gitcode.com/gh_mirrors/kl/klayout點擊查看免費下載相關(guān)推薦3 步裝好 eSearch跨平臺屏幕截屏與離線 OCR 工具快速上手指南3 步裝好 eSearch跨平臺屏幕截屏與離線 OCR 工具快速上手指南 eSearch 是一款覆蓋 Windows、Linux 與 macOS 的跨平臺屏幕桌面應(yīng)用OCR屏幕錄制視頻處理圖像處理NuvioDesktop從源碼構(gòu)建到發(fā)布Gradle打包MSI、DMG、DEB與Flatpak完整部署指南NuvioDesktop從源碼構(gòu)建到發(fā)布Gradle打包MSI、DMG、DEB與Flatpak完整部署指南 NuvioDesktop 是一個免費開源的跨平臺媒RStudio macOS 源碼構(gòu)建全指南依賴安裝、Universal 雙架構(gòu)編譯與 DMG 打包實戰(zhàn)RStudio macOS 源碼構(gòu)建全指南依賴安裝、Universal 雙架構(gòu)編譯與 DMG 打包實戰(zhàn) 本文是一份面向開發(fā)者的 RStudiomacOS 平開發(fā)工具后端創(chuàng)作聲明:本文部分內(nèi)容由AI輔助生成(AIGC),僅供參考
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
av天堂5| wwwxxx日本爽| 欧美中文字幕日韩在线| AV污污污污| 狠狠亚洲| 99少妇精品视频| 大香蕉狠狠爱| 久久中出在线| 亚洲第一在线视频| 东北熟女91| 97视频在线观看播放与子乱对白在线…… | 午夜欧美神马久久久久| 精品人妻夜夜草| 精品午夜福利| 人妻免费观看| 天天插天天射| 熟女人妻一区二区三区| 亚洲色图第四色| 情色AV电影| 久久美女国产| 天美传媒精品一区二区| 久久大精品乱码视频人妻熟女| 最新加勒比丝袜在线| 亚洲色欲天天天堂色欲网女| 国产精品69久久久久久久| 麻豆天美国美国产AV| 国产1769在线| 中文字幕亚韩| 欧美一区二区观看在线| 久久精品国内Av熟女高清| 99re99视频在线免费观看| 97国产成人精品免费视频| 韩国三级一线观看久| 亚洲天堂人人妻| 久99久视频精选| 亚洲天堂,男人| 久久久999| 加勒比性爱成人在线| 日韩精品高清资源在线| 中出91| 这里都是精品在线观看| 在线看片国产精品每日更新| 飘花国产午夜精品不卡| 色色福利| 色墦五月丁香| 黄页视频网站野外| 少妇高潮特黄A片| 看一级特黄a大一片| 亚洲国产成人精品久久久国产成人一区二区| 爱逼综合| 国产无码精品成人| 亚洲成熟国产精品美女| 蜜臀国产AV中文字幕| 九九干| 成人久久久| 伊人久久亚洲色欲综合网站 | 99精品人人爽| 97综合激情| 妇人噜噜| 欧美国产一区二区三区麻豆传媒| 久久久久久夜夜夜夜夜| 天天碰久久入| 男人的天堂三级| 深夜激情| 翔田千里一区二区三区奶水| 激情无码日韩| 久久久五月天| 天天综合~91入口| 大鸡巴久久久| 久久水蜜臀亚洲AV无码精品| 97资源亚洲| 婷婷探花久久精品一区| 大茄子熟女AV导航| 天天澡天天狠天天天做| 久久久久国产精品片区无码直播| 亚洲激情综合| 国产女人9999| 欧美精品,四区。五区| 91老司机视频| 国产色呦呦| 亚洲日韩一区电影| 久久亚洲色图中文字幕| 麻豆视频国产一区二区| 中文字幕精品一区二区精品| 天美传媒在线一区| 欧美激情1区| 日本免费中文字幕在线| 五月婷婷六月丁香| 夜夜操一区二区| 日本不卡一二区| 国产午夜在线观看视频| 色色热| 久久人妻无码毛片A片麻豆| 色偷偷综合91久久噜噜| 操操逼视频| www.婷婷五月天| 人妻超碰青青草98| 欧美操逼熟女| 日韩一级二级三级| 一卡二卡在线播放| 欧美色图自拍| 亚洲色图欧美色图日韩色图| 人妻人人澡人人爽人人| 一本色道综合久久欧美| 蜜臀久久99精品久久久老,,| 97欧美资源| 操高情无码| 少妇一区二区三区在线观看| 噜噜噜亚洲精品| 久久久精品网站| 91操人| 9.1小视频| 日夜干射色啊| 国产AV激情无码久久无码 | 久久黄黄| 五十路熟女人妻一区二区在线观看 | 亚洲三区视频| 2017大香蕉国产精品久久| 手机看片91人妻| 日韩激情电影中文字幕| 性色高清在线| 日本激情免费大片| 狠狠躁久久躁| 久久五月份| 蜜臀99久| 日韩97视频!在线| 日韩av不卡在线看| 国产福利第一视频| 久久精品中文字幕女同| 在线v中文字幕一区二区三区| 欧美猛交黑寡妇中文字幕| 欧洲性爱无码区| 五月婷网站| 久偷拍| 天天插夜夜操| 亚洲第一页综合在线| 动漫爆乳3D奶水一区在线观看| 最新日本中文字幕| 97操在线| 午夜天堂精品久久久久91| 久久78| 亚洲综合影片| 女欧美一区二三区| 97欧美精品综合| 免费少妇一区二区| 日本久久久久久久久久| 伊人大香蕉在线| 熟妇一区二区| 久久99精品九九久久久婷婷| 婷婷啪啪| 亚欧性爱无码| 欧美在线天堂| 日本黄页视频在线观看| 97视频观看| 真实高潮91| 婷婷色导航| 日韩AV色图| 久久久久久大| 国产伊人精品在线| 色香伊人| 亚热日本熟女| 91ise欧美| 超碰在线观看av不卡| 久99在线免费观看视频| 日韩在线97| 激情五月综合| 五月天社区| 日韩精品一区二区日韩| 国产一国产一级毛片古装| 免费看久久久性性| 亚洲熟妇一,二,三期| 亚洲s在线观看| 欧美v亚洲v日韩v最新在线二区| 久九九九| 久久97超碰| 日韩高清一二三| 少妇诱惑视频| 极品白嫩福利在线| 麻豆国产尤物AV| 涩涩这里只有精品视频| 网站A V在线| 97在线观看免费| 免费人人搞97| 久久久99久9| 久久婷五月| 亚洲成a人在线观看久| 激情小说图片亚洲首页| 久久天堂| 99re超碰| 日本熟女不卡视频| 日韩在线观看三级电影| 绯色一区二区三区不卡少妇| 精品一区二区三区18| 麻豆婷婷成人一二三| 九九九九久久久| 91熟女综合| 亚洲,欧美,春色,另类| 黄色av一区二区在线| 人人人人插| 日韩免费高清大片在线| 日本淫乱女一区二区三区视频| 97人人爱人人乐| 久久久91| 人人性爱视频免费| 国产黄色小视频网站| 色色毛片| 日韩免费大片一级播放| 操逼国产免费| 亚洲97久久精品亚洲| 日韩在线一区高清在线| 欧美一级黄片免费播放| 日韩成人网址| 强奸乱伦Av网| 色一情一乱一乱一区91Av| 93人人操人人| 日韩人成网站在线播放| 婷婷五月av| 日日操天天操| 91AV老熟女视频| 91热情品| 亚洲熟妇综合久久久久久| 另类专区加勒比| 大香蕉手机在线| 大鸡巴久久| …亚洲黄色厕厕女女在线播…| 97亚洲精品超碰| 激情小说亚洲| 伊人久久大香线蕉无码| 久久久97| 熟妇熟女一区二三区| 青草香蕉网| 综合性视频99| 狠狠爱综合网| 久久亚洲AV无码专区国产精品| 国产 v乱码一区二| 亚洲18禁| 日日摸日日碰| 日日摸天天爽夜夜欢| 欧美性爱18观看| 99精品视频在线观看免费| 顶级少妇BT天堂| 极品少妇久久久| 综合久久欧美| 超碰在线国产| 熟女欧美日韩综合婷婷| 99后入| 9Ⅰ超碰| 福利社区午夜一区二区| 99综合网| 久久美国毛片| 中文字幕一区电影在线观看| 激情五月天综合网| 亚洲天堂久| 天天看夜夜看日日干| 黄片无码在线制服| 青青草色情网站视频| 国产精品一区在线播放| 国产野战露脸在线播放| 97色色网| 乱色老一区二区三区的观看方式| 乱欲视频| 天天爽天天| 最新中文字幕av| 日韩97在线| 97精品国产97久久久久久| 青青草视频导航官网| 97精品网| 丁香婷婷久久| 久草成人影片| 变态乱伦伪娘灌肠一区二区| 人妻久久久久久久久久久久久久久| 国产极品久久久| 精品综合久久久久久五月天| 国产67194| 欧美乱妇狂野欧美在线视频| 小说区 图片区色 综合区| 久/久精品99看9| 日韩无码久久熟女一级片| 性综合网| 麻豆 欧美 日韩| 夜夜嗨av午夜成人| 男女啪啪啪18禁网站| 色牛牛AV| 日日骚一区二区三区| 超碰成人最新最好看| 一区二区 电影 亚洲| 欧美97超碰| 亚洲中文字幕在现观看| 亚洲综合97中文网| 日日超碰亚洲| 黑人中出21连凳花野真衣| 五月亭亭六月丁香| 国产白领连续中出在线观看| 人妻少妇精品久久久久久久| 青青青操| 手机在线免费看的av| 91人人看| 性久久久| 亚州Av天美传媒| 乱伦a片视频| 中文字幕第23区| jk白丝没脱就开始啪啪| 蜜臀在线网站| 大香樵伊人网| 麻豆国产97在线| 偷窥自拍亚洲色图| 亚洲中文日韩欧美大香蕉视频| 啊啊啊免费视频| 天天射,天天操,天天爽-国内精品一区二区三区-成人AV | 亚洲一区操| 99久久综合| 国产专区第一页| 亚洲AV永久无码精品成人调教| 日韩精品在线观看网站| 天天干人人乐| 亚洲中文字幕乱码无码一区二区| 特级特黄一级毛片免费| 色哟哟av| 超碰欧美97资源| 五月婷婷五月天| 亚洲色图欧美色图另类图片| 制服中出中文人人精品| 一区二区三区机械有限公司| 久久成年精品| 国产亚洲禁久一区二区| 加勒比伊人| 大香蕉之青青草原| 国产欧美美女免费观看视频| 围产精品一区二区三区视频播放| 国产一区在线播放| julia ann久久| 25国产精品免费观看| 亚洲无码国产探花在线观看| 久久精品一区一起草| 韩国一区二区精品亚洲| 国人欧美精品一区二区| AVE乱伦| 蜜臀久久精品久久久久视频| 精品国产污一区二区三区| 国人欧美精品一区二区| 在线日韩日本亚洲国产| 亚洲精品久久久久久| 亚洲aw毛茸茸在线 | 色五月婷婷五月天| 交换娇妻呻吟声不停中文字幕| 亚洲AV色图一区| 嗯嗯嗯啊啊啊操的我好爽 | 丝袜高跟澳门91视频| 操人妻少妇中文| 亚洲成a人在线观看久| 色综91| 91无码人妻| 啊啊啊啊啊操我视频| 操逼网免费无码视频| 国产精品4p在线观看| 亚洲欧美内射| 色臀aV| 日韩三级在线观看mp4| 欧美激情综合| 国产一区二区啪啪视频| 可能人人看人人摸| 日韩免费高清大片在线| 亚洲综合欧美| 亚洲巨爆乳一区二区三区四季网| 国产精品丝袜在线| 亚洲AV色图一区| 成人十八禁日韩欧美一二三| 97综合国产精品高潮久久| 91粉芽高清在线一区二区| 久久久久久精品免费看A级| 精品国产无码中文| 黄色激情电影在线观看| 国产熟女完整版中字| 国产精品探花色| 一级性爱视频免费观看| av三级电影在线播放| 久久春色| 久久大黄片| 精品福利| 亚洲天堂一区二区久久| 国产最火爆久久国产网站网站| 欧美色就是色| 51国产午夜精品视频| 91处女在线观看| 亚洲国产精品无码AV久久| 熟女人妻精品一区二区视频 | 久久精精区一区二区一蜜桃一区二区| 婷婷精品| 亚洲.欧美.丝袜.中文.综合| 东北操逼| 一本色道人妻久久| 国产激情视频一区区三区| 精品视频在线观看| 操b在线观看| 亚洲AV成人无码一二三久久| 911av网站免费观看| 黄色电影观看久久9| 亚洲成人久久一区二区| 日韩无码专区| 嫩草 人人网精品| 91美女視頻| 欧美亚洲特P| 淫荡网址| 亚洲系列第一页| 亚洲Av无码成人精品国产| 色区久久| 任你草| 欧美色网络| 欧美一区二区成人一卡| 天操天操夜操夜月操月年年操操| K8久久久久| 91操熟女| 亚欧性爱ab| 日本三级韩三级99久久| 草伊人高潮喷水超碰| 99热日| 麻豆视频一区二区| 永久免费发布性爱网| 狠狠综合| 亚洲影视第一页| 国产内射爽爽大片| 精品国产久热在线观看| 伊人大香蕉在线| 伊人96在线| 91熟女视频| 婷婷视频在线免费观看| 嗯阿好爽好紧| 亚洲人妻色图| 亚洲少妇综合在线播放| 久久久9品一区二区三区| 在线亚洲丝袜视频网站| 亚洲激情片| 大地资源在线观看中文第二页| 亚洲骚女一区二区三区| 精品视频一区二区| 天天操天天干一区二区 | 一直超碰| 96精品久久久久久久久久| 国产熟女免费观看久久| 97超碰逼| 久久久久少妇| 91碰碰| 久久亚洲天堂| 波多野结衣被操50分钟免费视频| 91大神电影天堂| 激情欧美97| 欧美日韩国内不卡| 国产情色在线| 日日日日做夜夜夜夜无码| 亚洲情色第一页| #NAME?| 97人妻免费中文字幕| 九九英色视频| 青青青国产手线观看视频2| 婷婷五月色| 国产理论视频在线播放| 中文字幕加勒比海高清无码免费视频 | 国产AV线| 青草av在线| 九九九九九九九| 国产精品久久99日日| 久久精品一区| 性爱视频无打码在线观看| 99re3这里只有精品| 亚洲色宗合| 色色热| 色逼综合| 91久青| 69XX一中文字幕人妻91| 欧洲免费一区二| 久久精品一区二区一8| 99热97| 亚洲av青草久久一区二区| 熟女啪啪视频| 无码高清少妇久久| 超碰这里只有精品| 岛国艾薇凹凸视频天堂| 日韩91网| 青娱乐导航AV| 国产视频一区二区三区在线免费观看| 丁香五月天久久精品视频一区二区三区| 富女玩鸭子一级毛片| 亚洲色图a| 草莓精品视频在线免费观看| 偷拍片久久| 国产女人成人精品视频| 欧美亚洲手机在线| 国精品一区二区三| 亚州操逼图| 久草精品一区| 三级片网站在线播放| 欧美色图天堂在线| 免费国产电影一区二区| 啊啊啊啊啊啊啊在线| 欧美顶级黄片AAAAA在线免费看| 亚欧美综合| 噜噜在线| 国产一区自拍欧美日韩| 97伦综合| 国产乱弄免费在线视频。| 国产精品一级特黄aaa大片在线观看| 亚洲青青草| renqi久久久久久久久久久久| www国产无码| 亚洲色情在线影视| 曰韩欧美国产传媒麻豆第一区| 国产亚洲精品一区二区三区| 熟女熟妇一区二区三区视频| 中文字幕丝袜人妻| 在线国产探花| 天天做日日做| 国产精品福利视频| 伊人在线大香蕉视频久久| 天堂岛av| 午夜高清成人在线视频| 九九视频黄色片| 丝袜视频网国产90| 久久国产对白激情浪潮 | 婷婷四五区| 国产精品一区二区三区,亚洲综合| 99re久久| 五月天人妻综合| 日骚逼视频| 午夜后入| 久久亚洲不卡一区二区三区 | 久久风骚城市| 97视频900| 亚洲限制级在线| 九九香蕉网| 国内毛片婷婷六月色| 久久精品国产亚洲5555| 青青青青青手机视频| 日本熟妇精品九九| 九九九九九九九九九五码| 欧州色图区| 大香蕉啪啪啪| 婷婷91| 亚洲一区二区三区AV无码| 色欲Av人妻精品一区二| 国产毛片片精品天天看视频 | 97精品国产97久久久| 综合久久中文字幕综合日韩精品| 亚洲啪啪视频一区二区| 操逼免费视频无码国产| 看免费的黄片| 欧美一级AAAAAAA| www国产无码| 天天综合网网欲色| 一二三区操逼国产91| 图色综合网| 嗯嗯嗯啊啊啊操的我好爽| 久久精彩免费视频| 国产野战露脸在线播放| 国产JDAV无码视频在线观看| 大香蕉琪琪日本女优不卡| 99九九久久| 日本一区二区电影网站| 91女网站| 亚洲美女30b| 青草香蕉网| 日韩视频小说在线观看 | JuliaAnnXXX888| 97在线/亚洲| 乱人乱色一区二区三区免费| 阿姨一区二区免费视频-高清正片西瓜视频下载app-T450AV | 性做久久久久久免费观看软件| 伊人热综合| 天天干人人看综合| 7777奇米影视久久| 色哟哟511老熟女| 亚洲一本色道中文无码aV天美| 国产精品一级片在线看| 99热只有这里有精品| 开心五月婷婷激情| 老鸭窝亚洲毛片| 啊啊啊啊啊啊好湿好爽视频| 亚洲无限观看| 天天天干977| 91在线欧美| 国产操逼视频在线观看| 青青操狠狠撩| 91国产精品熟女| 伊人 俄罗斯 a v| 久9久9久9久9久9久9| 美女91AV| 日韩图区 偷拍| 人妻少妇av在线观看| 人妻天天夜夜爽一区二区| 久久深夜无码| 噜噜噜亚洲精| 国产精品一区二区久久精品| 一个人免费HD91视频| 99亚亚热| 99re这里| 天美传媒精品一区二区| 美女写真| 97爱啪| 东北毛片| av片在线观看免费播放| 精品视频97| 日本幼女18+| 久久久精品中文字幕爱豆| 色官网在线| 久久天天躁日日躁狠狠躁| 青青草AV色| 国产精品视频91久久| 欧亚在线视频| 淫乱图区| 玖玖爱在线视频免费观看| 国模少妇一区二区三区| 东北老女人的激情视频| 少妇无码999| 亚洲成人美女无吗| 欧美 青青草| 欧美乱欲| 中文字幕在线高清男人的天堂 | 久久精品国产99久久,亚洲日韩久久日本一区一区三区 | 97网址97| 亚洲av无码成电影在线播放| 69人妻精品一区二区绯色| 日韩无码久久熟女一级片| 综合网亚洲| 激情五月丁香五月| 日本天堂在线播放| 天天色,天天干,天天干| 大香蕉天天看妹子| 狠狠爱综合网| 精品精品精品| 欧美一级二级三级| 综合欧美日韩在线观看| 一区| 国产亚洲欧美每日在线| 性欧美天天| 亚洲国产成人精品女人久久久| 久久久九九网站| 国产九九九九九九| 97任你吞精| 日韩97视频| 国产性爱乱伦AV| 精国久久一区二区三区98| 亚洲欧美在线观看无码| 磁力99AV| 日韩卡一卡二卡三在线| 97在线青| 精品一区二区成人| 欧美高潮| 激情专区综合| 欧美性暴力猛交| 婷婷激情啪啪| 天天干人人看综合| 精品人妻视频一区二区三区蜜桃视频| 91久久九九精品国产综合| 嗯嗯啊啊用力视频免费| 收看日本人日bb| 另类 综合 日韩 欧美 亚洲| 秋霞一级A片黄色视频| 精品999日本| 黄色视频特级毛片| 欧美亚州综合网图片| 啪啪啪大香蕉| 91久久久亚洲| 欧美黑人极品高潮喷吹熟女黑人性暴力日韩在线欧美极品一区二区老师 | 东京热,男人的天堂| 狠狠干,狠狠操| 五月天亚洲色图| 高树玛利亚无码流出| 日韩无码三级影院| 欧美性Fer办公室秘书| 偷看洗澡一二三区美女| 国产成人五月天丁香花| 欧成人在线| 极品色社| av无线看| 欧色网址| 久久国99999| 干婷婷综合网| 2021国产成人精品久久| 亚洲精品1区| 色九月| 操操逼视频| 一区二区三区男人的天堂| 校园春色之综合网| 韩国黄片aaaa| 91伊人| 国产第二页| 欧美激情综合色综合啪啪五月| 黄色无码高清黄色无码网站| 日日干夜夜欢| 夜夜夜久久| 亚洲国产午夜真人一级片中文字幕精品黄网站 | 国产久久久久影院老熟女| 狠狠干狠狠色| 蜜乳AV一区| 天美传媒精品一区二区| 欧美日本视频一区| 台湾大香蕉99热| 五月婷视频| 日韩电影天堂视频一区二区| 玖玖婷婷五月天| 超碰在线人人射| 综合天天网| 欧美日韩999| 人人操人人摸人人看人人插| 久操电影网| 91网18| 香蕉人人操tv| 99re免费视频精品全部| AV天堂因数| 欧美论理片| 嗯嗯嗯啊啊啊操的我好爽 | 国产夫妻性生活视频| 男人的天堂在线2| 成人看片网站| 操比国产| 国产中文精品一区二区在线观看| 日本操逼无码| 欧美资源| 日本媚薬中文字幕在线| 天天干1区2区在线| 粉嫩小泬久久久一区二区| JULIA人妻风俗店中出电影| 五月丁香婷婷色| AV免费在线播放一区| 97超碰资源网| 不卡免费av在线播放| 日本欧美韩国国产在线| 最新无码国产| 激情五月天中文字幕色| 综合久久2017| 久久久青青草| 91色欧美| 国产精品久久泡妞网站| 九九热re99re6在线精品| 99热8| 亚洲网污污污污| 热久久国产精品视频大陆精品| 夜夜狼人妻| 国内黄色精品| 极品内射| 国产精品丝袜久久亚洲不卡| 欧美亚洲AN| 91欧美丨精品丨入口| 蜜臀久久在线视频| 欧美97视频| 久久久国产精品亚洲精品| 国产美女精品| 内射中国少妇高清视频免费视频 | 亚洲性天堂| 久久久久久久久久9| 精品久久久久综合无码| 国产日韩久久| 久久精品国产亚洲5555| 乱性AV| 日韩熟女乱伦中出| 熟女精品va中文字幕| 国产精品无码AV网站| 99久久99久久综合| 日韩欧美麻豆大片| 久久蜜色情在线视频xxx免费观看| 99操| 日韩有码回春沙龙第一页| 亚洲狠狠入| 97欧美在线| 性videos欧美熟妇hdx| 欧美色偷拍 | 久久精品中文字幕女同| 超碰欧美97资源| 97天天| 欧美性爱18观看| 中文字幕一区电影在线观看| 精品国产久热在线观看| 国产玖玖| 成人热久久精品| 精品人妻高清麻豆av| 久久91| 18禁中文字幕| 五月激情啪啪| 99热在线不卡| 色欲天香天天综合网-成年人三级片网站-欧美乱妇狂野-日韩国产专区-久久久久久 | 亚洲男人的天堂V| 亚洲涩涩| 天天cao在线| 最新亚洲人成网站在线影院| 精品超碰国产| 天天综合影院91| 一二三四区电影| 国产91亚洲精品一区二区三区| 国产日韩欧美亚洲精品95 | 一区二区播放| 秋霞一集毛片观看| 91人妻PORNY九色大屁股| 亚洲自拍另类丝袜综合| 一区超碰一区| 午夜乱轮操逼视频免费看| 五月婷婷无码| 毛片麻豆91糖心精品毛情片| 超碰在线人人射| 亚洲一区中文字幕一区| 91高跟美女在线播放| 久久免费9| 欧洲一级性爱视频在线观看| 蜜臀人妻少妇久久在线观看| 凌辱美少妇久久aV| av凤凰久久久| 97超视频在线观看| 亚洲无线观看久久| 91狠狠色丁香婷婷综合久久| 97精品97久久| 久久伊人亚洲AV无码网站| 免费观看欧美日韩操逼视频| 久久↗↗| 99国产精品视频尤物| 99r九九| 一区二区三区看视频| 亚洲 一区二区 自拍| 亚洲熟妇熟在线电影视频| 青青在线视频日韩欧美| 爱我干综合| 伊人991| 免费视频在线一区二区不卡| 日韩欧美女优电影| 欧美九九九| 日韩免费看黄片| 欧美色日| 国产成人免费观看在线视频| 亚洲欧洲无码97久久精品| 国产又黄又粗又猛大片| 亚洲天天艹| 精品国产乱码久久久久久蜜臀| 你懂得91| 偷拍亚洲情色| 大色综合网| 欧美性Fer办公室秘书| 久久九九视频九九视频| 日韩精品9999| 色操逼网| 情色五月天网| 狠狠色狠狠色狠狠五月| 亚洲日本天堂| 亚洲欧洲网站免费观看| 亚洲 欧美 日本 国内 首页| 性爱1区| 国产免费小视频| 思思热在线视频精品| 色爱天堂| 欧美亚洲玖玖玖| 乱伦强奸区日韩| 一个人在线看的黄色电影网站| 国产精品久久久| 伊人影院在线理论播放| 国产在线综合网| 欧美狠狠操| 久久社区一区二区三区| 加勒比综合a∨| 女人被添高潮免费视频| 亚洲 欧美 日韩另类 麻豆| 丁香六月婷婷久久综合| 精品999999| 岛国人妻少妇av在线观看| 亚洲人妻在线一区| 欧美在线|亚洲| 五月天久久久| 国产高清成人免费视频| 色婷婷蜜臀av| A片 AV一级在线播放观看免费| 国产伊人精品在线| 久热伊人99re| 欧美少妇性爱网站| xxx0国产在线播放| 欧美宗合网| 亚射在线| 欧美性爱视频免费一区一A| 日韩精品人妻一区二区| 少妇天堂网络| 色欲日韩欧美在线一区| 欧美懂色综合网| 亚洲永久AV无码精品秋霞| 亚洲国产午夜真人一级片中文字幕精品黄网站| 精品国产综合久久福利,热99这里有精品综合久久,99热这里只有免费国产精品,精 | 天天操福利视频综合网站| 久久人妻丝袜一区二区三| 日韩欧洲操屄视频| 久久精品成人| 亚洲精品天天影视综合网 | 在线亚洲欧美| 秋霞鲁丝午夜无码一区二区三| 99精彩视频| 思思热免费在线视频| 91亚洲人| 丰满丝袜少妇AV| 婷婷日韩一区二区三区中文字幕在线| 岛国毛片在线观看免费| 亚洲欧美日韩不卡人妻| 国产精品天干天干综合网麻豆 | 97精品一区| 男人的天堂色偷偷青青草视频婷婷网| 亚洲四虎熟女精品| 秋霞一级鲁丝片A片| 超碰久久.com| 亚洲熟女一区| 亚洲色图 欧美热图 清纯唯美 另类自拍 | 东京日日夜夜| 亚洲欧美日韩精品久| 国产美女在线精品免费看| 超碰色美女| 欧美日韩精品久久| 久久久亚洲精品电影免费看| 福利在线黄片| 久操com| 久久久久久99AV无码免费网站| 日韩97超碰| 亚洲色图 图片| 欧美少妇第一页| 天天综合日韩网| 国产成人+综合亚洲+天堂| av在线一区二区三区| 国产精品日本无码A片| 好爽视频在线观看视频| 日韩无码第3页| 91老熟女91老女人| 亚洲黄色网址| 亚洲www91| 97亚洲资源| 欧美激情亚洲色图| 插入综合网| 深爱五月天| 婷婷丁香六月天| 婷婷五月综合在线| 亚欧国产无码精品在线| 性色av网站| 91天堂色男人的天堂| 日韩欧美综合激情| 久久东京伊人一本到鬼色| 蜜乳视频网站| 国产女s强制榨精视频| A级在线视频| 天天上日日上日韩精品| 亚洲色婷婷久久91| 欧洲在线性爱视频| 91色人妻| 国产中文大片资源中文字幕| 人人玩人人添人人澡免费| 久久精品久久久久久久久| 国产成人亚洲精品无码最新在线| 大肥女高潮bbwbbwhd视频| 日韩无码极品| 18禁在线视频| 370p日韩欧美亚洲精品| 黑人白女精品一区| 中文字幕一区电影在线观看| 午夜精品五区| 日本精品成人无码| 91丝袜美女国产| 久jiu久神马影院| 日本午夜福利视频| 性爱AV天堂| 久久久96精品| 热热色91| 国产无马在线| 久草视频观看视频在线| 色香色欲天天综合网天天来吧| 国模精品一区二区三区苹果色戒| 婷婷亚洲综合| AV老汉| 屁股久久久久久久久| 亚洲第二页| 免费人成毛片乱码| 人妻81p| 丁香五月激情五月| 欧美午夜色妇色鬼| 美熟女逼导航AV操逼| 变态综合色| yaouchengrenav| 18禁的网站在线| 97人人干| 久偷拍| 日韩欧美~中文字| 一起草三级AV电影在线观看 | 九九成人精品| 日韩青久久| 91视频精品| 日韩一性一交一A片俄罗斯| 加勒比av官网在线| 国产日韩久久| 一牛影视成人片免费| 成人婷婷丁香| 亚洲性少妇| 91性片| 色欲蜜臀AV| 色呦呦、国产精品| 亚欧操逼片在线观看| 老司机午夜精品视频| 亚洲超碰AV| 亚洲中文字幕乱码无码一区二区| 久久久久久久久久久久久女过产乱-少妇高潮一区二区三区喷水-成人AV | 日韩干B| 久久精品 六十路 熟女 欧美| 国产情侣自拍在线播放| 丝袜内射| 五月天久久人妻| 亚洲综合另类小说色区亚洲成av人片在www | 一级性爱视频免费在线| 337p大胆噜噜噜噜噜91Av| 乱码熟妇人妻久久久| 久久久久久久| 91人妻尻屄视频| 97资源欧美| 天久久久噜噜噜久久国产精品爽爽| 操逼国产免费| 九九九九九九亚洲| 麻豆亚洲AV成人无码久久精品| 岛国艾薇凹凸视频天堂| 人妻无码后入| 亚州男人天堂| 大伊香蕉在线视频免费| 日本999精品| 尤物网站91| 亚洲天堂区| 岛国天天午夜影院传媒网| 免费亚洲黄色视频在线观看| 99爱久久视频频| 91丝袜美女视频| 丁香五月婷婷基地| 亚洲色图 91| 精品v日韩欧美国产| 天天摸夜夜操视频| 精品人妻1区| 欧美白嫩女HD| 中文字幕,人妻,日韩| 性色高清在线| 欧美18 在线观看| 极品粉嫩一区二区| yw尤物av无码点击进入麻豆| 一本一道人妻久久一区二区三区 | 凹凸视频在线一区二区| 91爽啪| 丝袜亚洲综合| 岛国小电影| 亚洲视频中文一区| 97se综合网| 91成人高清在线观看| 精品十三区| 操逼片国产| 欧亚揄拍偷拍精品视频| 嫩草影院性色| 大香交| 久久思思热| 亚洲九九九九| 久久天天躁日日躁狠狠躁| 亚洲色图尤物视频| 91丨精品丨国产丨丝袜| 国模无码一区二区三区在线| 亚洲一二三四区在线免费看视频| 深夜激情无码| 日夜精品| 日本精品88888888| 亚洲免费成人在线高清无码视频 | 九九精品无码专区免费| 天美传媒Av在线| 国产亚洲精品玖玖玖在线观看| 九九九久| 天天综合网国产| 亚洲天堂五月天国产| 国产精品不卡一区二区三区| 怡红院一区二区熟女人妻| 亚洲精品91| 国产又大又粗又长视频在线| 一本大道不卡一二三区| 国产精品一区在线播放| 久久啊哟| 永久免费发布性爱网| 97色操| 人妻出轨一区二区三区| 人妻81p| 日骚逼视频| 上床不卡网站| 亚洲AV成人无码一区二区三区在线观看 | 精品无码一区二区三区色欲| 中文字幕97色| 激情四射五月天| 性色AV蜜色av色欲av| 激情婷婷丁香| 91色碰| 国产福利影视| 久久av无码| 四虎精品永久在线观看| 色女综合| 99操逼| 操逼日批| 久久精品无码专区| 日本东京热大香蕉a片| 国产福利精品最新在线| 中文字幕第9页萱萱影音先锋| 九九超碰综合网| 东北女人的毛片| 天天插天天插| 女人喷水视频在线观看| 老司机福利青青草| 欧美色图99| 亚洲成人妻日韩在线| 欧美性猛交美女自慰91| 午夜福利免费精品视频| 日韩熟女无码| 超碰碰97资源站| 91亚洲欧美综合高清在线| 97精品国产97久久久久久户外免费| 黄片免费久久久久久久| 国产精品ww久久| 精品国产乱码久久久久久免费| 九九拍拍精品视频在线播放 | 精品无码久久久久| 天天干天天日天天射黄色| 亚洲图片偷拍视频区| 999精品国产高清一区二区| 天天噜| 91欧美www| 男人天堂久久精品不卡| 91久久18禁| 嗯阿好爽好紧| 亚洲图片欧美91N| 色色国产| 91久热| 日本中文字幕在线电影| 亚洲国产一级精品毛一级精品看免费视频| 97国产精品视频| 91高潮| 人人妻人人澡人人爽久久av| 久热这里| 亚洲图片视频小说| 青草伊人久久| 九九九九免费视频| 内射小黄片| 在线a亚洲视频播放在线| 日本加勒比无码专区| 日韩无码人妻中字久久三区四区| 嗯嗯啊啊的视频| 91欧美综合在线| 91影视亚洲| 欧日韩在线观看| 超碰98综合网| 性性欧美| 久久同城AV| 狠色婷婷久久一区二区三区_| 曰本精品久久久| 精品一区二区三区麻豆| 97鸡把在线视频| 国产农村妇女毛片精品久久| 人人操超碰在线| 日韩欧视频| 成人国产二区三区在线,男女精品。| 深喉吞精| 97爱爱爱综合| 亚洲啪AⅤ永久无码| 17c在线成人免费A片观看| 日韩熟女乱伦中出| 亚洲精品人妻在线| 欧美日韩香蕉| 自偷自拍的亚洲视频| 亚洲 综合 欧美| 亚洲成人一二三区|