[!] No podspec found for `EXGL` in `../node_modules/expo-gl/ios`

#1

Hi, trying to upgrade from sdk29 to sdk30 and getting the error in subject.

My podfile:


source 'https://github.com/CocoaPods/Specs.git'
platform :ios, '9.0'

target 'letsjobit' do
  pod 'ExpoKit',
    :git => "http://github.com/expo/expo.git",
    :tag => "ios/2.8.4",
    :subspecs => [
      "Core"
    ],
    :inhibit_warnings => true
  pod 'EXAdsAdMob',
    :path => "../node_modules/expo-ads-admob/ios"
  pod 'EXBarCodeScanner',
    :path => "../node_modules/expo-barcode-scanner/ios"
  pod 'EXBarCodeScannerInterface',
    :path => "../node_modules/expo-barcode-scanner-interface/ios"
  pod 'EXCamera',
    :path => "../node_modules/expo-camera/ios"
  pod 'EXCameraInterface',
    :path => "../node_modules/expo-camera-interface/ios"
  pod 'EXConstants',
    :path => "../node_modules/expo-constants/ios"
  pod 'EXConstantsInterface',
    :path => "../node_modules/expo-constants-interface/ios"
  pod 'EXContacts',
    :path => "../node_modules/expo-contacts/ios"
  pod 'EXCore',
    :path => "../node_modules/expo-core/ios"
  pod 'EXFaceDetectorInterface',
    :path => "../node_modules/expo-face-detector-interface/ios"
  pod 'EXFileSystem',
    :path => "../node_modules/expo-file-system/ios"
  pod 'EXFileSystemInterface',
    :path => "../node_modules/expo-file-system-interface/ios"
  pod 'EXFont',
    :path => "../node_modules/expo-font/ios"
  pod 'EXFontInterface',
    :path => "../node_modules/expo-font-interface/ios"
  pod 'EXGL',
    :path => "../node_modules/expo-gl/ios"
  pod 'EXGL-CPP',
    :path => "../node_modules/expo-gl-cpp/cpp"
  pod 'EXImageLoaderInterface',
    :path => "../node_modules/expo-image-loader-interface/ios"
  pod 'EXLocalAuthentication',
    :path => "../node_modules/expo-local-authentication/ios"
  pod 'EXLocation',
    :path => "../node_modules/expo-location/ios"
  pod 'EXMediaLibrary',
    :path => "../node_modules/expo-media-library/ios"
  pod 'EXPaymentsStripe',
    :path => "../node_modules/expo-payments-stripe/ios"
  pod 'EXPermissions',
    :path => "../node_modules/expo-permissions/ios"
  pod 'EXPermissionsInterface',
    :path => "../node_modules/expo-permissions-interface/ios"
  pod 'EXPrint',
    :path => "../node_modules/expo-print/ios"
  pod 'EXReactNativeAdapter',
    :path => "../node_modules/expo-react-native-adapter/ios"
  pod 'EXSegment',
    :path => "../node_modules/expo-analytics-segment/ios"
  pod 'EXSensors',
    :path => "../node_modules/expo-sensors/ios"
  pod 'EXSensorsInterface',
    :path => "../node_modules/expo-sensors-interface/ios"
  pod 'EXSMS',
    :path => "../node_modules/expo-sms/ios"

  pod 'React',
    :path => "../node_modules/react-native",
    :inhibit_warnings => true,
    :subspecs => [
      "Core",
      "ART",
      "RCTActionSheet",
      "RCTAnimation",
      "RCTCameraRoll",
      "RCTGeolocation",
      "RCTImage",
      "RCTNetwork",
      "RCTText",
      "RCTVibration",
      "RCTWebSocket",
      "DevSupport",
      "CxxBridge"
    ]
  pod 'yoga',
    :path => "../node_modules/react-native/ReactCommon/yoga",
    :inhibit_warnings => true
  pod 'DoubleConversion',
    :podspec => "../node_modules/react-native/third-party-podspecs/DoubleConversion.podspec",
    :inhibit_warnings => true
  pod 'Folly',
    :podspec => "../node_modules/react-native/third-party-podspecs/Folly.podspec",
    :inhibit_warnings => true
  pod 'glog',
    :podspec => "../node_modules/react-native/third-party-podspecs/glog.podspec",
    :inhibit_warnings => true


  post_install do |installer|
    installer.pods_project.main_group.tab_width = '2';
    installer.pods_project.main_group.indent_width = '2';

    installer.pod_targets.each do |target|

    if target.pod_name == 'ExpoKit'
      target.native_target.build_configurations.each do |config|
        config.build_settings['GCC_PREPROCESSOR_DEFINITIONS'] ||= ['$(inherited)']
        config.build_settings['GCC_PREPROCESSOR_DEFINITIONS'] << 'EX_DETACHED=1'
        
        # needed for GoogleMaps 2.x
        config.build_settings['FRAMEWORK_SEARCH_PATHS'] ||= []
        config.build_settings['FRAMEWORK_SEARCH_PATHS'] << '${PODS_ROOT}/GoogleMaps/Base/Frameworks'
        config.build_settings['FRAMEWORK_SEARCH_PATHS'] << '${PODS_ROOT}/GoogleMaps/Maps/Frameworks'
      end
    end


    if ['Amplitude-iOS','Analytics','AppAuth','Branch','CocoaLumberjack','FBSDKCoreKit','FBSDKLoginKit','FBSDKShareKit','GPUImage','JKBigInteger2'].include? target.pod_name
      target.native_target.build_configurations.each do |config|
        config.build_settings['IPHONEOS_DEPLOYMENT_TARGET'] = '9.0'
      end
    end
    # Can't specify this in the React podspec because we need
    # to use those podspecs for detached projects which don't reference ExponentCPP.
    if target.pod_name.start_with?('React')
      target.native_target.build_configurations.each do |config|
        config.build_settings['IPHONEOS_DEPLOYMENT_TARGET'] = '9.0'
        config.build_settings['HEADER_SEARCH_PATHS'] ||= ['$(inherited)']
      end
    end
    # Build React Native with RCT_DEV enabled
    next unless target.pod_name == 'React'
    target.native_target.build_configurations.each do |config|
      config.build_settings['GCC_PREPROCESSOR_DEFINITIONS'] ||= ['$(inherited)']
      config.build_settings['GCC_PREPROCESSOR_DEFINITIONS'] << 'RCT_DEV=1'
    end

    end
  end
