Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

problem generating iOS app for version 4.4.0 #1326

Closed
CreetionMotia opened this issue Dec 20, 2021 · 40 comments
Closed

problem generating iOS app for version 4.4.0 #1326

CreetionMotia opened this issue Dec 20, 2021 · 40 comments
Labels

Comments

@CreetionMotia
Copy link

CreetionMotia commented Dec 20, 2021

Your Environment

  • Plugin version: 4.4.0
  • Platform: iOS
  • OS version: iOS 15
  • Device manufacturer / model: Apple iPhone 12
  • Cordova CLI: 10.0.0
  • Cordova Engine: 6.2.0
  • Xcode: 13.0
  • Cocoa Pods: 1.11.2
  • MABS 8.0
  • Plugin config provided to #ready:
var bgGeo = window.BackgroundGeolocation;
var userId = $parameters.UserId;
var deviceId = $parameters.DeviceHardwareId;
var platform = $parameters.OperatingSystem;
var deviceRecordId = $parameters.DeviceRecordId;

bgGeo.ready({
    reset: true,
    // [Geolocation] Common Options
    desiredAccuracy: bgGeo.DESIRED_ACCURACY_HIGH, // GPS + Wifi + Cellular + Highest power; highest accuracy 
    distanceFilter: 10, // distance in meters 
    elasticityMultiplier: 25, // the harder the speed we send less locations
    
    // [Geolocation] iOS Options
    //< not needed atm needs further investigation>
    
    // [Activity Recognition] Common Options
    activityRecognitionInterval: 3000,  //The desired time between activity detections.
    
    // [Activity Recognition] iOS Options
    // Not needed at the moment
    
    // HTTP & Persistence Options
    url: $parameters.LTP_EndpointURL,
    httpTimeout: 30000, // default is 60k however this seems like a lot?
    extras: { "userid": userId, "deviceid": deviceId, "platform": platform, "devicerecordid": deviceRecordId }, //Are defined at the BGEOSTART action
    method: 'POST',
    httpRootProperty: "Location",
    locationTemplate: '{ "latitude":<%= latitude %>, "longitude":<%= longitude %>, "speed":<%= speed %>, "heading":<%= heading %>, "accuracy":<%= accuracy %>, "altitude":<%= altitude %>, "altitude_accuracy":<%= altitude_accuracy %>, "timestamp":"<%= timestamp %>", "uuid":"<%= uuid %>", "event":"<%= event %>", "odometer":<%= odometer %>, "activity.type":"<%= activity.type %>", "activity.confidence": <%= activity.confidence %>, "battery.level": <%= battery.level %>, "battery.is_charging": <%= battery.is_charging %>}',
    autoSync: true, // 
    autoSyncThreshol: 5, // test value
    batchSync: true, // test
    maxBatchSize: 5, // test
    
    
    //[Application] Common Options
    stopOnTerminate: false, 
    startOnBoot: true,
    heartbeatInterval: 300, // every 5 min
    
    //[Application] iOS Options 
    preventSuspend: false,
    
    // Logging & Debug Options

});

Expected Behavior

We're trying to generate an iOS app through Outsystems for cordova-background-geolocation-lt plugin v-4.4.0

Actual Behavior

When generating the app it seems we are running into an issue with arm64

Context

When trying to generate the iOS app we're getting an error that the app can not be generated.
The sandbox application only uses actions needed for the plug-in. No other (extra) actions or screens are being used in this application.

Debug logs

