transistorsoft / capacitor-background-fetch

Periodic callbacks in the background for both IOS and Android
78 stars 9 forks source link

Linking Problem #2

Closed proggeramlug closed 3 years ago

proggeramlug commented 3 years ago

Getting the following error in the linking phase. It worked before but some update or something must have changed it.

Your Environment

Expected Behavior

For it to build and link correctly.

Actual Behavior

Some Catalyst/iOS/macOS linking issue preventing the app from being built.

Context

Build the app completely.

Debug logs

Logs ``` ld: in /Users/User/Library/Developer/Xcode/DerivedData/App-flxkrktnywamocaruqmkxommjcvu/Build/Intermediates.noindex/ArchiveIntermediates/App/BuildProductsPath/Release-iphoneos/TSBackgroundFetch.framework/TSBackgroundFetch(TSBGTask.o), building for iOS, but linking in object file (/Users/User/Library/Developer/Xcode/DerivedData/App-flxkrktnywamocaruqmkxommjcvu/Build/Intermediates.noindex/ArchiveIntermediates/App/BuildProductsPath/Release-iphoneos/TSBackgroundFetch.framework/TSBackgroundFetch(TSBGTask.o)) built for Mac Catalyst, file '/Users/User/Library/Developer/Xcode/DerivedData/App-flxkrktnywamocaruqmkxommjcvu/Build/Intermediates.noindex/ArchiveIntermediates/App/BuildProductsPath/Release-iphoneos/TSBackgroundFetch.framework/TSBackgroundFetch' for architecture arm64 clang: error: linker command failed with exit code 1 (use -v to see invocation) ```
christocracy commented 3 years ago
proggeramlug commented 3 years ago

@christocracy package.json:

  "name": "ymg-app",
  "version": "0.0.1",
  "author": "Ionic Framework",
  "homepage": "https://ionicframework.com/",
  "scripts": {
    "ng": "ng",
    "start": "ng serve",
    "build": "ng build",
    "test": "ng test",
    "lint": "ng lint",
    "e2e": "ng e2e"
  },
  "private": true,
  "dependencies": {
    "@angular/common": "^11.1.2",
    "@angular/core": "^11.1.2",
    "@angular/forms": "^11.1.2",
    "@angular/material": "^10.2.7",
    "@angular/platform-browser": "^11.1.2",
    "@angular/platform-browser-dynamic": "^11.1.2",
    "@angular/router": "^11.1.2",
    "@capacitor/android": "^3.0.1",
    "@capacitor/app": "^1.0.0",
    "@capacitor/core": "^3.0.0",
    "@capacitor/haptics": "^1.0.0",
    "@capacitor/ios": "^3.0.0",
    "@capacitor/keyboard": "^1.0.0",
    "@capacitor/splash-screen": "^1.0.0",
    "@capacitor/status-bar": "^1.0.0",
    "@ionic-native/background-mode": "^5.31.1",
    "@ionic-native/barcode-scanner": "^5.31.1",
    "@ionic-native/core": "^5.0.0",
    "@ionic-native/file": "^5.31.1",
    "@ionic-native/globalization": "^5.30.0",
    "@ionic-native/http": "^5.31.1",
    "@ionic-native/in-app-browser": "^5.31.1",
    "@ionic-native/in-app-purchase-2": "^5.31.1",
    "@ionic-native/media": "^5.31.1",
    "@ionic-native/music-controls": "^5.31.1",
    "@ionic-native/qr-scanner": "^5.31.1",
    "@ionic-native/social-sharing": "^5.32.0",
    "@ionic-native/splash-screen": "^5.33.1",
    "@ionic-native/status-bar": "^5.0.0",
    "@ionic/angular": "^5.5.4",
    "@ionic/storage": "^2.3.1",
    "@ngx-translate/core": "^13.0.0",
    "@ngx-translate/http-loader": "^6.0.0",
    "@transistorsoft/capacitor-background-fetch": "^0.0.4",
    "@transistorsoft/capacitor-background-geolocation": "^0.0.12",
    "@zxing/browser": "0.0.7",
    "@zxing/library": "^0.18.3",
    "@zxing/ngx-scanner": "^3.1.3",
    "capacitor-mapbox": "^0.0.26",
    "cc.fovea.cordova.purchase": "^10.5.3",
    "cordova-plugin-advanced-http": "^3.1.0",
    "cordova-plugin-background-mode": "^0.7.3",
    "cordova-plugin-file": "^6.0.2",
    "cordova-plugin-globalization": "^1.11.0",
    "cordova-plugin-inappbrowser": "^4.1.0",
    "cordova-plugin-media": "github:skelpo/cordova-plugin-media",
    "cordova-plugin-music-controls2": "git+https://github.com/skelpo/cordova-plugin-music-controls2.git",
    "cordova-plugin-splashscreen": "^6.0.0",
    "cordova-sqlite-storage": "^6.0.0",
    "howler": "^2.2.1",
    "jetifier": "^1.6.6",
    "nl.kingsquare.cordova.background-audio": "^1.0.1",
    "phonegap-plugin-barcodescanner": "^8.1.0",
    "rxjs": "~6.5.5",
    "shadow-dom-inject-styles": "^1.0.3",
    "tslib": "^2.0.0",
    "zone.js": "~0.10.3"
  },
  "devDependencies": {
    "@angular-devkit/build-angular": "^0.1101.4",
    "@angular/cli": "^11.2.0",
    "@angular/compiler": "^11.1.2",
    "@angular/compiler-cli": "^11.1.2",
    "@angular/language-service": "^11.1.2",
    "@capacitor/cli": "^3.0.0",
    "@ionic/angular-toolkit": "^3.1.0",
    "@types/jasmine": "~3.6.0",
    "@types/jasminewd2": "~2.0.3",
    "@types/node": "^12.20.1",
    "codelyzer": "^6.0.0",
    "cordova-ios": "^6.2.0",
    "cordova-plugin-device": "^2.0.2",
    "cordova-plugin-ionic-keyboard": "^2.2.0",
    "cordova-plugin-ionic-webview": "^4.2.1",
    "cordova-plugin-statusbar": "^2.4.2",
    "cordova-plugin-whitelist": "^1.3.3",
    "cordova-plugin-x-socialsharing": "^6.0.3",
    "es6-promise-plugin": "^4.2.2",
    "jasmine-core": "~3.6.0",
    "jasmine-spec-reporter": "~5.0.0",
    "karma": "~5.2.3",
    "karma-chrome-launcher": "~3.1.0",
    "karma-coverage-istanbul-reporter": "~3.0.2",
    "karma-jasmine": "~4.0.0",
    "karma-jasmine-html-reporter": "^1.5.0",
    "protractor": "~7.0.0",
    "ts-node": "~8.3.0",
    "tslint": "~6.1.0",
    "typescript": "^4.1.5"
  },
  "description": "An Ionic project",
  "cordova": {
    "plugins": {
      "cordova-plugin-globalization": {},
      "cordova-plugin-whitelist": {},
      "cordova-plugin-statusbar": {},
      "cordova-plugin-device": {},
      "cordova-plugin-splashscreen": {},
      "cordova-plugin-ionic-webview": {},
      "cordova-plugin-ionic-keyboard": {},
      "cordova-plugin-x-socialsharing": {
        "PHOTO_LIBRARY_ADD_USAGE_DESCRIPTION": "This app requires photo library access to function properly.",
        "PHOTO_LIBRARY_USAGE_DESCRIPTION": "This app requires photo library access to function properly."
      },
      "phonegap-plugin-barcodescanner": {
        "CAMERA_USAGE_DESCRIPTION": "TO scan barcodes!"
      },
      "cordova-plugin-geolocation": {
        "GEOLOCATION_USAGE_DESCRIPTION": "To locate you"
      }
    },
    "platforms": [
      "ios"
    ]
  }
}

