Subito-it / PodBuilder

A tool to precompile CocoaPods pods
Other
284 stars 28 forks source link

XCode 12 things #17

Closed dcristolovean closed 4 years ago

dcristolovean commented 4 years ago

I upgraded to XCode 12 and now I wish I didn't...

module 'FBSDKLoginKit' was created for incompatible target arm64-apple-ios10.0

Any idea what this is ? Latest pod builder works OK, but afterwards, getting this thing...

PS: Found some posts that suggested upgrading to the latest RC cocoa pods, which I did, now I'm getting an error in pod_builder, points me to the *err file

Downloading Pods source code /bin/bash -c set -e sed -E -i '' 's;#include <openssl/(.*)>;#if COCOAPODS==1\

include <openssl_grpc/\1>\

else\

include <openssl/\1>\

endif;g' $(find src/core -type f ( -path '.h' -or -path '.cc' ) -print | xargs grep -H -c '#include <openssl_grpc/' | grep 0$ | cut -d':' -f1)

find src/core/ third_party/upb/ -type f \( -name '*.h' -or -name '*.c' -or -name '*.cc' \) -print0 | xargs -0 -L1 sed -E -i'.grpc_back' 's;#include "upb/(.*)";#if COCOAPODS==1\

include "third_party/upb/upb/\1"\

else\

include "upb/\1"\

endif;g'

find src/core/ third_party/upb/ -type f -name '*.grpc_back' -print0 | xargs -0 rm
find src/core/ src/cpp/ -type f \( -name '*.h' -or -name '*.c' -or -name '*.cc' \) -print0 | xargs -0 -L1 sed -E -i'.grpc_back' 's;#include "(.*).upb.h";#if COCOAPODS==1\

include "src/core/ext/upb-generated/\1.upb.h"\

else\

include "\1.upb.h"\

endif;g'

find src/core/ src/cpp/ -type f -name '*.grpc_back' -print0 | xargs -0 rm

sed: can't read s;#include <openssl/(.*)>;#if COCOAPODS==1\

include <openssl_grpc/\1>\

else\

include <openssl/\1>\

endif;g: No such file or directory

tcamin commented 4 years ago

Does this occur when manually running xcodebuild? Are you building for simulator or device? What is your minimum deployment target?

dcristolovean commented 4 years ago

that occurs when running pod_builder build_all. Min deployment - iOS 11.

tcamin commented 4 years ago

We migrated to Xcode 12 a few days ago and I had no issue rebuilding everything. We however faced a similar error message when manually building for simulator using xcodebuild. In our case it was just a matter of fixing the valid architecures.

It would help if you could create a minimal sample project that replicates the issue.

dcristolovean commented 4 years ago

I tried to run a normal pod install after putting the correct Podfile in the root folder and when I got to

Installing gRPC-C++ (1.28.2), I can see the exact same error. Looks like a big issue on their side (or CocoaPods)

You can easily reproduce this either by adding this pod or something else that requires it. I suppose Firebase will do the trick.

dcristolovean commented 4 years ago

More updates. The way to fix that gRPC error is to make sure one's using the default mac os sed command and not the gnu-sed. After removing gnu-sed, it seems to be working. Very weird, since my setup was not changed for months and it worked a few days ago.

Anyway...

I'm back to this: module 'FBSDKLoginKit' was created for incompatible target arm64-apple-ios10.0 Seems like a general problem in xcode12 for many people unfortunately.

tcamin commented 4 years ago

Does the same error occur when integrating the pod normally?

Do you have a minimal example to replicate that? This might be fixed by explicitly specifying which archs to build.

dcristolovean commented 4 years ago

no, kinda hard to have a minimal example with this.... it's a big project. I was following some ideas from here: https://stackoverflow.com/questions/63607158/xcode-12-building-for-ios-simulator-but-linking-in-object-file-built-for-ios but got this instead when building in one of my target support files pods sh.

line 121: ARCHS[@]: unbound variable

I'll keep digging, not sure what they messed up with the archs in xcode 12.

tcamin commented 4 years ago

This should be workarounded/fixed in beta 31. For those backdeploying on iOS10 unfortunately it mean no more 32bit device support.

dcristolovean commented 4 years ago

Seems so. I removed only the VALID_ARCHS (new*) setting from the build settings, removed the Excluded Archs (arm64), run the new pod_builder and all's good now it seems. Thanks !