Logs
Build Log: https://drive.google.com/file/d/1O_ndU73hVJdM-wRcpfR2PncBSpdNjIVt/view?usp=sharing
[Mobile\]/IntermediateBuildFilesPath/UninstalledProducts/iphoneos/include -Isource/platforms/ios/build/device -Isource/platforms/ios/Pods/Headers/Public -Isource/platforms/ios/Pods/Headers/Public/CocoaLumberjack -Isource/platforms/ios/Pods/Headers/Public/FLEX -Isource/platforms/ios/Pods/Headers/Public/PureeOS -Isource/platforms/ios/Pods/Headers/Public/YapDatabase -I/Users/sandbox03/Library/Developer/Xcode/DerivedData/Sanbox_Alex_\[Mobile\]-drkzfhmhpvgbynddkbqaqrniinmw/Build/Intermediates.noindex/ArchiveIntermediates/Sanbox\ Alex\ \[Mobile\]/IntermediateBuildFilesPath/Sanbox\ Alex\ \[Mobile\].build/Debug-iphoneos/Sanbox\ Alex\ \[Mobile\].build/DerivedSources-normal/arm64 -I/Users/sandbox03/Library/Developer/Xcode/DerivedData/Sanbox_Alex_\[Mobile\]-drkzfhmhpvgbynddkbqaqrniinmw/Build/Intermediates.noindex/ArchiveIntermediates/Sanbox\ Alex\ \[Mobile\]/IntermediateBuildFilesPath/Sanbox\ Alex\ \[Mobile\].build/Debug-iphoneos/Sanbox\ Alex\ \[Mobile\].build/DerivedSources/arm64 -I/Users/sandbox03/Library/Developer/Xcode/DerivedData/Sanbox_Alex_\[Mobile\]-drkzfhmhpvgbynddkbqaqrniinmw/Build/Intermediates.noindex/ArchiveIntermediates/Sanbox\ Alex\ \[Mobile\]/IntermediateBuildFilesPath/Sanbox\ Alex\ \[Mobile\].build/Debug-iphoneos/Sanbox\ Alex\ \[Mobile\].build/DerivedSources -Fsource/platforms/ios/build/device -FSanbox\ Alex\ \[Mobile\]/Plugins/cordova-plugin-background-fetch -FSanbox\ Alex\ \[Mobile\]/Plugins/cordova-background-geolocation-lt -DYAP_STANDARD_SQLITE -include source/platforms/ios/build/sharedpch/SharedPrecompiledHeaders/6231132498356556039/Sanbox\ Alex\ \[Mobile\]-Prefix.pch -MMD -MT dependencies -MF /Users/sandbox03/Library/Developer/Xcode/DerivedData/Sanbox_Alex_\[Mobile\]-drkzfhmhpvgbynddkbqaqrniinmw/Build/Intermediates.noindex/ArchiveIntermediates/Sanbox\ Alex\ \[Mobile\]/IntermediateBuildFilesPath/Sanbox\ Alex\ \[Mobile\].build/Debug-iphoneos/Sanbox\ Alex\ \[Mobile\].build/Objects-normal/arm64/AppDelegate.d --serialize-diagnostics /Users/sandbox03/Library/Developer/Xcode/DerivedData/Sanbox_Alex_\[Mobile\]-drkzfhmhpvgbynddkbqaqrniinmw/Build/Intermediates.noindex/ArchiveIntermediates/Sanbox\ Alex\ \[Mobile\]/IntermediateBuildFilesPath/Sanbox\ Alex\ \[Mobile\].build/Debug-iphoneos/Sanbox\ Alex\ \[Mobile\].build/Objects-normal/arm64/AppDelegate.dia -c source/platforms/ios/Sanbox\ Alex\ \[Mobile\]/Classes/AppDelegate.m -o /Users/sandbox03/Library/Developer/Xcode/DerivedData/Sanbox_Alex_\[Mobile\]-drkzfhmhpvgbynddkbqaqrniinmw/Build/Intermediates.noindex/ArchiveIntermediates/Sanbox\ Alex\ \[Mobile\]/IntermediateBuildFilesPath/Sanbox\ Alex\ \[Mobile\].build/Debug-iphoneos/Sanbox\ Alex\ \[Mobile\].build/Objects-normal/arm64/AppDelegate.o
[2021-12-08T12:04:50.891Z] [VERBOSE] [Build] Ld /Users/sandbox03/Library/Developer/Xcode/DerivedData/Sanbox_Alex_[Mobile]-drkzfhmhpvgbynddkbqaqrniinmw/Build/Intermediates.noindex/ArchiveIntermediates/Sanbox\ Alex\ [Mobile]/InstallationBuildProductsLocation/Applications/Sanbox\ Alex\ [Mobile].app/Sanbox\ Alex\ [Mobile] normal (in target 'Sanbox Alex [Mobile]' from project 'Sanbox Alex [Mobile]')
[2021-12-08T12:04:50.891Z] [VERBOSE] [Build] cd source/platforms/ios
[2021-12-08T12:04:50.891Z] [VERBOSE] [Build] /Applications/Xcode-13.0.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang -target arm64-apple-ios13.0 -isysroot /Applications/Xcode-13.0.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS15.0.sdk -Lsource/platforms/ios/build/device -L/Users/sandbox03/Library/Developer/Xcode/DerivedData/Sanbox_Alex_\[Mobile\]-drkzfhmhpvgbynddkbqaqrniinmw/Build/Intermediates.noindex/ArchiveIntermediates/Sanbox\ Alex\ \[Mobile\]/BuildProductsPath/Debug-iphoneos/CocoaLumberjack -L/Users/sandbox03/Library/Developer/Xcode/DerivedData/Sanbox_Alex_\[Mobile\]-drkzfhmhpvgbynddkbqaqrniinmw/Build/Intermediates.noindex/ArchiveIntermediates/Sanbox\ Alex\ \[Mobile\]/BuildProductsPath/Debug-iphoneos/FLEX -L/Users/sandbox03/Library/Developer/Xcode/DerivedData/Sanbox_Alex_\[Mobile\]-drkzfhmhpvgbynddkbqaqrniinmw/Build/Intermediates.noindex/ArchiveIntermediates/Sanbox\ Alex\ \[Mobile\]/BuildProductsPath/Debug-iphoneos/PureeOS -L/Users/sandbox03/Library/Developer/Xcode/DerivedData/Sanbox_Alex_\[Mobile\]-drkzfhmhpvgbynddkbqaqrniinmw/Build/Intermediates.noindex/ArchiveIntermediates/Sanbox\ Alex\ \[Mobile\]/BuildProductsPath/Debug-iphoneos/YapDatabase -Fsource/platforms/ios/build/device -FSanbox\ Alex\ \[Mobile\]/Plugins/cordova-plugin-background-fetch -FSanbox\ Alex\ \[Mobile\]/Plugins/cordova-background-geolocation-lt -filelist /Users/sandbox03/Library/Developer/Xcode/DerivedData/Sanbox_Alex_\[Mobile\]-drkzfhmhpvgbynddkbqaqrniinmw/Build/Intermediates.noindex/ArchiveIntermediates/Sanbox\ Alex\ \[Mobile\]/IntermediateBuildFilesPath/Sanbox\ Alex\ \[Mobile\].build/Debug-iphoneos/Sanbox\ Alex\ \[Mobile\].build/Objects-normal/arm64/Sanbox\ Alex\ \[Mobile\].LinkFileList -Xlinker -rpath -Xlinker @executable_path/Frameworks -dead_strip -Xlinker -object_path_lto -Xlinker /Users/sandbox03/Library/Developer/Xcode/DerivedData/Sanbox_Alex_\[Mobile\]-drkzfhmhpvgbynddkbqaqrniinmw/Build/Intermediates.noindex/ArchiveIntermediates/Sanbox\ Alex\ \[Mobile\]/IntermediateBuildFilesPath/Sanbox\ Alex\ \[Mobile\].build/Debug-iphoneos/Sanbox\ Alex\ \[Mobile\].build/Objects-normal/arm64/Sanbox\ Alex\ \[Mobile\]_lto.o -Xlinker -export_dynamic -Xlinker -no_deduplicate -Xlinker -final_output -Xlinker /Applications/Sanbox\ Alex\ \[Mobile\].app/Sanbox\ Alex\ \[Mobile\] -fobjc-arc -fobjc-link-runtime -ObjC -ObjC -lCocoaLumberjack -lFLEX -lPureeOS -lYapDatabase -lc++ -lsqlite3 -lz -framework CoreGraphics -framework Foundation -framework SystemConfiguration -framework UIKit source/platforms/ios/build/device/libCordova.a -weak_framework SystemConfiguration -framework CoreTelephony -lPods-Sanbox\ Alex\ \[Mobile\] -framework CoreLocation -framework CoreBluetooth -framework Photos -framework AVFoundation -framework UserNotifications -framework Contacts -framework AddressBook -framework EventKit -framework CoreMotion -framework TSBackgroundFetch -weak_framework AudioToolbox -weak-lsqlite3 -weak-lz -framework TSLocationManager -Xlinker -no_adhoc_codesign -Xlinker -dependency_info -Xlinker /Users/sandbox03/Library/Developer/Xcode/DerivedData/Sanbox_Alex_\[Mobile\]-drkzfhmhpvgbynddkbqaqrniinmw/Build/Intermediates.noindex/ArchiveIntermediates/Sanbox\ Alex\ \[Mobile\]/IntermediateBuildFilesPath/Sanbox\ Alex\ \[Mobile\].build/Debug-iphoneos/Sanbox\ Alex\ \[Mobile\].build/Objects-normal/arm64/Sanbox\ Alex\ \[Mobile\]_dependency_info.dat -o /Users/sandbox03/Library/Developer/Xcode/DerivedData/Sanbox_Alex_\[Mobile\]-drkzfhmhpvgbynddkbqaqrniinmw/Build/Intermediates.noindex/ArchiveIntermediates/Sanbox\ Alex\ \[Mobile\]/InstallationBuildProductsLocation/Applications/Sanbox\ Alex\ \[Mobile\].app/Sanbox\ Alex\ \[Mobile\]
[2021-12-08T12:04:50.895Z] [VERBOSE] [Build] ld: warning: directory not found for option '-L/Users/sandbox03/Library/Developer/Xcode/DerivedData/Sanbox_Alex_[Mobile]-drkzfhmhpvgbynddkbqaqrniinmw/Build/Intermediates.noindex/ArchiveIntermediates/Sanbox Alex [Mobile]/BuildProductsPath/Debug-iphoneos/CocoaLumberjack'
[2021-12-08T12:04:50.895Z] [VERBOSE] [Build] ld: warning: directory not found for option '-L/Users/sandbox03/Library/Developer/Xcode/DerivedData/Sanbox_Alex_[Mobile]-drkzfhmhpvgbynddkbqaqrniinmw/Build/Intermediates.noindex/ArchiveIntermediates/Sanbox Alex [Mobile]/BuildProductsPath/Debug-iphoneos/FLEX'
[2021-12-08T12:04:50.895Z] [VERBOSE] [Build] ld: warning: directory not found for option '-L/Users/sandbox03/Library/Developer/Xcode/DerivedData/Sanbox_Alex_[Mobile]-drkzfhmhpvgbynddkbqaqrniinmw/Build/Intermediates.noindex/ArchiveIntermediates/Sanbox Alex [Mobile]/BuildProductsPath/Debug-iphoneos/PureeOS'
[2021-12-08T12:04:50.895Z] [VERBOSE] [Build] ld: warning: directory not found for option '-L/Users/sandbox03/Library/Developer/Xcode/DerivedData/Sanbox_Alex_[Mobile]-drkzfhmhpvgbynddkbqaqrniinmw/Build/Intermediates.noindex/ArchiveIntermediates/Sanbox Alex [Mobile]/BuildProductsPath/Debug-iphoneos/YapDatabase'
[2021-12-08T12:04:51.149Z] [VERBOSE] [Build] Undefined symbols for architecture arm64:
[2021-12-08T12:04:51.150Z] [VERBOSE] [Build] "_OBJC_CLASS_$_DDOSLogger", referenced from:
[2021-12-08T12:04:51.150Z] [VERBOSE] [Build] objc-class-ref in TSLocationManager(TSLog.o)
[2021-12-08T12:04:51.152Z] [VERBOSE] [Build] ld: symbol(s) not found for architecture arm64
[2021-12-08T12:04:51.154Z] [VERBOSE] [Build] clang: error: linker command failed with exit code 1 (use -v to see invocation)
[2021-12-08T12:04:51.830Z] [VERBOSE] [Build] source/platforms/ios/Pods/Pods.xcodeproj: warning: The iOS deployment target 'IPHONEOS_DEPLOYMENT_TARGET' is set to 5.0, but the range of supported deployment target versions is 9.0 to 15.0.99. (in target 'CocoaLumberjack' from project 'Pods')
[2021-12-08T12:04:51.832Z] [VERBOSE] [Build] source/platforms/ios/Pods/Pods.xcodeproj: warning: The iOS deployment target 'IPHONEOS_DEPLOYMENT_TARGET' is set to 6.0, but the range of supported deployment target versions is 9.0 to 15.0.99. (in target 'YapDatabase' from project 'Pods')
[2021-12-08T12:04:51.844Z] [VERBOSE] [Build] ** ARCHIVE FAILED **
[2021-12-08T12:04:51.844Z] [VERBOSE] [Build] The following build commands failed:
[2021-12-08T12:04:51.844Z] [VERBOSE] [Build] Ld /Users/sandbox03/Library/Developer/Xcode/DerivedData/Sanbox_Alex_[Mobile]-drkzfhmhpvgbynddkbqaqrniinmw/Build/Intermediates.noindex/ArchiveIntermediates/Sanbox\ Alex\ [Mobile]/InstallationBuildProductsLocation/Applications/Sanbox\ Alex\ [Mobile].app/Sanbox\ Alex\ [Mobile] normal (in target 'Sanbox Alex [Mobile]' from project 'Sanbox Alex [Mobile]')
[2021-12-08T12:04:51.844Z] [VERBOSE] [Build] (1 failure)
[2021-12-08T12:04:51.849Z] [VERBOSE] [Build] Command finished with error code 65: xcodebuild -workspace,Sanbox Alex [Mobile].xcworkspace,-scheme,Sanbox Alex [Mobile],-configuration,Debug,-destination,generic/platform=iOS,-archivePath,Sanbox Alex [Mobile].xcarchive,archive,CONFIGURATION_BUILD_DIR=source/platforms/ios/build/device,SHARED_PRECOMPS_DIR=source/platforms/ios/build/sharedpch,OTHER_CODE_SIGN_FLAGS=--options runtime
[2021-12-08T12:04:51.850Z] [VERBOSE] [Build] xcodebuild: Command failed with exit code 65
[2021-12-08T12:04:51.850Z] [VERBOSE] [Build] Error: xcodebuild: Command failed with exit code 65
[2021-12-08T12:04:51.850Z] [VERBOSE] [Build] at ChildProcess.whenDone (source/node_modules/cordova-common/src/superspawn.js:136:25)
[2021-12-08T12:04:51.850Z] [VERBOSE] [Build] at ChildProcess.emit (events.js:400:28)
[2021-12-08T12:04:51.850Z] [VERBOSE] [Build] at maybeClose (internal/child_process.js:1058:16)
[2021-12-08T12:04:51.850Z] [VERBOSE] [Build] at Process.ChildProcess._handle.onexit (internal/child_process.js:293:5)
[2021-12-08T12:04:51.934Z] [VERBOSE] [Build] Setting default keychain...
[2021-12-08T12:04:51.934Z] [VERBOSE] [Build] Deleting temporary keychain...
[2021-12-08T12:04:51.934Z] [VERBOSE] [Build] Deleting provision profile...
[2021-12-08T12:04:51.934Z] [VERBOSE] [Build] /Users/sandbox03/Library/MobileDevice/Provisioning Profiles//7bb3d338-8d2e-40cf-a9f0-f8b3aee1fb85.mobileprovision
[2021-12-08T12:04:51.935Z] [ERROR] [Build] ** ARCHIVE FAILED **
[2021-12-08T12:04:51.935Z] [ERROR] [Build] The following build commands failed:
[2021-12-08T12:04:51.935Z] [ERROR] [Build] 	Ld /Users/sandbox03/Library/Developer/Xcode/DerivedData/Sanbox_Alex_[Mobile]-drkzfhmhpvgbynddkbqaqrniinmw/Build/Intermediates.noindex/ArchiveIntermediates/Sanbox\ Alex\ [Mobile]/InstallationBuildProductsLocation/Applications/Sanbox\ Alex\ [Mobile].app/Sanbox\ Alex\ [Mobile] normal (in target 'Sanbox Alex [Mobile]' from project 'Sanbox Alex [Mobile]')
[2021-12-08T12:04:51.935Z] [ERROR] [Build] (1 failure)
[2021-12-08T12:04:51.935Z] [ERROR] [Build] xcodebuild: Command failed with exit code 65
[2021-12-08T12:04:51.936Z] [ERROR] [Build] Build failed with the following error: Something happened on our side while generating your app. Please try again.
[2021-12-08T12:04:51.936Z] [INFO] [Build] Zipping application source...
[2021-12-08T12:05:03.587Z] [INFO] [Build] Application was not successfully generated!
[2021-12-08T12:05:03.594Z] [INFO] [Build] Execution time: 201979ms
@christocracy
Copy link
Member

