建的完整指南)
5 分鐘跑通 CloudCompare 源碼編譯從最小版本到定制構(gòu)建的完整指南【免費(fèi)下載鏈接】CloudCompareCloudCompare main repository項(xiàng)目地址: https://gitcode.com/gh_mirrors/cl/CloudCompareCloudCompare 是一款開源的 3D 點(diǎn)云與網(wǎng)格處理軟件配準(zhǔn)、分割、分類、距離計(jì)算、柵格化這些點(diǎn)云后處理的核心操作它幾乎全覆蓋。直接裝官方包當(dāng)然省事但CloudCompare 源碼編譯才讓你拿到自己想要的東西——只編譯需要的插件、接入內(nèi)部依賴、或者改幾行邏輯重新出包。整個(gè)過程比想象中簡(jiǎn)單先跑通一個(gè)最小版本再按需求逐項(xiàng)加料。5 分鐘拿到第一個(gè)可執(zhí)行文件先給結(jié)論只要CMake Qt兩樣?xùn)|西外加一條帶--recursive的克隆命令其余全靠默認(rèn)值。CMake3.13 及以上Linux 上舊版 CMake 會(huì)導(dǎo)致 rpath 問題后面細(xì)說Qt當(dāng)前主線2.14要求 Qt 6如果你維護(hù)的是 2.13 舊分支則支持 Qt 5.12–5.15平臺(tái)Qt 獲取方式說明WindowsQt 官網(wǎng)安裝器裝時(shí)記得勾選對(duì)應(yīng)編譯器套件如 msvc2019_64macOS官網(wǎng)安裝器或 Homebrew也可用倉(cāng)庫(kù)自帶的 pixi 一鍵環(huán)境Linux發(fā)行版包管理器Ubuntu 24 裝 Qt6 系列包舊版裝qt5-default全家桶然后就是四步走全程不到一杯咖啡的時(shí)間# 1. 克隆--recursive 必須帶外部庫(kù)和插件走的是 Git 子模塊 git clone --recursive https://gitcode.com/gh_mirrors/cl/CloudCompare cd CloudCompare # 2. 配置Windows / macOS 需告訴 CMake Qt 在哪Linux 一般可省略 mkdir build cd build cmake -DCMAKE_PREFIX_PATH你的Qt路徑 .. # 3. 構(gòu)建 cmake --build . --parallel # 4. 安裝到指定目錄可執(zhí)行文件、插件、資源會(huì)按平臺(tái)規(guī)則落位 cmake --install .構(gòu)建完成后Linux 下可執(zhí)行文件在build/bin/Windows / macOS 走安裝流程分別落到CloudCompare/和ccViewer/目錄。能雙擊打開主窗口恭喜最小版本通了。按需增強(qiáng)我要什么就打開什么最小版本之外所有增強(qiáng)項(xiàng)都是 CMake 階段一個(gè)-D開關(guān)ON的事。下面按目標(biāo) → 開關(guān)的方式組織照著查就行。核心功能開關(guān)你的目標(biāo)打開什么備注不想編譯精簡(jiǎn)查看器 ccViewer-DOPTION_BUILD_CCVIEWEROFF默認(rèn) ON讀取 SHP / DXF 矢量文件不用動(dòng)默認(rèn)開啟OPTION_USE_SHAPE_LIB/OPTION_USE_DXF_LIB需要裁剪時(shí)才關(guān)讀取各類柵格文件DEM、影像等-DOPTION_USE_GDALON需自備 GDAL填頭文件/庫(kù)/DLL 三個(gè)路徑變量GL 插件改視覺效果你的目標(biāo)打開什么點(diǎn)云深度感更強(qiáng)Eye Dome Lighting-DPLUGIN_GL_QEDLON屏幕空間環(huán)境光遮蔽細(xì)節(jié)更立體-DPLUGIN_GL_QSSAOONIO 插件決定能打開什么文件你的目標(biāo)打開什么額外依賴讀 LAS / LAZ最常用-DPLUGIN_IO_QLASONLASZIP推薦方案讀 E57 傳感器數(shù)據(jù)-DPLUGIN_IO_QE57ONXerces-C 靜態(tài)庫(kù) libE57讀 Autodesk FBX-DPLUGIN_IO_QFBXONFBX SDK填 3 個(gè)路徑變量讀 STEP CAD 文件-DPLUGIN_IO_QSTEPONOpenCascade讀 PCD 等 PCL 格式-DPLUGIN_STANDARD_QPCLONPCL 庫(kù)讀 CSV 矩陣 / RDB / DRC 等PLUGIN_IO_QCSV_MATRIX等對(duì)應(yīng)開關(guān)視格式而定?? 兩個(gè)老方案qPDALIO、qLASFWFIO已標(biāo)記棄用新構(gòu)建請(qǐng)直接選 qLASIO別在棄用路上浪費(fèi)時(shí)間。標(biāo)準(zhǔn)插件功能擴(kuò)展全部在 plugins/core/Standard/ 目錄下命名規(guī)律是-DPLUGIN_STANDARD_插件名ON你的目標(biāo)打開什么穩(wěn)健的點(diǎn)云距離計(jì)算M3C2-DPLUGIN_STANDARD_QM3C2ON地面/非地面自動(dòng)分類-DPLUGIN_STANDARD_QCSFON或 q3DMASC、qCanupo泊松表面重建-DPLUGIN_STANDARD_QPOISSON_RECONON交互式虛擬掃帚清理點(diǎn)云-DPLUGIN_STANDARD_QBROOMON錄制旋轉(zhuǎn)展示視頻-DPLUGIN_STANDARD_QANIMATIONON要出片再加-DQANIMATION_WITH_FFMPEG_SUPPORTON隱藏點(diǎn)去除、RANSAC 形狀檢測(cè)、環(huán)境光遮蔽等qHPR/qRANSAC_SD/qPCV對(duì)應(yīng)開關(guān)所有開關(guān)可以在一次配置里疊加例如同時(shí)開 LAS 讀取和 EDL 效果cmake .. -DPLUGIN_IO_QLASON -DPLUGIN_GL_QEDLON三大平臺(tái)避坑指南Windows該做的Qt 用官網(wǎng)安裝器裝好想加快 Visual Studio 編譯就開-DOPTION_MP_BUILDON多進(jìn)程編譯吃 CPU 但快。最容易踩的坑默認(rèn)調(diào)試配置下按 F5 直接跑不起來——因?yàn)榭蓤?zhí)行文件、插件、DLL 必須先cmake --install到同一目錄才能一起工作。調(diào)試插件請(qǐng)先跑安裝再改啟動(dòng)工作目錄。另外CMAKE_INSTALL_PREFIX別指向Program FilesCMake 沒有寫權(quán)限。macOS該做的最省心的路徑是倉(cāng)庫(kù)自帶的 pixi 環(huán)境pixi.tomlpixi run build然后pixi run CloudCompare依賴全部托管要打包獨(dú)立.app用pixi run bundle。最容易踩的坑本地開發(fā)時(shí)程序默認(rèn)從應(yīng)用 bundle 找插件找不到剛編出來的。配置時(shí)加-DCC_MAC_DEV_PATHS讓它改從構(gòu)建目錄加載再把需要的 shader 手動(dòng)拷一份到構(gòu)建目錄的shaders/下。Linux該做的Qt 走包管理器裝CMake 用 3.13 以上的新版本。最容易踩的坑老版本 CMake3.13編出來的程序會(huì)隱式鏈接/usr/local的庫(kù)換個(gè)用戶環(huán)境就跑不起來。另外裝到默認(rèn)/usr/local需要管理員權(quán)限個(gè)人開發(fā)建議自定義CMAKE_INSTALL_PREFIX到 home 目錄下。排錯(cuò)速查遇到 CloudCompare 編譯報(bào)錯(cuò)九成集中在下面幾種癥狀處理辦法CMake 配置階段找不到 Qt補(bǔ)-DCMAKE_PREFIX_PATHQt根目錄Windows / macOS 必查項(xiàng)報(bào) not advised to BUILD the binaries directly in the SOURCE folder別在源碼目錄里直接構(gòu)建單獨(dú)建build/子目錄再來程序能跑但某個(gè)插件 / 中文不顯示 / 著色器缺失用環(huán)境變量指定搜索路徑見下DEBUG 模式單配置編譯器gcc 等下插件不加載在plugins/CMakePluginTpl.cmake里注釋掉QT_NO_DEBUG宏定義打開.pcd文件提示無(wú)法讀取編譯時(shí)沒開-DPLUGIN_STANDARD_QPCLON補(bǔ)上重新構(gòu)建插件、著色器、翻譯文件的加載路徑支持三個(gè)環(huán)境變量覆蓋路徑可以是相對(duì)或絕對(duì)實(shí)現(xiàn)見 ccApplicationBase.cppexport CC_PLUGIN_PATH/path/to/plugins # 插件搜索路徑支持列表分隔符 export CC_SHADER_PATH/path/to/shaders # 著色器目錄 export CC_TRANSLATION_PATH/path/to/i18n # 翻譯文件目錄CC_PLUGIN_PATH的路徑優(yōu)先級(jí)最高排在內(nèi)置路徑和用戶 AppData 目錄之前——調(diào)試自己編的插件時(shí)直接指過去不用反復(fù)安裝。寫在最后CloudCompare 源碼編譯的骨架其實(shí)就一句話先跑通最小版本再用-D開關(guān)ON按需增強(qiáng)。完整的構(gòu)建細(xì)節(jié)、各插件依賴的逐項(xiàng)說明都在倉(cāng)庫(kù)根目錄的 BUILD.md 里更多可選插件的實(shí)現(xiàn)可以直接逛 plugins/core/ 下的 GL / IO / Standard 三個(gè)子目錄。編譯順利的話去 qCC/doc/ 翻翻內(nèi)部文檔改點(diǎn)東西就是水到渠成的事了。【免費(fèi)下載鏈接】CloudCompareCloudCompare main repository項(xiàng)目地址: https://gitcode.com/gh_mirrors/cl/CloudCompare創(chuàng)作聲明:本文部分內(nèi)容由AI輔助生成(AIGC),僅供參考