XCode 12.5 (12E262)

christocracy commented 3 years ago
proggeramlug commented 3 years ago

Tried that already a few times without success.

christocracy commented 3 years ago

Delete DerivedData

proggeramlug commented 3 years ago

Tried that too, still the same error.

christocracy commented 3 years ago

I don't know. Remove both plugins. Re-add.

This is not a plugin issue, it's a local issue in your environment.

Yermo commented 2 years ago

FWIW, I just ran into the same problem:

Seems to work around whatever the environment problem was.

pencilcheck commented 2 years ago

I tried the instructions above, went through evrything but still getting linking error

in /Users/penn/Library/Developer/Xcode/DerivedData/App-fltyudrzfcdrweedjngjlufagdga/Build/Products/Debug-iphoneos/TSBackgroundFetch.framework/TSBackgroundFetch(TSBGTask.o), building for iOS, but linking in object file (/Users/penn/Library/Developer/Xcode/DerivedData/App-fltyudrzfcdrweedjngjlufagdga/Build/Products/Debug-iphoneos/TSBackgroundFetch.framework/TSBackgroundFetch(TSBGTask.o)) built for Mac Catalyst, file '/Users/penn/Library/Developer/Xcode/DerivedData/App-fltyudrzfcdrweedjngjlufagdga/Build/Products/Debug-iphoneos/TSBackgroundFetch.framework/TSBackgroundFetch' for architecture arm64
        "@transistorsoft/capacitor-background-fetch": "^0.0.6",
        "@transistorsoft/capacitor-background-geolocation": "^4.5.0",

However, building for simulator works, just not real device.


Found another thread that mentioned breaking changes and cocoapod needs update, let me try that first.

https://github.com/transistorsoft/react-native-background-fetch/issues/373