Upgrade your XCode

@CreetionMotia
Copy link
Author

Which version of XCode do we need for v-4.4.0?

@christocracy
Copy link
Member

Just install the latest

@CreetionMotia
Copy link
Author

I'm using XCode 13.0 which should be supported. I've had this same issue on other versions as well for example:
v-4.0.0.

Are you by any chance compiling the plugin on XCode 12? If so, could you compile with XCode 13?

Looking at the issue below it looks like this is the case for us as well:
firebase/firebase-ios-sdk#6533
CocoaPods/CocoaPods#9884 (comment)

Note: the only thing inside of the application I'm trying to generate is cordova-background-geolocation-lt

@CreetionMotia
Copy link
Author

Hi!

Hope you had a good New Years eve!

This is a friendly reminder. It seems if the plug-in were to be compiled using Xcode 13, the issue could very well be resolved. Could you provide us with such a version?

@Furkan68
Copy link

Furkan68 commented Mar 4, 2022

Hi,

I have the same issue. Could you help us please?

@Furkan68
Copy link

Hi @christocracy,

We have the same problem and we also have a support subscription. Do I have to create a separate issue for our problem? or do you want to help us?
We cannot update the XCode version ourselves, because it is managed by the platform administrators.

@christocracy
Copy link
Member

What version of XCode are you using?

