-
Notifications
You must be signed in to change notification settings - Fork 97
Open
CesiumGS/cesium-native
#1240Labels
bugSomething isn't workingSomething isn't workingurgentFor high priority issues and bugsFor high priority issues and bugs
Description
環境
- Unity バージョン: 6000.0.34f1
- Cesium for Unity バージョン: 1.17.0
- ターゲット: iOS (arm64)
- Xcode バージョン: 16.4
- macOS: 15.7
再現手順
- Unity から iOS ビルドを出力する(
Build System
= Xcode) - 出力された
Unity-iPhone.xcworkspace
を開き、ビルドするとリンクエラーが発生する
発生しているエラー(抜粋)
Undefined symbols for architecture arm64:
"_blContextBegin", referenced from:
CesiumVectorData::VectorRasterizer::VectorRasterizer(CesiumGeospatial::GlobeRectangle const&, CesiumUtility::IntrusivePointer<CesiumGltf::ImageAsset>&, unsigned int, CesiumGeospatial::Ellipsoid const&) in libCesiumVectorData.a[5](VectorRasterizer.o)
"_blContextDestroy", referenced from:
CesiumRasterOverlays::RasterizedPolygonsTileProvider::loadTileImage(CesiumRasterOverlays::RasterOverlayTile&)::'lambda'()::operator()() const in libCesiumRasterOverlays.a[13](RasterizedPolygonsOverlay.o)
CesiumVectorData::VectorRasterizer::~VectorRasterizer() in libCesiumRasterOverlays.a[13](RasterizedPolygonsOverlay.o)
"_blContextEnd", referenced from:
CesiumVectorData::VectorRasterizer::finalize() in libCesiumVectorData.a[5](VectorRasterizer.o)
"_blContextInit", referenced from:
CesiumVectorData::VectorRasterizer::VectorRasterizer(CesiumGeospatial::GlobeRectangle const&, CesiumUtility::IntrusivePointer<CesiumGltf::ImageAsset>&, unsigned int, CesiumGeospatial::Ellipsoid const&) in libCesiumVectorData.a[5](VectorRasterizer.o)
"_blImageCreateFromData", referenced from:
CesiumVectorData::VectorRasterizer::VectorRasterizer(CesiumGeospatial::GlobeRectangle const&, CesiumUtility::IntrusivePointer<CesiumGltf::ImageAsset>&, unsigned int, CesiumGeospatial::Ellipsoid const&) in libCesiumVectorData.a[5](VectorRasterizer.o)
"_blImageDestroy", referenced from:
CesiumRasterOverlays::RasterizedPolygonsTileProvider::loadTileImage(CesiumRasterOverlays::RasterOverlayTile&)::'lambda'()::operator()() const in libCesiumRasterOverlays.a[13](RasterizedPolygonsOverlay.o)
CesiumVectorData::VectorRasterizer::~VectorRasterizer() in libCesiumRasterOverlays.a[13](RasterizedPolygonsOverlay.o)
"_blImageInit", referenced from:
CesiumVectorData::VectorRasterizer::VectorRasterizer(CesiumGeospatial::GlobeRectangle const&, CesiumUtility::IntrusivePointer<CesiumGltf::ImageAsset>&, unsigned int, CesiumGeospatial::Ellipsoid const&) in libCesiumVectorData.a[5](VectorRasterizer.o)
ld: symbol(s) not found for architecture arm64
clang++: error: linker command failed with exit code 1 (use -v to see invocation)
確認したこと
- 出力フォルダ内の lib を確認したところ、
libblend2d.a
とlibasmjit.a
が含まれていませんでした(これらが無いと_blContext*
および_blImage*
シンボルが未定義になります)。 - 該当シンボルは Cesium のベクタ/ポリゴンラスタライズ処理(VectorRasterizer / RasterizedPolygonsOverlay)が Blend2D の C API を呼んでいる箇所から参照されています。
期待動作
- Cesium の iOS 出力に
libblend2d.a
とlibasmjit.a
(arm64対応の静的ライブラリ)が同梱されており、Xcodeビルド時にリンクエラーが出ないこと。
Metadata
Metadata
Assignees
Labels
bugSomething isn't workingSomething isn't workingurgentFor high priority issues and bugsFor high priority issues and bugs