I\'m seeking how to resolve \"use of \'@import\' when modules are disabled\" when adding Google Analytics through cocoapods:
pod \'Google/Analytics\', \'~>
In Xcode, just set Enable Modules (C and Objective-C) to Yes in Build Settings:
I googled a lot, but hacked the solution for your problem myself. Cleaning the project, re-building etc. wasn't working for me.
The solution is to wrap API into Cocoa Class, and use this class in your imports instead of original.
APAnalyticsTracker
, where AP
supposed to be your common application prefix. Here you'll have two files: APAnalyticsTracker.m
and APAnalyticsTracker.h
#import <Google/Analytics.h>
in APAnalyticsTracker
and wrap the original implementation like this (see Gist for more information): https://gist.github.com/vladignatyev/c240a1a4867b17894b10APAnalyticsTracker.h
from .mm
files freely.Just to add a reference to @Alex Stone's answer-in-a-comment, here is the current official clang specification on the lack of support for @import
in C++:
At present, there is no C or C++ syntax for import declarations. Clang will track the modules proposal in the C++ committee.