@Furkan68
Copy link

XCode 13.0 like @CreetionMotia

@christocracy
Copy link
Member

There's no way around it. You must upgrade XCode. The latest version of the plugin was compiled with XCode 13.2.

In the near future, the plugin will be compiled with XCode 13.3.

@Furkan68
Copy link

Which release version is compiled with xcode 13.0?

@christocracy
Copy link
Member

I don't keep track of that.

@Furkan68
Copy link

@CreetionMotia and @christocracy .
I have tried to build our application (in Outsystems with MABS 8.0 (using XCode 13.0)) with all the tagged versions after version 3.7.0, but at every build process we got the same error as @CreetionMotia metioned above.
Is there not a version of the plugin which is compiled with XCode 13.0? @christocracy Have you ever used XCode 13.0?

@Furkan68
Copy link

Furkan68 commented Apr 12, 2022

@CreetionMotia from outsystems support I got the following message today;

We wanted to inform you that we'll be shipping XCode 13.3 with MABS 8.1. The Beta will be updated next Wednesday with some fixes and it will include XCode 13.3.

I hope that at least version 4.2 of the plugin will work with an Outsystems mobile application.

@Furkan68
Copy link

Furkan68 commented Apr 14, 2022

Hello @christocracy ,

I have tried to build our application with MABS 8.1 with the following versions;