end

My package.json:

{
  "name": "LetsJobItApp",
  "version": "0.1.0",
  "private": true,
  "devDependencies": {
    "babel-eslint": "^8.0.2",
    "babel-jest": "^23.2.0",
    "babel-preset-react-native": "^4.0.0",
    "enzyme": "^3.5.0",
    "enzyme-adapter-react-16": "^1.3.1",
    "eslint": "^4.5.0",
    "eslint-config-airbnb": "^16.1.0",
    "eslint-plugin-import": "^2.7.0",
    "eslint-plugin-jsx-a11y": "^6.0.2",
    "eslint-plugin-react": "^7.1.0",
    "jest-expo": "^30.0.0",
    "react-native-scripts": "1.8.1",
    "react-test-renderer": "16.0.0"
  },
  "main": "./node_modules/react-native-scripts/build/bin/crna-entry.js",
  "scripts": {
    "start": "exp start",
    "android_windows": "cd android && gradle installDevDebug",
    "android_mac": "cd android && ./gradlew installDevDebug",
    "android_emulator": "cd $ANDROID_HOME/tools && emulator -avd Nexus_5X_API_23",
    "ios": "react-native run-ios",
    "test": "node node_modules/jest/bin/jest.js --watch"
  },
  "jest": {
    "preset": "jest-expo",
    "testPathIgnorePatterns": [
      "/node_modules/"
    ],
    "transformIgnorePatterns": [
      "node_modules/(?!react-native|react-navigation)/"
    ]
  },
  "dependencies": {
    "@expo/react-native-action-sheet": "^1.0.2",
    "@expo/vector-icons": "^6.2.2",
    "@mapbox/polyline": "^0.2.0",
    "babel-plugin-transform-remove-console": "^6.9.1",
    "color": "^2.0.1",
    "es6-promisify": "^6.0.0",
    "es6-symbol": "^3.1.1",
    "expo": "^30.0.0",
    "expokit": "1.7.1",
    "hoist-non-react-statics": "2.3.1",
    "i18next": "^10.5.0",
    "i18next-locize-backend": "^1.3.0",
    "locize": "^1.2.0",
    "lodash": "4.17.4",
    "moment": "^2.20.1",
    "native-base": "^2.6.1",
    "next-frame": "^0.2.3",
    "prop-types": "15.6.0",
    "randomatic": "^3.0.0",
    "randomcolor": "^0.5.3",
    "react": "16.3.1",
    "react-i18next": "^7.5.0",
    "react-native": "https://github.com/expo/react-native/archive/sdk-30.0.0.tar.gz",
    "react-native-app-intro-slider": "^0.2.2",
    "react-native-autolink": "https://github.com/joaopiopedreira/react-native-autolink",
    "react-native-calendars": "^1.16.1",
    "react-native-cli": "^2.0.1",
    "react-native-console-time-polyfill": "^0.0.6",
    "react-native-dimension": "^1.0.6",
    "react-native-dropdownalert": "3.1.2",
    "react-native-event-listeners": "^1.0.3",
    "react-native-expo-image-cache": "^1.0.3",
    "react-native-google-places-autocomplete": "^1.3.6",
    "react-native-image-pan-zoom": "^2.0.16",
    "react-native-is-iphonex": "^1.0.1",
    "react-native-keyboard-spacer": "^0.4.1",
    "react-native-linear-gradient": "^2.4.0",
    "react-native-loading-placeholder": "^0.0.6",
    "react-native-local-mongodb": "^2.1.2",
    "react-native-meteor": "1.3.0",
    "react-native-modal-datetime-picker": "^4.13.0",
    "react-native-offline": "^3.11.0",
    "react-native-platform-stylesheet": "0.0.6",
    "react-native-progress": "^3.4.0",
    "react-native-section-list-get-item-layout": "^2.2.1",
    "react-native-settings-list": "^1.8.0",
    "react-native-size-matters": "^0.1.1",
    "react-native-slowlog": "^1.0.2",
    "react-native-tags": "^1.4.0",
    "react-native-timer": "^1.3.3",
    "react-native-user-avatar": "^1.0.3",
    "react-navigation": "^2.13.0",
    "react-navigation-redux-helpers": "^2.0.4",
    "react-redux": "^5.0.6",
    "redux": "^3.7.2",
    "redux-logger": "^3.0.6",
    "redux-persist": "^5.9.1",
    "redux-saga": "^0.16.0",
    "redux-thunk": "^2.2.0",
    "sentry-expo": "~1.9.0",
    "supercluster": "^3.0.1",
    "uuid": "^3.3.2"
  }
}

I don’t see expo-gl in node_modules.

Any help much appreciated!

#2

Commented out pod 'EXGL', :path => "../node_modules/expo-gl/ios"in the pod file and everything works now. Not sure about the implications…

closed #3

This topic was automatically closed 15 days after the last reply. New replies are no longer allowed.