1

I am using a ProjectB inside ProjectA, which means I have dragged and Dropped projectB inside ProjectA, I have installed Pods for both Project In ProjectA and I can access them in ProjectB also, Now the problem is I have one framework inside ProjectB which is ChatSecureCore, now I also want to access some pod inside this framework like -: YapDatase, Mantle and other all these are objective C module, but I can't access them , It says "could not build Objective-C module 'ChatSecureCore".

Now I want to ask how can I access OBJC module fro this framework even if try to install swift pod it won't accept that also while importing let me show you the Podfile code of ProjectB

  install! 'cocoapods', :deterministic_uuids => false

# Blocked on https://github.com/CocoaLumberjack/CocoaLumberjack/issues/1105
#, :generate_multiple_pod_projects => true

platform :ios, "12.0"

use_modular_headers!
inhibit_all_warnings!

source 'https://cdn.cocoapods.org/'


  target 'ChatSecureCore' do
    pod 'FSPagerView'
      # https://github.com/zxingify/zxingify-objc/pull/491
     #pod 'ZXingObjC/QRCode', :git => 'https://github.com/ChatSecure/ZXingObjC.git', :branch => 'fix-catalyst'

     # https://github.com/sqlcipher/sqlcipher/pull/342
     pod 'SQLCipher', :git => 'https://github.com/ChatSecure/sqlcipher.git', :branch => 'fix-catalyst'

     pod 'ParkedTextField', :git => 'https://github.com/gmertk/ParkedTextField.git', :commit => 'a3800e3' # Swift 4.2
     pod 'JSQMessagesViewController', :path => 'Submodules/JSQMessagesViewController/JSQMessagesViewController.podspec'

     pod 'LumberjackConsole', :path => 'Submodules/LumberjackConsole/LumberjackConsole.podspec'

     # Network
     #pod 'CPAProxy', :path => 'Submodules/CPAProxy/CPAProxy.podspec'
     pod 'XMPPFramework/Swift', :path => 'Submodules/XMPPFramework/XMPPFramework.podspec'

     pod 'ChatSecure-Push-iOS', :path => 'Submodules/ChatSecure-Push-iOS/ChatSecure-Push-iOS.podspec'

     # Waiting on merge https://github.com/yapstudios/YapDatabase/pull/492
     pod 'YapDatabase/SQLCipher', :path => 'Submodules/YapDatabase/YapDatabase.podspec'
     pod 'Mantle', :podspec => 'Podspecs/Mantle.podspec.json'

     # The upstream 1.3.2 has a regression https://github.com/ChatSecure/ChatSecure-iOS/issues/1075
     pod 'libsqlfs/SQLCipher', :path => 'Submodules/libsqlfs/libsqlfs.podspec'

     pod 'IOCipher/GCDWebServer', :path => 'Submodules/IOCipher/IOCipher.podspec'
     pod 'YapTaskQueue/SQLCipher', :path => 'Submodules/YapTaskQueue/YapTaskQueue.podspec'

     # Crypto
     pod 'SignalProtocolObjC', :path => 'Submodules/SignalProtocol-ObjC/SignalProtocolObjC.podspec'
     #pod 'OTRKit', :path => 'Submodules/OTRKit/OTRKit.podspec'

     #pod 'ChatSecureCore', :path => 'ChatSecureCore.podspec'
     pod 'OTRAssets', :path => 'OTRAssets.podspec'
  end


post_install do |installer_representation|
    installer_representation.pods_project.targets.each do |target|
        target.build_configurations.each do |config|
            config.build_settings['ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES'] = '$(inherited)'
             config.build_settings["EXCLUDED_ARCHS[sdk=iphonesimulator*]"] = "arm64"
        end
    end
end

But the pod I have imported in Project I can access them even inside framework specially swift Modules, I just want to build this Framework need assistance, Thanks in advance

Ravi Gautam
  • 960
  • 2
  • 9
  • 20

1 Answers1

0

You should add an Import statement with the relevant framework name in your [appName]-Bridging-Header.h file:

#import "Mantle.h"
Arik Segal
  • 2,963
  • 2
  • 17
  • 29
  • thanks for your reply but, I am using a working project inside another working project and there is a framework inside 2nd project and framework named ChatSecureCore I can't access pods there even via bridge header, if I see in "other linker flags" and "Framework search Path" I can see all pods there, but can't import pods – Ravi Gautam Mar 14 '22 at 11:20