Schermafbeelding 2022-04-14 111359

Android is build successfully, but we still getting the following errors for iOS;

[2022-04-14T09:09:50.803Z] [VERBOSE] [Build] Undefined symbols for architecture arm64:
[2022-04-14T09:09:50.803Z] [VERBOSE] [Build] "OBJC_CLASS$_DDOSLogger", referenced from:
[2022-04-14T09:09:50.803Z] [VERBOSE] [Build] objc-class-ref in TSLocationManager(TSLog.o)
[2022-04-14T09:09:50.805Z] [VERBOSE] [Build] ld: symbol(s) not found for architecture arm64

What is wrong?

@christocracy
Copy link
Member

tried to build our application with MABS

What is "MABS"?

@Furkan68
Copy link

MABS is the Mobile Apps Build Service of Outsystems.
The build tools and the versions are available in the screenshot above

@christocracy
Copy link
Member

I do not know why your build system is having problems. It seems to have trouble importing the CocoaLumberjack dependency.

The latest Cordova CLI is 11.0.0.

I do not have any issue building on my local machine.

$ cordova -v
11.0.0

$ cordova platform
Installed platforms:
  android 10.1.1
  ios 6.2.0

@alexandreafc
Copy link

Hi I have the same problem, I used the plugin in OutSystems application for almost two years, but now with the last versions I can't do it anymore. @Furkan68 or @CreetionMotia any update about that? I start another application in OutSystems for another customer that bought the plugin by my advise and now I can't use it inside the application.

