transistorsoft / cordova-background-geolocation-lt

The most sophisticated background location-tracking & geofencing module with battery-conscious motion-detection intelligence for iOS and Android.
http://www.transistorsoft.com/shop/products/cordova-background-geolocation
Other
655 stars 277 forks source link

problem generating iOS app for version 4.4.0 #1326

Closed CreetionMotia closed 2 weeks ago

CreetionMotia commented 2 years ago

Your Environment

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
<!--- Tell us what should happen -->
We're trying to generate an iOS app through Outsystems for cordova-background-geolocation-lt plugin v-4.4.0
## Actual Behavior
<!--- Tell us what happens instead -->
When generating the app it seems we are running into an issue with arm64

## Context
<!--- What were you trying to do? -->
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
<!-- include iOS / Android logs
- ios XCode logs,
- use #getLog #emailLog methods (@see docs)
- Android: $ adb logcat
-->
<details>
    <summary>Logs</summary>

```<!-- Syntax highlighting:  DO NOT REMOVE -->
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 commented 2 years ago

Upgrade your XCode

CreetionMotia commented 2 years ago

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

christocracy commented 2 years ago

Just install the latest

CreetionMotia commented 2 years ago

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: https://github.com/firebase/firebase-ios-sdk/issues/6533 https://github.com/CocoaPods/CocoaPods/issues/9884#issuecomment-696228403

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

CreetionMotia commented 2 years ago

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 commented 2 years ago

Hi,

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

Furkan68 commented 2 years ago

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 commented 2 years ago

What version of XCode are you using?

Furkan68 commented 2 years ago

XCode 13.0 like @CreetionMotia

christocracy commented 2 years ago

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 commented 2 years ago

Which release version is compiled with xcode 13.0?

christocracy commented 2 years ago

I don't keep track of that.

Furkan68 commented 2 years ago

@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 commented 2 years ago

@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 commented 2 years ago

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] "_OBJCCLASS$_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 commented 2 years ago

tried to build our application with MABS

What is "MABS"?

Furkan68 commented 2 years ago

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

christocracy commented 2 years ago

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 commented 1 year ago

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] "_OBJCCLASS$_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, https://github.com/transistorsoft/cordova-background-geolocation-lt/issues/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 https://github.com/transistorsoft/cordova-background-geolocation-lt/issues/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 commented 1 year ago

3rd party build systems always have old tooling.

Nobody has a problem building locally.

christocracy commented 1 year ago

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

alexandreafc commented 1 year ago

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 commented 1 year ago

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

only Android consumes license keys.

christocracy commented 1 year ago

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 commented 1 year ago

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 commented 1 year ago

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 commented 1 year ago

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

Furkan68 commented 1 year ago

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 commented 1 year ago

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

CocoaLumberjack@3.7.2 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 commented 1 year ago

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 commented 1 year ago

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 commented 1 year ago

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

You need to insist on OutSystems supporting CocoaLumberjack ~> 3.7.2

Furkan68 commented 1 year ago

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 commented 1 year ago

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 commented 1 year ago

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 commented 1 year ago

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[bot] commented 1 year ago

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.

Furkan68 commented 1 year ago

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] "_OBJCCLASS$_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.

github-actions[bot] commented 1 month ago

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

github-actions[bot] commented 2 weeks ago

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