Hacktoberfest 2026:メンテナが10月に向けて印を付けた、オープンで初心者向けの issue。 Hacktoberfest の issue を見る

How to use with CocoaPods

オープン
#78 コメント 4 件 リアクション 0 件 担当者 0 名 GitHub で見る

まだ誰も着手していません。

評価

難易度
4/5
見積もり時間
3〜5日
初心者へのやさしさ
28/100
issue の種類
バグ
明瞭さ
説明が足りない
活発さ
停滞
技術スタック
csharp, ios, swift

調査の方向性

再現手順で説明されている Podfile、DotnetNewBindings.swift、および .csproj 設定から始め、次に不足している Pods_NewBinding framework の周辺にある xcodebuild archive の出力を調べ、ネイティブ binding の build エントリーポイントをリポジトリ内で検索します。完了の条件は、報告されている linker エラーなしで、文書化された CocoaPods セットアップから arm64 向けの dotnet build/archive を完了できることです。

索引モデルが issue の本文から書いたものです。

説明

Hello!

I've tried to bind MLKit BarcodeScanning for iOS.

  1. Initialize cocoapods : pod init
  2. Add pod to Podfile: pod 'GoogleMLKit/BarcodeScanning', '7.0.0'
  3. Run pod install
  4. Add new method to DotnetNewBindings.swift:
    @objc
        public static func detectBarcodes(image: UIImage) async throws -> String? {
            
            let format = BarcodeFormat.all
            let barcodeOptions = BarcodeScannerOptions(formats: format)
            
            let barcodeScanner = BarcodeScanner.barcodeScanner(options: barcodeOptions)
            
            let visionImage = VisionImage(image: image)
            visionImage.orientation = image.imageOrientation
            
            let barcodes = try await barcodeScanner.process(visionImage)
            guard !barcodes.isEmpty else {
                return nil
            }
            
            for barcode in barcodes {
                return barcode.displayValue
            }
            
            return nil
        }
    
  5. Ensure the target platform is arm64 (It doesn't work with emulators)
  6. Build project. Build passed.
  7. Add <RuntimeIdentifiers>ios-arm64;</RuntimeIdentifiers> in csproj
  8. Run dotnet build.

I get errors:

    /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang -Xlinker -reproducible -target arm64-apple-ios16.6 -dynamiclib -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS18.2.sdk -Os -L/Users/vladislav/Virtual\ Machines.localized/Shared/MLKitBinding/macios/NewBinding.MaciOS.Binding/obj/Debug/net9.0-ios/xcode/DerivedData/Build/Intermediates.noindex/ArchiveIntermediates/NewBinding/IntermediateBuildFilesPath/EagerLinkingTBDs/Release-iphoneos -L/Users/vladislav/Virtual\ Machines.localized/Shared/MLKitBinding/macios/NewBinding.MaciOS.Binding/obj/Debug/net9.0-ios/xcode/DerivedData/Build/Intermediates.noindex/ArchiveIntermediates/NewBinding/BuildProductsPath/Release-iphoneos -L/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/swift/iphoneos -L/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS18.2.sdk/usr/lib/swift -F/Users/vladislav/Virtual\ Machines.localized/Shared/MLKitBinding/macios/NewBinding.MaciOS.Binding/obj/Debug/net9.0-ios/xcode/DerivedData/Build/Intermediates.noindex/ArchiveIntermediates/NewBinding/IntermediateBuildFilesPath/EagerLinkingTBDs/Release-iphoneos -F/Users/vladislav/Virtual\ Machines.localized/Shared/MLKitBinding/macios/NewBinding.MaciOS.Binding/obj/Debug/net9.0-ios/xcode/DerivedData/Build/Intermediates.noindex/ArchiveIntermediates/NewBinding/BuildProductsPath/Release-iphoneos -F/Users/vladislav/Virtual\ Machines.localized/Shared/MLKitBinding/macios/NewBinding.MaciOS.Binding/obj/Debug/net9.0-ios/xcode/DerivedData/Build/Intermediates.noindex/ArchiveIntermediates/NewBinding/BuildProductsPath/Release-iphoneos/GTMSessionFetcher -F/Users/vladislav/Virtual\ Machines.localized/Shared/MLKitBinding/macios/NewBinding.MaciOS.Binding/obj/Debug/net9.0-ios/xcode/DerivedData/Build/Intermediates.noindex/ArchiveIntermediates/NewBinding/BuildProductsPath/Release-iphoneos/GoogleDataTransport -F/Users/vladislav/Virtual\ Machines.localized/Shared/MLKitBinding/macios/NewBinding.MaciOS.Binding/obj/Debug/net9.0-ios/xcode/DerivedData/Build/Intermediates.noindex/ArchiveIntermediates/NewBinding/BuildProductsPath/Release-iphoneos/GoogleToolboxForMac -F/Users/vladislav/Virtual\ Machines.localized/Shared/MLKitBinding/macios/NewBinding.MaciOS.Binding/obj/Debug/net9.0-ios/xcode/DerivedData/Build/Intermediates.noindex/ArchiveIntermediates/NewBinding/BuildProductsPath/Release-iphoneos/GoogleUtilities -F/Users/vladislav/Virtual\ Machines.localized/Shared/MLKitBinding/macios/NewBinding.MaciOS.Binding/obj/Debug/net9.0-ios/xcode/DerivedData/Build/Intermediates.noindex/ArchiveIntermediates/NewBinding/BuildProductsPath/Release-iphoneos/PromisesObjC -F/Users/vladislav/Virtual\ Machines.localized/Shared/MLKitBinding/macios/NewBinding.MaciOS.Binding/obj/Debug/net9.0-ios/xcode/DerivedData/Build/Intermediates.noindex/ArchiveIntermediates/NewBinding/BuildProductsPath/Release-iphoneos/nanopb -F/Users/vladislav/Virtual\ Machines.localized/Shared/MLKitBinding/macios/native/NewBinding/Pods/MLImage/Frameworks -F/Users/vladislav/Virtual\ Machines.localized/Shared/MLKitBinding/macios/native/NewBinding/Pods/MLKitBarcodeScanning/Frameworks -F/Users/vladislav/Virtual\ Machines.localized/Shared/MLKitBinding/macios/native/NewBinding/Pods/MLKitCommon/Frameworks -F/Users/vladislav/Virtual\ Machines.localized/Shared/MLKitBinding/macios/native/NewBinding/Pods/MLKitVision/Frameworks -filelist /Users/vladislav/Virtual\ Machines.localized/Shared/MLKitBinding/macios/NewBinding.MaciOS.Binding/obj/Debug/net9.0-ios/xcode/DerivedData/Build/Intermediates.noindex/ArchiveIntermediates/NewBinding/IntermediateBuildFilesPath/NewBinding.build/Release-iphoneos/NewBinding.build/Objects-normal/arm64/NewBinding.LinkFileList -install_name @rpath/NewBinding.framework/NewBinding -Xlinker -rpath -Xlinker @executable_path/Frameworks -Xlinker -rpath -Xlinker @loader_path/Frameworks -dead_strip -Xlinker -object_path_lto -Xlinker /Users/vladislav/Virtual\ Machines.localized/Shared/MLKitBinding/macios/NewBinding.MaciOS.Binding/obj/Debug/net9.0-ios/xcode/DerivedData/Build/Intermediates.noindex/ArchiveIntermediates/NewBinding/IntermediateBuildFilesPath/NewBinding.build/Release-iphoneos/NewBinding.build/Objects-normal/arm64/NewBinding_lto.o -Xlinker -final_output -Xlinker /Library/Frameworks/NewBinding.framework/NewBinding -fobjc-link-runtime -L/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/swift/iphoneos -L/usr/lib/swift -Xlinker -add_ast_path -Xlinker /Users/vladislav/Virtual\ Machines.localized/Shared/MLKitBinding/macios/NewBinding.MaciOS.Binding/obj/Debug/net9.0-ios/xcode/DerivedData/Build/Intermediates.noindex/ArchiveIntermediates/NewBinding/IntermediateBuildFilesPath/NewBinding.build/Release-iphoneos/NewBinding.build/Objects-normal/arm64/NewBinding.swiftmodule -ObjC -framework Pods_NewBinding -Xlinker -no_adhoc_codesign -compatibility_version 1 -current_version 1 -Xlinker -dependency_info -Xlinker /Users/vladislav/Virtual\ Machines.localized/Shared/MLKitBinding/macios/NewBinding.MaciOS.Binding/obj/Debug/net9.0-ios/xcode/DerivedData/Build/Intermediates.noindex/ArchiveIntermediates/NewBinding/IntermediateBuildFilesPath/NewBinding.build/Release-iphoneos/NewBinding.build/Objects-normal/arm64/NewBinding_dependency_info.dat -o /Users/vladislav/Virtual\ Machines.localized/Shared/MLKitBinding/macios/NewBinding.MaciOS.Binding/obj/Debug/net9.0-ios/xcode/DerivedData/Build/Intermediates.noindex/ArchiveIntermediates/NewBinding/InstallationBuildProductsLocation/Library/Frameworks/NewBinding.framework/NewBinding
ld: warning: search path '/Users/vladislav/Virtual Machines.localized/Shared/MLKitBinding/macios/NewBinding.MaciOS.Binding/obj/Debug/net9.0-ios/xcode/DerivedData/Build/Intermediates.noindex/ArchiveIntermediates/NewBinding/BuildProductsPath/Release-iphoneos/GTMSessionFetcher' not found
ld: warning: search path '/Users/vladislav/Virtual Machines.localized/Shared/MLKitBinding/macios/NewBinding.MaciOS.Binding/obj/Debug/net9.0-ios/xcode/DerivedData/Build/Intermediates.noindex/ArchiveIntermediates/NewBinding/BuildProductsPath/Release-iphoneos/GoogleDataTransport' not found
ld: warning: search path '/Users/vladislav/Virtual Machines.localized/Shared/MLKitBinding/macios/NewBinding.MaciOS.Binding/obj/Debug/net9.0-ios/xcode/DerivedData/Build/Intermediates.noindex/ArchiveIntermediates/NewBinding/BuildProductsPath/Release-iphoneos/GoogleToolboxForMac' not found
ld: warning: search path '/Users/vladislav/Virtual Machines.localized/Shared/MLKitBinding/macios/NewBinding.MaciOS.Binding/obj/Debug/net9.0-ios/xcode/DerivedData/Build/Intermediates.noindex/ArchiveIntermediates/NewBinding/BuildProductsPath/Release-iphoneos/GoogleUtilities' not found
ld: warning: search path '/Users/vladislav/Virtual Machines.localized/Shared/MLKitBinding/macios/NewBinding.MaciOS.Binding/obj/Debug/net9.0-ios/xcode/DerivedData/Build/Intermediates.noindex/ArchiveIntermediates/NewBinding/BuildProductsPath/Release-iphoneos/PromisesObjC' not found
ld: warning: search path '/Users/vladislav/Virtual Machines.localized/Shared/MLKitBinding/macios/NewBinding.MaciOS.Binding/obj/Debug/net9.0-ios/xcode/DerivedData/Build/Intermediates.noindex/ArchiveIntermediates/NewBinding/BuildProductsPath/Release-iphoneos/nanopb' not found
ld: framework 'Pods_NewBinding' not found
clang: error: linker command failed with exit code 1 (use -v to see invocation)

note: Disabling previews because SWIFT_VERSION is set and SWIFT_OPTIMIZATION_LEVEL=-O, expected -Onone (in target 'NewBinding' from project 'NewBinding')

** ARCHIVE FAILED **


The following build commands failed:
	Ld /Users/vladislav/Virtual\ Machines.localized/Shared/MLKitBinding/macios/NewBinding.MaciOS.Binding/obj/Debug/net9.0-ios/xcode/DerivedData/Build/Intermediates.noindex/ArchiveIntermediates/NewBinding/InstallationBuildProductsLocation/Library/Frameworks/NewBinding.framework/NewBinding normal (in target 'NewBinding' from project 'NewBinding')
	Archiving project NewBinding with scheme NewBinding
(2 failures)

0>Microsoft.MaciOS.Sdk.Xcode.targets(80,5): Error  : xcodebuild exited with code 65:
** ARCHIVE FAILED **


The following build commands failed:
	Ld /Users/vladislav/Virtual\ Machines.localized/Shared/MLKitBinding/macios/NewBinding.MaciOS.Binding/obj/Debug/net9.0-ios/xcode/DerivedData/Build/Intermediates.noindex/ArchiveIntermediates/NewBinding/InstallationBuildProductsLocation/Library/Frameworks/NewBinding.framework/NewBinding normal (in target 'NewBinding' from project 'NewBinding')
	Archiving project NewBinding with scheme NewBinding
(2 failures)
主要言語
C#
スター
249
フォーク
48
PR マージ指標
30日以内にマージされた PR はありません

環境構築

このプロジェクトには開発コンテナ、Dockerfile、コントリビューションガイドがありません。まず README を読み、一般的な手順ははじめてのコントリビューションガイドを参照してください。

はじめの一歩

  1. issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
  2. 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
  3. リポジトリをフォークし、ブランチを切って変更します。
  4. issue 番号を参照したプルリクエストを送ります。

CommunityToolkit/Maui.NativeLibraryInterop のほかの issue

CommunityToolkit/Maui.NativeLibraryInterop の issue をすべて見る

似ている issue

C# の issue をもっと見る

新しい issue をメールで受け取る

初心者向けの GitHub issue を短くまとめたダイジェスト。