This is the last answser that I have from my support team:
Hello Alexandre,

Thank you for your time during our call.

As discussed, we analyzed the iOS build logs from MABS and we found the following error being thrown.
Undefined symbols for architecture arm64:
[2022-06-29T15:17:51.315Z] [VERBOSE] [0ad0027e793c3a8b71a7a1f3a8c16dd558045a66] [Build] "OBJC_CLASS$_DDOSLogger", referenced from:
[2022-06-29T15:17:51.316Z] [VERBOSE] [0ad0027e793c3a8b71a7a1f3a8c16dd558045a66] [Build] objc-class-ref in TSLocationManager(TSLog.o)
[2022-06-29T15:17:51.318Z] [VERBOSE] [0ad0027e793c3a8b71a7a1f3a8c16dd558045a66] [Build] ld: symbol(s) not found for architecture arm64
[2022-06-29T15:17:51.319Z] [VERBOSE] [0ad0027e793c3a8b71a7a1f3a8c16dd558045a66] [Build] clang: error: linker command failed with exit code 1 (use -v to see invocation)
[2022-06-29T15:17:51.327Z] [VERBOSE] [0ad0027e793c3a8b71a7a1f3a8c16dd558045a66] [Build] source/platforms/ios/Pods/Pods.xcodeproj: warning: The iOS deployment target 'IPHONEOS_DEPLOYMENT_TARGET' is set to 4.3, but the range of supported deployment target versions is 9.0 to 15.4.99. (in target 'OneSignal' from project 'Pods')
[2022-06-29T15:17:51.403Z] [VERBOSE] [0ad0027e793c3a8b71a7a1f3a8c16dd558045a66] [Build] source/platforms/ios/Pods/Pods.xcodeproj: warning: The iOS deployment target 'IPHONEOS_DEPLOYMENT_TARGET' is set to 5.0, but the range of supported deployment target versions is 9.0 to 15.4.99. (in target 'CocoaLumberjack' from project 'Pods')
[2022-06-29T15:17:51.404Z] [VERBOSE] [0ad0027e793c3a8b71a7a1f3a8c16dd558045a66] [Build] source/platforms/ios/Pods/Pods.xcodeproj: warning: The iOS deployment target 'IPHONEOS_DEPLOYMENT_TARGET' is set to 6.0, but the range of supported deployment target versions is 9.0 to 15.4.99. (in target 'YapDatabase' from project 'Pods')
[2022-06-29T15:17:51.426Z] [VERBOSE] [0ad0027e793c3a8b71a7a1f3a8c16dd558045a66] [Build] ** ARCHIVE FAILED **
[2022-06-29T15:17:51.426Z] [VERBOSE] [0ad0027e793c3a8b71a7a1f3a8c16dd558045a66] [Build] The following build commands failed:
[2022-06-29T15:17:51.426Z] [VERBOSE] [0ad0027e793c3a8b71a7a1f3a8c16dd558045a66] [Build] Ld /Users/sandbox02/Library/Developer/Xcode/DerivedData/LiftflexApp-crfhhcohduwylndheozobbjvlcee/Build/Intermediates.noindex/ArchiveIntermediates/LiftflexApp/InstallationBuildProductsLocation/Applications/LiftflexApp.app/LiftflexApp normal (in target 'LiftflexApp' from project 'LiftflexApp')
[2022-06-29T15:17:51.426Z] [VERBOSE] [0ad0027e793c3a8b71a7a1f3a8c16dd558045a66] [Build] (1 failure)
[2022-06-29T15:17:51.434Z] [VERBOSE] [0ad0027e793c3a8b71a7a1f3a8c16dd558045a66] [Build] Command finished with error code 65: xcodebuild -workspace,LiftflexApp.xcworkspace,-scheme,LiftflexApp,-configuration,Debug,-destination,generic/platform=iOS,-archivePath,LiftflexApp.xcarchive,archive,CONFIGURATION_BUILD_DIR=source/platforms/ios/build/device,SHARED_PRECOMPS_DIR=source/platforms/ios/build/sharedpch,OTHER_CODE_SIGN_FLAGS=--options runtime --keychain keys/keychain.keychain-db
[2022-06-29T15:17:51.439Z] [VERBOSE] [0ad0027e793c3a8b71a7a1f3a8c16dd558045a66] [Build] xcodebuild: Command failed with exit code 65
[2022-06-29T15:17:51.439Z] [VERBOSE] [0ad0027e793c3a8b71a7a1f3a8c16dd558045a66] [Build] Error: xcodebuild: Command failed with exit code 65
[2022-06-29T15:17:51.440Z] [VERBOSE] [0ad0027e793c3a8b71a7a1f3a8c16dd558045a66] [Build] at ChildProcess.whenDone (source/node_modules/cordova-common/src/superspawn.js:136:25)
[2022-06-29T15:17:51.440Z] [VERBOSE] [0ad0027e793c3a8b71a7a1f3a8c16dd558045a66] [Build] at ChildProcess.emit (events.js:400:28)
[2022-06-29T15:17:51.440Z] [VERBOSE] [0ad0027e793c3a8b71a7a1f3a8c16dd558045a66] [Build] at maybeClose (internal/child_process.js:1088:16)
[2022-06-29T15:17:51.440Z] [VERBOSE] [0ad0027e793c3a8b71a7a1f3a8c16dd558045a66] [Build] at Process.ChildProcess._handle.onexit (internal/child_process.js:296:5)

