CocoaPods / Rome

Makes it easy to build a list of frameworks.
MIT License
694 stars 64 forks source link

Space character in project path is not supported (was: lipo failure with Xcode 9) #59

Open QuentinArnault opened 6 years ago

QuentinArnault commented 6 years ago

Hi,

Since I installed Xcode 9, I have a problème when running pod install. With Xcode 8 it worked (but I have not had to add the post_install hook). Here is the output:

Downloading dependencies
Installing Alamofire (4.5.1)
Generating Pods project
Skipping User Project Integration
Building frameworks
fatal error: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/lipo: unknown flag: -

System: XCode 9 Version 9.0.1 (9A1004) Cocoapod 1.4.0.beta.2 Plugin Rome 0.8.0 And my Podfile:


plugin 'cocoapods-rome'

target 'Rementis' do
   pod 'Alamofire', '~> 4.5.1'
end

post_install do |installer|
    installer.pods_project.targets.each do |target|
        target.build_configurations.each do |config|
            config.build_settings['SWIFT_VERSION'] = '3.2'
        end
    end
end

Regards, Quentin

Saik0s commented 6 years ago

Hi Quentin,

I did try to reproduce your problem with Cocoapods 1.3.1 and Cocoapods 1.4.0.beta.2. But in both cases, Alamofire.framework was successfully built and placed in the Rome folder. I simply created a new project and added Podfile to the project folder. The only difference is that I had to specify platform because of this error: [!] It is necessary to specify the platform in the Podfile if not integrating.

I don't know why you don't receive such error. I think that output of pod env from the project root folder can help us to solve your issue.

Here is my pod env output:

Stack

   CocoaPods : 1.4.0.beta.2
        Ruby : ruby 2.4.1p111 (2017-03-22 revision 58053) [x86_64-darwin17]
    RubyGems : 2.6.14
        Host : Mac OS X 10.13.1 (17B48)
       Xcode : 9.1 (9B55)
         Git : git version 2.15.0
Ruby lib dir : /Users/Saik0s/.rvm/rubies/ruby-2.4.1/lib
Repositories : master - https://github.com/CocoaPods/Specs.git @ 7f1a4305d9e057deb210ddfcf504ab1f142dc5eb

Installation Source

Executable Path: /Users/Saik0s/.rvm/gems/ruby-2.4.1/bin/pod

Plugins

cocoapods-deintegrate : 1.0.1
cocoapods-plugins     : 1.0.0
cocoapods-rome        : 0.8.0
cocoapods-search      : 1.0.0
cocoapods-stats       : 1.0.0
cocoapods-trunk       : 1.3.0
cocoapods-try         : 1.1.0

Podfile

plugin 'cocoapods-rome'

target :Dependencies do
    platform :ios, '8.0'
    pod 'Alamofire', '~> 4.5.1'
end

post_install do |installer|
    installer.pods_project.targets.each do |target|
        target.build_configurations.each do |config|
            config.build_settings['SWIFT_VERSION'] = '3.2'
        end
    end
end

Also here is my pod install output:

❯ pod install
Analyzing dependencies
Downloading dependencies
Installing Alamofire (4.5.1)
Generating Pods project
Skipping User Project Integration
Building frameworks
Built 2 frameworks
Copying 2 frameworks to `Rome`
Sending stats
Pod installation complete! There is 1 dependency from the Podfile and 1 total pod installed.

And Rome folder structure:

❯ tree Rome
Rome
└── Alamofire.framework
    ├── Alamofire
    ├── Headers
    │   ├── Alamofire-Swift.h
    │   └── Alamofire-umbrella.h
    ├── Info.plist
    ├── Modules
    │   ├── Alamofire.swiftmodule
    │   │   ├── arm.swiftdoc
    │   │   ├── arm.swiftmodule
    │   │   ├── arm64.swiftdoc
    │   │   ├── arm64.swiftmodule
    │   │   ├── i386.swiftdoc
    │   │   ├── i386.swiftmodule
    │   │   ├── x86_64.swiftdoc
    │   │   └── x86_64.swiftmodule
    │   └── module.modulemap
    └── _CodeSignature
        └── CodeResources
QuentinArnault commented 6 years ago

Thanks for your return.

So here is my pod env

Stack

   CocoaPods : 1.3.1
        Ruby : ruby 2.3.1p112 (2016-04-26 revision 54768) [x86_64-darwin15]
    RubyGems : 2.5.1
        Host : Mac OS X 10.12.6 (16G29)
       Xcode : 9.0.1 (9A1004)
         Git : git version 2.13.5 (Apple Git-94)
Ruby lib dir : /usr/local/Cellar/ruby/2.3.1_2/lib
Repositories : bitbucket-qapodspec - git@bitbucket.org:quentin_arnault/qapodspec.git @ 01b118a3795322038f0adfce0bbc97106bb2edd3
               master - https://github.com/CocoaPods/Specs.git @ 9820bb3b78b73d4c5490645273a18c83cc8d8124

Installation Source

Executable Path: /Users/quentinarnault/.gem/bin/pod

Plugins

cocoapods-deintegrate : 1.0.1
cocoapods-plugins     : 1.0.0
cocoapods-rome        : 0.8.0
cocoapods-search      : 1.0.0
cocoapods-stats       : 1.0.0
cocoapods-trunk       : 1.3.0
cocoapods-try         : 1.1.0

Podfile

platform :ios, '9.0'

plugin 'cocoapods-rome'

target 'Rementis' do
    pod 'Alamofire', '~> 4.5.1'
end

post_install do |installer|
    installer.pods_project.targets.each do |target|
        target.build_configurations.each do |config|
            config.build_settings['SWIFT_VERSION'] = '3.2'
        end
    end
end
QuentinArnault commented 6 years ago

I tried after an Xcode update to 9.1 and same result.

I attached output of pod install --verbose if it can help.

If you have any idea of what I can check, please let me know.

output.log

Saik0s commented 6 years ago

I think that renaming rementis - delivery folder to something like rementis_delivery will fix your issue. It looks like spaces in the project path cause this error.

QuentinArnault commented 6 years ago

Pod installation complete! There is 1 dependency from the Podfile and 1 total pod installed.

Good old "space in path"...

Thanks for the tip.