From similar support cases, this issue is caused by the unsupported "https://github.com/transistorsoft/cordova-background-geolocation-lt" plugin. This is also a known issue of this plugin as you can see on this forum, #1326.

We tested using this plugin in a sample application and were able to replicate the error using the plugin latest version and MABS versions 8.1.4 and 7.2. When removing the plugin the build is successful so we can conclude that the bottleneck is the "https://github.com/transistorsoft/cordova-background-geolocation-lt" plugin.

From the git forum it seems that a possible workaround would be to use version 3.7.0 with MABS 7.2. We tried to test this workaround in the created sample application but with no success. It always throws the error below when fetching the plugin version 3.7.0. Maybe it is related with the license of the plugin, we are not sure.
Build failed with the following error: There was an issue fetching the Cordova plugin https://github.com/transistorsoft/cordova-background-geolocation-lt.git#3.7.0.

From the above findings and troubleshoot perform and since this is not a supported component we can only suggest the following:
Use if possible a different plugin, our suggestion is to use a supported forge component in order to avoid these issues;
Try and use a different version of the plugin with a previous version of MABS as suggested in the git forum post #1326;
Reach to the "https://github.com/transistorsoft/cordova-background-geolocation-lt" plugin creator in order to understand what is causing this error and if necessary a fix to the plugin.

As agreed during our call, since there are no more actions items on our side we will be marking this case as solved.
Nevertheless, should you have any other questions or concerns please feel free tor each out to us.

@christocracy can you help me, please?

@christocracy
Copy link
Member

3rd party build systems always have old tooling.

Nobody has a problem building locally.

@christocracy
Copy link
Member

christocracy commented Jun 30, 2022

And OutSystems is particularly horrible. I’ve recommended people avoid them for years.

@alexandreafc
Copy link

Hi @christocracy thanks for your answer but I think this is not the problem, for some reason the tool can't download the application anymore. Is there any problem with my license? If I tried to download version 3.7.0 to keek the compatibility I can't and I don't know why. And the problem here is the opposite, because OutSystems update your MABS tool I was forced to recompile that application. OutSystems it's the biggest company in the world in your market, bigger than Microsoft in Low Code market. I developed I integration with your plugin so I believe it's an excellent market for your plugin regardless of your opinion about the platform. You don't become the greatest in the world by being horrible.But regardless of our opinions, can you help me understand what is happening and how to solve it? Because in the end what MABs do is compile on a local machine. What more information can I give to try to resolve it? Can I request all local MABs configuration eg detailed log and etc. Thanks in advance.

@christocracy
Copy link
Member

iOS is free, it doesn’t consume license keys.

only Android consumes license keys.

@christocracy
Copy link
Member

Undefined symbols for architecture arm64:
[2022-06-29T15:17:51.315Z] [VERBOSE] [0ad0027e793c3a8b71a7a1f3a8c16dd558045a66] [Build] "OBJC_CLASS$_DDOSLogger",

Where they are having a problem is with the CocoaLumberjack dependency.

@alexandreafc
Copy link

For Android using the most recent version the compilation works fine, the only problem now it's iOS, I asked the team to provide all information of MABs so I can put here. I really need to solve that. My application stopped working and is totally dependent on your plugin.

@alexandreafc
Copy link

Undefined symbols for architecture arm64:
[2022-06-29T15:17:51.315Z] [VERBOSE] [0ad0027e793c3a8b71a7a1f3a8c16dd558045a66] [Build] "OBJC_CLASS$_DDOSLogger",

Where they are having a problem is with the CocoaLumberjack dependency.

I will send this info to them.

@christocracy
Copy link
Member

There is no comparison or correlation between what works for Android vs ios. They are as different as apples and oranges.

@Furkan68
Copy link

Hi @alexandreafc,
We have asked OS support to update the cocoalumberjack version to the latest version in the last MABS version, but they said they will do that at the end of this year. Till the end of this year we are using MABS 7.2 with the v3.7.0 of the plugin.

@christocracy
Copy link
Member

We have asked OS support to update the cocoalumberjack version to the latest version in the last MABS version, but they said they will do that at the end of this year

[email protected] was released over a year ago.

CocoaLumberjack is the most popular iOS logging library, used by tens-of-thousands of developers. It has existed for 12 years.. It is not some obscure, poorly maintained library.

@christocracy
Copy link
Member

christocracy commented Jun 30, 2022

Undefined symbols for architecture arm64:
[2022-06-29T15:17:51.315Z] [VERBOSE] [0ad0027e793c3a8b71a7a1f3a8c16dd558045a66] [Build] "OBJC_CLASS$_DDOSLogger",

As you can see from CocoaLumberjack source-code, those symbols prefixed with DD (eg: DDOSLogger) come from CocoaLumberjack.

@alexandreafc
Copy link

Hi @Furkan68 thanks for your answer, how did you do? Did you fork the component or point direct to the tag like below:

"plugin":
{
"url":"https://github.com/alexandreafc/cordova-background-geolocation-lt#3.7.0",
}

I mean point direct I can't do a download properly.

Thanks again.

@christocracy
Copy link
Member

I doubt 3.7.0 will support iOS 15+ / Android 11+

You need to insist on OutSystems supporting CocoaLumberjack ~> 3.7.2

@Furkan68
Copy link

Hi @alexandreafc,
I have downloaded the version 3.7.0 of the plugin and added as a resource to the module in Outsystems, that worked for us.

@christocracy
Copy link
Member

I doubt 3.7.0 will support iOS 15+ / Android 11+

And this? There’s no possible way that 3.7.0 will work with Android 12.

@alexandreafc
Copy link

Hi @christocracy with this version was possible to compile in the OutSystems environment, but the component don't ask for permissions on Android 11 or 12, this version 3.7.0 should work on Android 11 at least, or shouldn't work?

Thanks in advance.

@christocracy
Copy link
Member

Android 11 didn’t exist when 3.7.0 was released.

you need to pressure OutSystems to support the latest version of the plugin.

@stale
Copy link

stale bot commented Sep 21, 2022

This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions. You may also mark this issue as a "discussion" and I will leave this open.

@stale stale bot added the stale label Sep 21, 2022
@Furkan68
Copy link

Furkan68 commented Nov 29, 2022

Hi Guys,

I have downloaded the plugin code and added it as a resource to the Outsytems mobile plugin. With MABS 9.0 (Beta) and releas 4.9.2 of the plugin code, iOS is still not building with the same error;

[2022-11-29T14:39:57.107Z] [VERBOSE] [Build] Undefined symbols for architecture arm64:
[2022-11-29T14:39:57.107Z] [VERBOSE] [Build] "OBJC_CLASS$_DDOSLogger", referenced from:
[2022-11-29T14:39:57.107Z] [VERBOSE] [Build] objc-class-ref in TSLocationManager(TSLog.o)
[2022-11-29T14:39:57.107Z] [VERBOSE] [Build] ld: symbol(s) not found for architecture arm64

With all due respect, but this is completely worthless. Both parties shift it a bit on each other and we are screwed.

@stale stale bot removed the stale label Nov 29, 2022
Copy link

This issue is stale because it has been open for 30 days with no activity.

@github-actions github-actions bot added the stale label Apr 19, 2024
Copy link

github-actions bot commented May 3, 2024

This issue was closed because it has been inactive for 14 days since being marked as stale.

@github-actions github-actions bot closed this as completed May 3, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

4 participants