1001

error: Multiple commands produce '/Users/uesr/Library/Developer/Xcode/DerivedData/OptimalLive-fxatvygbofczeyhjsawtebkimvwx/Build/Products/Debug-iphoneos/OptimalLive.app/Info.plist': 1) Target 'OptimalLive' has copy command from '/Users/uesr/Desktop/workSpace/SEALIVE/SeaLive1.1/OptimalLive/Info.plist' to '/Users/uesr/Library/Developer/Xcode/DerivedData/OptimalLive-fxatvygbofczeyhjsawtebkimvwx/Build/Products/Debug-iphoneos/OptimalLive.app/Info.plist' 2) Target 'OptimalLive' has copy command from '/Users/uesr/Desktop/workSpace/SEALIVE/SeaLive1.1/OptimalLive/Server/Masonry/Info.plist' to '/Users/uesr/Library/Developer/Xcode/DerivedData/OptimalLive-fxatvygbofczeyhjsawtebkimvwx/Build/Products/Debug-iphoneos/OptimalLive.app/Info.plist' 3) Target 'OptimalLive' has process command with input '/Users/uesr/Desktop/workSpace/SEALIVE/SeaLive1.1/OptimalLive/Info.plist'

Running the code in Xcode 9 works, but there is an error in Xcode 10.

Tamás Sengel
  • 55,884
  • 29
  • 169
  • 223
make
  • 9,467
  • 3
  • 8
  • 14
  • For cocoapods managed dependencies, refer to https://stackoverflow.com/a/52421345/334999 – Shuo Sep 20 '18 at 09:04
  • 11
    happens when you import third-party framework to your project and it has info.plist in it's source files. This info.plist conflicts with your app's one. Just remove it from Build phases – protspace Oct 30 '18 at 09:29
  • 105
    Dear reader, read EVERY answer to this question, there are many different things that may be wrong. – iluvcapra Jun 20 '19 at 22:52
  • Goto path "Build Phases->Copy Bundle Resources". Check for file name and delete the same. Clean and run the apllication – Sagar Sukode Feb 13 '20 at 08:54
  • 2022 Solution:new swiftui config explained here. https://useyourloaf.com/blog/xcode-13-missing-info.plist/ – MartianMartian Jan 17 '22 at 20:23
  • 2
    I concur with @iluvcapra. Keep reading and trying the different solutions in this thread. They all work! But only for the right situation. Thank you brother Capra lover. You inspired me to stick with this thread over the course of a couple few days and finally, after trying and eliminating many different possibilities, I DID find the solution, IN THIS THREAD!, toward its certainly ever extending tail, miraculously. IMHO opinion: This error message: error: Multiple commands produce , is waaaaaay to general. Apple must disambiguate this at some point surly? – KeithTheBiped Jan 20 '22 at 05:24

99 Answers99

1908

The issue might be occurring because of multiple Plist or other files within App-

Solution -> Open target -> Build phases > Copy Bundle Resources and remove info.plist from there.

enter image description here

Note: If you have developed a watch app too then you will have to remove the plist from the watch and watch-extension too.

Alok
  • 24,880
  • 6
  • 40
  • 67
  • 14
    You may also need to look in any dependencies ie CocoaPods for wrongly added info.plist files – Chris Paveglio Jun 06 '18 at 16:50
  • 83
    To elaborate a bit: This error is happening because Xcode 10's new build system is better at catching project configuration issues. Issues like these can sometimes cause subtle problems with your build, so it's good to fix them. – Rick Ballard Jun 06 '18 at 17:39
  • 2
    In my case I had to remove some localization files named InfoPlist.strings – neowinston Jun 19 '18 at 19:59
  • 11
    In my case, I had an `info.plist` file in one of my private CocoaPods dependencies that was getting scooped up because it was matched by the podspec's `source_files` property. I didn't need the `info.plist` file in my module, so I just deleted it. – aapierce Sep 17 '18 at 16:38
  • For cocoapods related dependencies, refer to https://stackoverflow.com/a/52421345/334999 – Shuo Sep 20 '18 at 09:04
  • What if I can't delete my info.plist file? I have something configuration in there. – iceBang Sep 20 '18 at 11:03
  • @iceBang I am not saying to delete the file, just remove the reference from Copy Bundle Resources. – Alok Sep 21 '18 at 02:56
  • I had multiple info.plist files for my widget, test file, and in my project and I had to delete all of them from this build phases to get it to work (I didn't physically remove the files to trash) – coolcool1994 Sep 22 '18 at 04:33
  • 4
    Thanks! I had added some developers plugin n my code some time ago and it also had an info.plist file which conflicted with my app's info.plist – Christopher Smit Oct 05 '18 at 06:32
  • I deleted. It did not deleted the .plist files but project started compiling. :O – AsifHabib Oct 08 '18 at 20:55
  • @AsifHabib yes it will only remove the reference of your list :) – Alok Oct 09 '18 at 03:32
  • If you have any pod file dependencies and you have bundle in that so you also need to remove info.plist file at there from the "bundles" build phase – Rakesh Mandloi Oct 09 '18 at 12:45
  • I have no Info.plist file in my build phases > Copy bundle resources – AlexK Oct 12 '18 at 17:05
  • @AlexKornhauser just try to remove your other files from copy bundle resources (But please take backup before doing this) – Alok Oct 13 '18 at 10:08
  • In my case, it was iTunesArtwork 1024.png that was duplicated in Copy Bundle Resources. Once I removed it the problem vanished – Greg Oct 19 '18 at 10:05
  • 1
    Thanks @aapierce! In my podspec all the files were put in source_files, including Info.Plist. I added a filter to the source_files to use only .swift files. – Andrei Marcu Oct 29 '18 at 19:27
  • If above solution not worked for you, you can try updating your pods using `pod update` if any. – Ganpat Dec 14 '18 at 12:50
  • 1
    I had the same issue once update x-code to Version 10.1 (10B61). Simply deleted info.plist from Copy Bundle Resources – eranda.del Dec 22 '18 at 14:48
  • 1
    Hey @Alok Thank you for your answer as I got a clue from it. But in my case I don't have info.plist under copy bundle resources, instead there are two files in different directories both named as info.html If I remove one of them then the code builds successfully. What I want to ask is that removing the file will effect my app in any way (cause errors)? – kinza Dec 26 '18 at 12:05
  • @kinza no removing the file will not affect your any running feature because you are removing only file reference from bundle resources but you can take backup of the project before doing it. Good Luck (y). – Alok Dec 31 '18 at 07:37
  • 3
    Thank you @Alok :) Instead of removing the files, I renamed both of them with unique names and my code is working all fine. – kinza Dec 31 '18 at 10:03
  • 1
    This can also happen if you have duplicate file names for some compiled resources (for example i had multiple directories with .gitkeep files, removing those resolved the issue) – Scott D Jan 20 '19 at 22:24
  • The highly upvoted comment by Rick is correct. This particular answer may not fix everyone's problem, but in general the various issues people are encountering is because of Apple's improved build system identifying a wider range of configuration issues. For my case was able to discern the problem by closer attention to the error message. – Shaun Feb 12 '19 at 16:57
  • For reference for react native users that are upgrading to 59 and have pods: I also ended up 1- analyze project in XCode and 2- manually remove every target that has **tvOS** on it. – Frank Goortani Apr 01 '19 at 16:37
  • In my case, Localizable.strings is duplicated Thank you! – MJ Studio Apr 08 '19 at 01:41
  • It is strange that in Xcode, the checkbox for target membership is unticked in info.plist files while for all other files it is checked wrt the target. – Abhishek Bedi Apr 08 '19 at 09:34
  • In my case (I had extension target with the same Product Module Name), was just need to: - select target -> 'Build settings' -> 'Packaging' and set 'Product Module Name' differ from app's target 'Product Module Name'. For example: 'Product Module Name' = Foo and for it's extension 'Product Module Name' = Foo_Widget – Dmitry Varavkin May 21 '19 at 12:13
  • 1
    In my case I had two different Localize.strings entries in Copy Bundle Resources build phase. Thanks @Alok! – flocbit Jul 25 '19 at 07:39
  • In my case I accidentally added the prebuilt target executable to the project. It got into the Copy phase automatically. – kakyo Jul 29 '19 at 05:26
  • 1
    Thank you. In my case I removed info.plist from compile resources in Build Phases for each framework that was causing the error. – Maryoomi1 Sep 23 '19 at 09:07
  • This worked for me! Thank you so much. Why did this start happening with Xcode 11... who knows... cheers for sharing the solution. – Henry Heleine Mar 06 '20 at 14:51
  • I had copied in one PNG to test the logic for assigning it to an image. When finished copied them all in - just having 2 of that PNG and it wouldn't compile - insane. – user3741598 Apr 01 '20 at 02:45
  • 1
    Great! In my case, the Xcode project was created in Flutter. The GoogleService-info.plist was duplicated. I left just one and it worked. Thanks! – Dx_ Apr 18 '20 at 01:33
  • I removed duplicates of files but then getting another error 'Command CompileSwiftSources failed with a nonzero exit code' ?? – marika.daboja May 19 '20 at 23:36
  • A handful of duplicated thumbs.db in the Copy Bundle Resources of Build Phases broke it for me. Seems any duplicated files in that section will cause this issue. Particularly likely to occur when flattening a pre-existing file system to make use of XCode's groups. – Josh Hardman Mar 29 '21 at 23:11
  • This could also occur if you have a duplicate reference to a linked library or embedded framework – jcpennypincher May 25 '22 at 23:52
  • Yeah, use this same method to remove duplicated files. I experianced this after a bad iCloud issue. It was creating duplicates ALL over my computer, which were added to the "Compile Sources". – Ars_Codicis Jun 28 '22 at 23:00
  • Deleting alone wasn't enough. What I have found in my case that the `info.plist` file path in `Build Settings -> Packaging` was wrong. I fixed the path and everything worked well. Thanks! – Sam Mar 23 '23 at 12:56
610

This answer is deprecated - Xcode 12 has deprecated the Legacy Build System, it will be removed in a further release

I found the solution for this build error, for anybody else having the same issue with Xcode 10 build system, follow the following steps to fix it:

  1. In Xcode, go to File->Project/Workspace settings.
  2. Change the build system to Legacy Build system.

enter image description here It will resolve the build issue with the new Xcode 10.

If you want to work with the new build system, then you can find the troubleshooting help from this apple Xcode help page.

shim
  • 9,289
  • 12
  • 69
  • 108
Akshay Sunderwani
  • 12,428
  • 8
  • 29
  • 52
  • 6
    can you explain why is this issue coming and also how choosing Legacy Build System resolves it? @Akshay Sunderwani – user832 Sep 20 '18 at 10:22
  • 268
    You are not fixing the issue, you are just hiding them. – Caio Sep 20 '18 at 17:33
  • @Caio - The issue's been there for years, works for one more app release. – Dog Oct 11 '18 at 14:19
  • 4
    Fixes build error for react-native projects. See issue here: https://github.com/facebook/react-native/issues/20492 There is a possible fix if you don't want to switch to the Legacy Build System: https://github.com/facebook/react-native/issues/20492#issuecomment-422958184 – Eugen Timm Oct 12 '18 at 11:52
  • 10
    This is not a long-term fix. Eventually the legacy build system will no longer be an option. – Paul King Oct 15 '18 at 22:38
  • 2
    @Caio: If this is hiding the issue, How can we solve this issue? – Vineesh TP Nov 11 '18 at 06:33
  • @VineeshTP read Alok's answer, that is also the most upvoted here. – Caio Nov 29 '18 at 16:33
  • 8
    Well I'm 100% gonna hide the problem instead of fixing it because none of these solutions work. Seems to be a known problem with Cocoapods; see https://github.com/CocoaPods/CocoaPods/issues/7949 . I'll hope it somehow fixes itself by the time this workaround is no longer an option. – sudo Jan 09 '19 at 06:50
  • 2
    It's a bad idea to generate the same file in two different ways. If you are lucky, the file is always the same. If not, congratulations, you have produced a Heisenbug for your builds. – Thinkeye Apr 04 '19 at 09:51
  • This action should not be encouraged! Apple strongly recommends that you build the app with the new build system! Should down vote this answer! Better try and fix what is wrong than hiding it. – Stan Jul 23 '19 at 14:02
  • one of framework has info.plist file & i am migrating from xcode 9 to 10 , but now i am "Multiple commands produce" error but if i change to "Legacy Build system" it works – Vivek Gajbe Jan 21 '20 at 06:37
  • 1
    Not a solution if you are using Swift Packages. – Chris Prince May 24 '20 at 02:50
  • 4
    Legacy Build System is now officially depreciated, as of Xcode 12: "The legacy build system is deprecated, and will be removed in a future release. (62742902)" (https://developer.apple.com/documentation/xcode-release-notes/xcode-12-release-notes) – u2Fan Sep 23 '20 at 13:43
  • 2
    The legacy build system will be removed eventually. Hiding the issue like this is just putting it off. – Glenn Maynard Sep 11 '21 at 13:18
  • Legacy Build is deprecated now. We cannot use it anymore – Mashhadi Jun 16 '22 at 15:51
172

Go to Xcode -> File ->Workspace Settings. You will find one pop up like.

enter image description here

Select "Legacy Build System" from Build System tag. Press on "Done"

Note:- Make sure clear your project with "cmd+shift+alt+k" and "Derived Data"

Build your project it will work charm :)

Hardik1344
  • 2,917
  • 2
  • 15
  • 31
  • As per my understanding our existing projects are made in old swift and xcode which are supported old version of swift and xcode. So earlier what we did, we went on "Bundle Settings->Swift legacy Build System"and did select earlier version. – Hardik1344 Sep 24 '18 at 06:48
  • I originally had it on "Swift Legacy Build System", but it had been switched after restarting my computer. Even if you think you have this set correctly, it could still be worth double-checking. – EndersJeesh Sep 26 '18 at 17:17
  • 44
    This solution do not fixing the issue, it just hiding it. – Argus Nov 26 '18 at 16:38
  • Also make sure you change the Per-User workspace settings to the same ;) – Wei Shen Feb 19 '19 at 07:04
  • https://stackoverflow.com/questions/50718018/xcode-10-error-multiple-commands-produce – Puji Wahono Mar 25 '19 at 03:54
  • 3
    Legacy Build System is now officially depreciated, as of Xcode 12: "The legacy build system is deprecated, and will be removed in a future release. (62742902)" (https://developer.apple.com/documentation/xcode-release-notes/xcode-12-release-notes) – u2Fan Sep 23 '20 at 13:44
  • this is deprectaed now – Mashhadi Jun 16 '22 at 15:51
160

I was experimenting with Core Data. I built a data model for a simple checklist program and generated the NSManagedObjects. When I compiled the project I got the following error:

error: Multiple commands produce '/Users/myUSerName/Library/Developer/Xcode/DerivedData/myCoreDateExperiment-gzbslaqdwglkzxemijpdqmizgyzc/Build/Intermediates.noindex/ myCoreDateExperiment /Debug-iphonesimulator/ myCoreDateExperiment.build/Objects-normal/x86_64/CheckListItem+CoreDataProperties.o':
1) Target ' myCoreDateExperiment ' (project ' myCoreDateExperiment ') has compile command for Swift source files
2) Target ' myCoreDateExperiment ' (project ' myCoreDateExperiment ') has compile command for Swift source files

The problem was the data model (CheckList.xcdatamodeld in my case) was in the "Compile Sources" list. The project compiled cleanly when I removed it from the list.

  1. Open the project navigator and select the project (very first entry at the top)
  2. Select your build target under Targets in the "Projects and Targets" pane
  3. Select Build Phases option near the top
  4. Expand the "Compile Sources" entry and look for your data model name. Search for "xcdatamodeld" if you have trouble finding it.
  5. Delete the model from the compile list
  6. Make sure the data model is included in the "Copy Bundle Resources" list. Add it if it is missing.

EDIT

As @WilliamT. explains in the comments, you need the xcdatamodeld in the compile list. Instead, go to your entities within the xcdatamodeld file. Select the models that are erroring, expand the left panel, and change the field of "Codegen" to "Manual/None".

christo8989
  • 6,442
  • 5
  • 37
  • 43
Positron
  • 2,371
  • 1
  • 14
  • 8
  • This is a bug and Apple ought to fix it!! – Raj Pawan Gumdal Mar 14 '19 at 09:41
  • 88
    The xcdatamodeld file should actually be in Compile Sources. if you're seeing this error in relation to Core Data it's likely because you invoked "Create NSManagedObject Subclass" but you have your Entity set to Codegen = "Class Definition". This means it's automatically creating these classes for you and you created them manually so they exist twice. – William T. Apr 08 '19 at 20:25
  • 1
    @WilliamT. So what should be the value of Codegen if one is invoking Create NSManaged Object Subclass? – Kaunteya Jul 21 '19 at 13:01
  • 4
    @Kaunteya There's an option to set the Codegen to "Manual" on each CoreData Attribute (table) – William T. Jul 21 '19 at 21:35
  • 3
    Follow @WilliamT. advice and then clean and build. – PruitIgoe Oct 25 '19 at 20:05
  • 1
    @WilliamT. is right (great thanks!) for those who experimented with Core Data. In the Navigator Area on the left of XCode, find and click your .xcdatamodeld file > in the Editor Area in the middle of XCode, select your Entity > its attributes will be displayed on the far right > find Codegen and change its value from "Class Definition" to "Manual/None". That's it. – Meo Flute Dec 08 '19 at 12:18
  • 1
    A note for @WilliamT.'s comment: Sometimes even after you set Codegen as "Manual/None" you still get this error. If this happens, delete existing manually created class files, restart XCode, then re-generate them. – Luke Feb 15 '20 at 20:20
  • Thanks @WilliamT. In Xcode 12, the property to change the Codegen comes up when you double click the attribute in the data model file. – Daniel Kim Jan 05 '21 at 22:27
  • This solution is the best of all the answers (Change to legacy bulid not make any sense since this is deprecated). In my case was because I have a duplicated reference of a resource (The error in xcode info you about which resource), so I delete one and problem solve. The only problem is that this cause some issues on my workspace. So I can add this in order to solve the workspace issues. https://developer.apple.com/forums/thread/128535 – Cristian Zumelzu May 20 '22 at 14:54
112

This answer is deprecated - XCode 12 has deprecated the Legacy Build System, it will be removed in a further release

Try this as well. Xcode->File->Project Settings-> Build System -> Legacy Build System.

Chanchal Raj
  • 4,176
  • 4
  • 39
  • 46
  • 54
    In this case Xcode is flagging a problem in the project, so reverting to the legacy build system will just hide it for now. Xcode's reporting of these sorts of problems is intentional and it's best to fix the issue. – Rick Ballard Jun 06 '18 at 17:36
  • 2
    If the error is in CocoaPods' generated project then I would disable the new Build System until a new CocoaPods version fixes the problem. – Rivera Jul 18 '18 at 08:20
  • @RickBallard makes sense, now, which could be the right fix? there seems to be a mix of answers – Rolando Oct 09 '18 at 09:24
  • 1
    There are multiple causes of this kind of error, but you can read more about what it means at https://help.apple.com/xcode/mac/10.0/#/dev14a2fd0c0 – Rick Ballard Oct 22 '18 at 17:38
  • Legacy Build System is now officially depreciated, as of Xcode 12: "The legacy build system is deprecated, and will be removed in a future release. (62742902)" (https://developer.apple.com/documentation/xcode-release-notes/xcode-12-release-notes) – u2Fan Sep 23 '20 at 13:44
80

If you are getting this from the Ditto command creating multiple instances of the same name (NOT the 'copy files' build phase), you may have to change the Product Module Name.

  1. Click on your Target(s) Xcode is complaining about
  2. Click on Build Settings
  3. Search for Product Module Name
  4. Change the name to something unique

We have a watch target and a few notification targets in our app, so I just put things like Extension on the end of the module name.

I found this solution originally here: https://forums.developer.apple.com/thread/103913

u2Fan
  • 1,161
  • 10
  • 15
  • 1
    It worked a bit fine, but then it broke with the bridging file. – Mohamad Kaakati Sep 16 '18 at 21:23
  • 5
    In my case, I had to select `All` on the right of where you search for `Product Module Name` to make that build configuration show. – Hodson Sep 20 '18 at 12:12
  • 58
    I got same problem in Xcode 10. Same project was working fine in Xcode 9.4.1. So the solution is very simple. Just remove all info.plist files from target. Please do this for all info.plist files. Step:1. Select info.plist file. 2. In File inspector Untick the project in Target Membership. Then run your project. Thanks ! – An Kit Sep 24 '18 at 17:33
  • 14
    For me I had to go to the [Project_Name] > Build Phases > Copy Bundle Resources and remove the duplications there – user3322509 Sep 25 '18 at 08:37
  • @AnKit: If we just remove the info.plist files then where can we sent the custom API keys like Fabric, Adding custom fonts file names,.. – Bharath Oct 08 '18 at 13:26
  • 5
    @Bharath Don't remove info.plist files from your project. You need to remove only from Target as I mentioned. We can't remove info.plist, It's very important for project. – An Kit Oct 09 '18 at 04:36
  • I got same error in Xcode 10 . same project was working fine In Xcode 9.1 – Vishal Vaghasiya Nov 20 '18 at 11:49
  • If you're using Flutter .. just do a flutter clean on the command line ... then go build in xcode. – Kirby Jan 07 '19 at 23:39
  • 1
    For me I had to go to the [Project_Name] > Build Phases > Copy Bundle Resources and remove the .plist file – Manish Mahajan Jan 08 '19 at 10:49
  • 1
    I got the same error while creating "Core Data" subclasses for the entities defined. To fix the error we have to select the file and open the File Inspector pane on the right side. There will be a "Target Membership" section, uncheck the target from here because the same file is getting executed multiple times. – subin272 Jan 11 '19 at 11:43
  • thanks, I was getting crazy because this happened when I was working with unit tests – Renata Faria Jan 21 '19 at 09:30
  • check copy pods resources – Puji Wahono Jan 22 '19 at 04:46
  • I have an macOS app and an extension that have the same product module name, that was the issue – onmyway133 Apr 10 '19 at 20:41
52

If you use CocoaPods you may want to try deintegrate the pods and install again. It works for me.

pod deintegrate

pod install

Ming Chu
  • 1,315
  • 15
  • 13
50

While checking the build log, I noticed a warning:

note: Using new build system
note: Planning build
note: Constructing build description
Build system information
warning: The Copy Bundle Resources build phase contains this target's Info.plist file '/Users/<redacted>/Repositories/Whitesmith/optimize-ios/Carthage/Checkouts/WSStatusBarNotification/Miscellaneous/Info.plist'. (in target 'JDStatusBarNotification')

So, if that's your case then just go to your target:

  1. Build Phases
  2. Copy Bundle Resource
  3. Remove info.plist.
ricardopereira
  • 11,118
  • 5
  • 63
  • 81
AndrewSas
  • 683
  • 5
  • 10
  • 47
    info.plist file is not present in copy bundle resources, still getting the same error – bunty kumar Jul 15 '18 at 16:03
  • Removing an excessive Info.plist from the copy bundle resources build phase solved it for me. However, my warning was different because accidentally an Info.plist of a different target but within the same project was added to the Copy Bundle Resources build phase. The warning was: "warning: duplicate output file '... MyApp.app/Info.plist' on task: ProcessInfoPlistFile". And leading to the same error as in the original question: "error: Multiple commands produce '... MyApp.app/Info.plist'". – Martin Polak Sep 26 '18 at 12:40
  • in my case it was "LICENSE" file - once I've removed it, the issue was fixed, so I guess the problem is more general than "plist", just seems to be just a more often encountered – vir us Feb 06 '19 at 17:41
44

Read this answer if error message references Core Data files

Synopsis: You may have both automatically-generated and manually-generated Core Data managed object class files.

This answer applies if the first line of the error refers to a Foo+CoreDataProperties.o or Foo+CoreDataClass.o file. Example:

error: Multiple commands produce '/Users/me/Library/Developer/Xcode/DerivedData/MyApp-uebslaqdwgldkjemijpdqmizgyzc/Build/Intermediates.noindex/ MyApp /Debug-iphonesimulator/ MyApp.build/Objects-normal/x86_64/Foo+CoreDataProperties.o':

1) Target ' MyApp ' (project ' MyApp ') has compile command for Swift source files

2) Target ' MyApp ' (project ' MyApp ') has compile command for Swift source files

The root cause can be seen by expanding the Compile Swift Source Files section of the Build Transcript. For example:

<unknown>:0: error: filename "Address+CoreDataClass.swift" used twice: '/Users/myUserName/Projects/Jnky/Foo+CoreDataProperties' and '/Users/jk/myUserName/Developer/Xcode/DerivedData/MyApp-uebslaqdwgldkjemijpdqmizgyzc/Build/Intermediates.noindex/MyApp.build/Debug/MyApp.build/DerivedSources/CoreDataGenerated/Jnky/Foo+CoreDataProperties.swift'

The first file mentioned there is a source file in your project directory, which someone generated by selecting your data model in the Project Navigator and clicking in the menu Editor > Create Managed Object Subclass. This feature was added in Xcode 7 or so.

The second file is a file of the same name but which is buried in Xcode's DerivedData. This file is generated automatically by Xcode during every build if the data model (.xcdatamodeld) file is included in the target's Compile Sources build phase. This feature was added in Xcode 9 or so. Zero, one or two files are generated for each entity/class, depending on the setting of the Codegen popup. That popup is in the Data Model Inspector when you select an entity while editing your data model…

screenshot of Data Model Inspector

The settings are:

  • Manual/None No files are generated
  • Category/Extension One file, Foo+CoreDataProperties.m or .swift is generated, containing an Objective-C category or Swift extension.
  • Class Definition That same Category/Extension file is generated, and in addition a Foo+CoreDataClass.m or .swift is generated, containing class declaration and definition.

So you see the problem occurs when a developer (like me) who is accustomed to the older Xcode begins a project in a newer Xcode. We think that we need to use the Create Managed Object Subclass menu item, which we do, to create the files we can see in the Project Navigator while not realizing that our settings in the Codegen popup are causing Xcode to create duplicate files, which Apple "cleverly" does not show in the Project Navigator, because they don't trust developers to read and heed the comment in the header // This file was automatically generated and should not be edited.

Solution 1 - Use the Older Way

You can disable all automatic Codegen for a data model with just one setting:

  • Open the problem Target's Build Phases (In Project Navigator, select project, then in list of TARGETS which appears, select the problem target, then tab Build Phases).
  • Expand the Compile Sources entry and find the problem data model (.xcdatamodeld file).
  • Delete it from the compile list
  • Ensure the data model is included in the Copy Bundle Resources list.

Solution 2 - Core Data Magic For Beginners

Here, you go all in on the newer way.

  • Leave your data model as is in that Compile Sources.
  • In each Entity Inspector in your data model, set Codegen to Class Definition.
  • In the Project Navigator, delete and trash any Foo+CoreDataClass files, and rename any Foo+CoreDataProperties.m or .swift files to something like Foo+MyProperties.
  • In each Foo+MyProperties.m or .swift file, if there are properties generated by Xcode, delete these properties because they will be in the hidden files created by Codegen.

With this solution, your class definitions are generated automatically from the data model on each build. You can't even see them. It is Core Data Magic, nice and simple for beginners.

Solution 3 - For Most Real-World Apps

But Solution 2 is no good if you really want to add non-managed properties. (Objective-C does not allow properties to be added in categories, and Swift does not allow stored properties to be added in extensions.) So in most real-world apps, you probably want to go halfway between Solutions 1 and 2…

  • Leave your data model in the list of Compile Sources
  • In each Entity Inspector in your data model, set Codegen to Category/Extension.
  • In the Project Navigator, delete and trash any Foo+CoreDataClass.m or .swift files, and, to reduce future confusion, rename any Foo+CoreDataProperties.m or .swift files to maybe just Foo.m or .swift.
  • Ensure that each Foo.m or .swift file contains the class definition, to which you can add your own non-managed properties.

(Acknowledgments to the answer by Positron. My answer here explains why Positron's answer (my Solution 1) works, and adds Solution 2 and Solution 3.)

Jerry Krinock
  • 4,860
  • 33
  • 39
  • 1
    Nice answer. Just wanted to add you can clear the duplicated hidden files using 'Product > Clean Build Folder' after fixing the Codegen to Manual/None taken from a comment from [here](https://stackoverflow.com/questions/34838184/xcode-swift-filename-used-twice-build-error). – indubitably Nov 08 '19 at 03:09
37

Solution 1 :
Open target ➼ Build phases ➼ Copy Bundle Resources ➼ remove info.plist from there. ➼ you will have to remove the plist from the Extensions too (if any).

Solution 2:
If you use CocoaPods you may want to try deintegrate the pods and install again. Commands:

1) pod deintegrate
2) pod install

Solution 3:
In Xcode, go to File ➼ Project/Workspace settings.
➼ Change the build system to Legacy Build system.

Haseeb Javed
  • 1,769
  • 17
  • 20
32

I had the same problem, I had a one more helper app in main App and copy this in resource. In my case solved as :-

1) Target -> 2)Build Phases 2) Copy File (n items) 3) Remove Copy File.

The Helper app automatically copied in Xcode 10.0.

enter image description here

Prakash Jat
  • 559
  • 5
  • 8
  • 5
    Copy files + Copy Bundle Resources deletion helped. – J A S K I E R Jun 29 '18 at 17:05
  • This worked for me with slight modification - In my case there were multiple files in the copy files step, somehow the same filenames were copied to the bundle multiple times/twice - resulting in the error : deleting a single row needs you to highlight the row/filter the name complained in the error and delete one row by minus sign (its always on the bottom row) instead of deleting that entire copy files step. – AztecWarrior_25 Jan 01 '19 at 00:18
26

Try this Its Working :

In Xcode, go to File->Project/Workspace settings.

Change the build system to Legacy Build system.

Akash Patel
  • 325
  • 3
  • 2
  • 5
    In this case Xcode is flagging a problem in the project, so reverting to the legacy build system will just hide it for now. Xcode's reporting of these sorts of problems is intentional and it's best to fix the issue. For more information please see https://help.apple.com/xcode/mac/10.0/#/dev14a2fd0c0. – Rick Ballard Oct 22 '18 at 17:39
23

None of the solutions proposed here worked for me. This was particularly due to CocoaPods. I was previously using Cocoapods 1.3.1. Simply upgrading to 1.5.3 didn't resolve the issue right away.

The steps I followed were:

  1. Delete Podfile.lock
  2. Delete Pods directory
  3. Delete Derived Data & Clean
  4. Exit Xcode
  5. Update CocoaPods to 1.5.3
  6. Run pod install
  7. Open workspace and build
Justin
  • 414
  • 4
  • 13
  • 5
    Updating CocoaPods to 1.5.3 (sudo gem install cocoapods) and running (pod install) was enough to get it working for me. Thanks! – mikemike396 Oct 04 '18 at 17:47
  • I did some of recommened above but this was the only one that solved for me. Thanks – Almeida Nov 04 '18 at 21:59
  • This one solved it for me too. I think it is better than the legacy build solution because it actually takes care of the issue. – MateusK Jun 25 '19 at 14:13
  • 1
    This worked for me, but I also had to add `install! 'cocoapods', :disable_input_output_paths => true` at the top of my podfile. Additionally, if you don't want to update your pods - don't delete podfile.lock and all pods will be installed at their current version. – DoesData Jul 21 '19 at 21:28
  • This is a great general process for fixing lots of things. Great answer. – Iskeraet Jul 07 '21 at 16:53
22

One option which solved my issue is to changing build system to legacy build system. Please follow the following steps in Xcode 10+.

Here I have written a detailed article on the problem & its solution. Xcode Error: Multiple commands produce

enter image description here

enter image description here

Asad Ali Choudhry
  • 4,985
  • 4
  • 31
  • 36
19

In my case PDFGenerator was producing an info.plist file, I just deleted it.

enter image description here

fullmoon
  • 8,030
  • 5
  • 43
  • 58
18

This answer is deprecated - Xcode 12 has deprecated the Legacy Build System, it will be removed in a further release

I'm using Xcode 11.4 Can't build old project

Xcode => File => Project Settings => Build System => Legacy Build System

enter image description here

enter image description here

shim
  • 9,289
  • 12
  • 69
  • 108
Chea Sambath
  • 1,305
  • 2
  • 13
  • 16
15

there are some reasons that cause this error to be shown.

1- the project name is the same as a dependency that is used on the project

this error may happen when you choose a name for your project that is the same as one of the dependencies that you use on the project for example you cannot choose FirebaseAuth or GoogleSignIn as the project's name if you use them via pod or SPM.

to solve this problem you should change the project name with the following way:

choose the project from project navigator on the left sidebar, change the project name from the file inspector -> Identity and Type -> name from the right sidebar.

enter image description here

after you change it, XCode asks you to change all relative targets and just press rename.

enter image description here

2 - duplicated info.plist on the Copy Bundle resources portion

you may face this error when info.plist is added to Copy Bundle resources unwanted, choose project form project navigator -> choose target -> goto Build Phases tab -> Copy Bundle Resources and if you see info.plist there, remove it by choose info.plist like the following image

enter image description here

3 - pod files do not work well

sometimes you got this error because the dependencies that you use break for unexpected reasons.

1 - Delete Podfile.lock

2 - Delete Pods directory

3 - Delete Derived Data & Clean (you can find this directory from XCode menu -> Preferences... -> Locations -> Derived Data and go to the directory by clicking the arrow icon at the right of the address)

4 - Exit Xcode

5 - Update CocoaPods with [sudo] gem install cocoapods on mac terminal

6 - goto the project directory on the terminal and run pod install

7 - Open workspace and build

5- duplicated Core data

you may face this problem when you use Core data on the project

first I explain coreData codegen types:

enter image description here

**Class Definition: ** Choose Class Definition when you don’t need to edit the properties or functionality of the managed object subclass and properties files that Core Data generates for you.

Category/Extension: Choose Category/Extension to add additional convenience methods or business logic inside your managed object subclass.

Manual/None: Choose Manual/None to edit the properties in your managed object subclass, for example, to alter access modifiers, and to add additional convenience methods or business logic.

Choose the Manual/None and check if a copy of xcmodeldata is exist on CopyBundleRecources, remove it.

enter image description here

mohsen
  • 4,698
  • 1
  • 33
  • 54
14

Before I begin note that my project utilizes Carthage as a dependency manager.

None of the existing answers here resolved my issue. What did resolve the issue for me was the following.

First, I noticed that the build error pointed out one framework in particular. Next I filtered App Target > Build Phases for that framework. I noticed that that framework was present in both "Link Binary With Libraries" and "Embed Frameworks". Noting that none of the frameworks listed under "Embed Frameworks" were ones managed by Carthage I removed the framework in question from "Embed Frameworks". I then re-built my project and everything works fine including the functionality enabled by the framework in question.

Pouria Almassi
  • 1,580
  • 2
  • 17
  • 26
  • 1
    I used PODS. Removing everything from Embed Frameworks worked. I clean and rebuilt with no errors. The legacy solution also works but doesn't solve the issue at hand (for anyone reading this). I'm on xcode 10.2, cocoapods-1.6.1. – Nadine Rose May 09 '19 at 15:52
  • 1
    I'm using Carthage and this fixed it for me! – Devin Brown Dec 26 '19 at 18:50
  • I also used CocoaPods. Framework is connected as development pod. "Embed Frameworks" is empty and still got this issue – Luten May 28 '20 at 12:35
13

I had this problem when I had a file with the same name in two different targets. For some reason one of those files I had part of both targets. So basically I had two files. And both of those files belonged to one target.

It makes sense that a target can only have one file name per target, so just unchecking the target member box for the file that wasn't related to the main target fixed the issue.

Charlie Fish
  • 18,491
  • 19
  • 86
  • 179
13

This issue arose for me after adding a second part of the Fabric suite of SDKs to the app.

What actually happened was that the GoogleUtilies Framework was added twice to the Pods project

Two entries for GoogleUtilities.framework

This would have been fine prior to Xcode 10 but Xcode 10 will complain if a file has two actions against it (in this case a copy action).

It's safe to remove the second framework.

Damo
  • 12,840
  • 3
  • 51
  • 62
13

Well, in my case:

If you create two file with same name, will trigger this error. Remove the one you recently added, will solve this problem.

Hope this helps.

gushitong
  • 1,898
  • 16
  • 24
12

Unfortunately none of these answers worked for me... here was the error I was seeing:

"Multiple commands produce '/Users/.../.../.../Frameworks/abcdef.framework"

  1. That command depends on command ...: script phase ""
  2. That command depends on command ...: script phase ""

Adding this line to the Podfile and doing a " Pod Install " was the ONLY thing that worked.

install! 'cocoapods', :disable_input_output_paths => true

I really hope this helps someone. I spent hours trying to fix this and finally got it.

Sometimes I just wish Xcode was as efficient as IntelliJ / Android Studio :(

Goodluck!

Mario Bouchedid
  • 431
  • 5
  • 7
  • note, this one requires newer pod installation > 1.6 i guess based on this https://www.ralfebert.de/ios/blog/cocoapods-clean-input-output-files/ – Hofi Feb 25 '21 at 17:49
  • You might want to do first a Product -> Clean Build Folder. – Fotios Tsakiris Oct 30 '21 at 12:41
  • OMG Mario! This worked for me! THANK YOU so much for this solution. My problem was specifically with Google Analytics pods creating the error. I just inserted this line near the top of my Podfile and suddenly my project would build. My steps were: 1) Add this line to pod file 2) Pod deintegrate 3) Pod install 4) Product --> Clean Build Folder 5) Build code base 6) Scream hallelujah, hug my girlfriend, pop a cold one, light a fatty and relax 7) :-D – KeithTheBiped Jan 20 '22 at 05:13
  • @KeithTheBiped Happy to help!! Happy coding :) – Mario Bouchedid Mar 02 '22 at 18:59
11

My error was:

duplicate output file

'/Users/home/Library/Developer/Xcode/DerivedData/myAppName-fawptgabysjowicvpeqydjniuovo/Build/Products/Debug-iphoneos/myAppName.app/GoogleMaps.bundle' on task: PhaseScriptExecution [CP] Copy Pods Resources /Users/home/Library/Developer/Xcode/DerivedData/myAppName-fawptgabysjowicvpeqydjniuovo/Build/Intermediates.noindex/myAppName.build/Debug-iphoneos/myAppName.build/Script-32CCC25BF727B592A1784900.sh

I focused on the problem file being GoogleMaps.bundle and the location of that file being in [CP] Copy Pods Resources, and the fact that it specified it’s a duplicate output file (I highlighted them in black above), it's the 4th step below

First create a copy of your project and make sure you first do the following steps on that copy

1- In the project navigator I went to the blue project icon

enter image description here

2- I choose Build phases

enter image description here

3- Under Build Phases I choose [CP] Copy Pods Resources

enter image description here

4- Under [CP] Copy Pods Resources I went to Output Files and underneath there I found the file that ended with GoogleMaps.bundle. I selected it and pressed the minus sign to delete it. Make sure you go to Output Files and NOT Input Files

enter image description here

5- I did a clean shift+cmmd+k and afterwards when I built the project the error was gone

The odd thing was even though the red error went away the yellow warning was still there but it worked :)

Lance Samaria
  • 17,576
  • 18
  • 108
  • 256
11

This answer for you if you are facing problem in core data. Go to yourfilename.xcdatamodeld and make sure all the entities have manual/None Codegen. enter image description here

Muhammad Farooq
  • 263
  • 3
  • 10
10

Here is another working solution : (If you are using custom Pods)

  • Select "Pods" from sidebar as highlights in screenshot.
  • Click on Build Phase. Expand "Headers" section. There are 3 options Public, Private, Project
  • Expand Public and check there are duplicate files. Remove it. DONE!!

enter image description here

Gajendra K Chauhan
  • 3,387
  • 7
  • 40
  • 55
10

So the problem I was having is that I had accidentally included the Info.plist in the project settings -> Build Phases -> Copy Bundle Resources for my target.

Austin
  • 719
  • 5
  • 13
  • This was precisely the solution for me too, as this error occurred while trying to run tflite_camera_example in Xcode 10 – zai chang Oct 03 '18 at 07:38
10

Steps:

  1. Go to Xcode File
  2. Click to WorkSpace Settings
  3. Build System Select as Legacy Build System
JJJ
  • 32,902
  • 20
  • 89
  • 102
Sanjay Mali
  • 506
  • 6
  • 13
  • 7
    In this case Xcode is flagging a problem in the project, so reverting to the legacy build system will just hide it for now. Xcode's reporting of these sorts of problems is intentional and it's best to fix the issue. For more information please see https://help.apple.com/xcode/mac/10.0/#/dev14a2fd0c0. – Rick Ballard Oct 22 '18 at 17:40
  • This works for me. Changing product name doesn't. As my product is mixed with half objective-c code and swift code. My issue is "Multiple commands produce swiftmodule" – wzhang84 Oct 25 '18 at 21:02
  • there is problem it is showing that Legacy Build System is depratcted – Engr.Aftab Ufaq Feb 02 '21 at 11:57
10

I am new to IOS development and I tried the above answers but they did not work for me.

My XCode version is 12.4, Swift 5

I was getting Multiple commands produce error while building

I tried to expand the error from the error list but double-clicking it did nothing so first it was difficult for me to know the full error.

So I right clicked the error and copied to clipboard, pasted it in text editor.

It showed the full error

It said which part has the problem

Multiple commands produce '/Users/userName/Library/Developer/Xcode/DerivedData/ProjectName-fbeqffupediuiedlrplqjyhgyqna/Build/Products/Production-iphoneos/XCFrameworkIntermediates/GoogleAppMeasurement':
1) That command depends on command in Target 'GoogleAppMeasurement-iOS12.3' (project 'Pods'): script phase “[CP] Copy XCFrameworks”
2) That command depends on command in Target 'GoogleAppMeasurement-iOS14.1' (project 'Pods'): script phase “[CP] Copy XCFrameworks”

(I am using Google Firebase)

I was surprised to see that the pods were being compiled for 2 different versions of iOS (12.3 and 14.1)

I found that, in the active target configuration, I set iOS 12.3 in the Deployment Info section and set 14.1 in Deployment Target in Project level Info tab

Setting both to same required version and then clean and build solved the issue.

Please let me know if setting 2 different versions is a mistake or not. If it was not a mistake, then what to do keeping following in mind:

  • I am not allowed to set build system to legacy
  • info.plist does not exist in the Copy Bundle Resources phase
Anubhab Maji
  • 520
  • 7
  • 9
9

I had bunch of Multiple commands produce warnings - not limited to info.plist duplication in one target. Including localized resources and string files, headers etc.

Solution: remove all duplications in target membership.

Will Gwo
  • 403
  • 3
  • 6
  • I had this error because i had a watch target with it's own infoplist.strings file which was being copied to the same directory as the main app's infoplist.strings file. They would both end up in the same place when being built. – Lyck Oct 07 '18 at 00:10
9

Try all this option anyone of this 3 option will work for you, for sure

Option 1: Remove all files from

Target >> Build Phases >> Compile Sources

Target >> Build Phases >> Copy Bundle Resources

Option 2: Change the build system

Xcode->File->Project Settings-> Build System -> Legacy Build System

Option 3: remove and update existing pod

pod cache clean PromisesObjC
pod cache clean PromisesSwift
cd [your_project_dir]
rm -rf Pods/
rm Podfile.lock
pod update

I hope this will help you, Happy coding :-)
Shoaib Bagwan
  • 413
  • 5
  • 7
  • 2
    -1. No it doesn't work "for sure". What is the point in removing compile sources and copy bundle resources?! Project won't work without compiling code and resources. – Luten Jun 09 '20 at 08:30
9

Go in Project Build Phase and Remove info.plist from the Compile Sources. It will remove that issue and project will be active again.

enter image description here

Aditya Sharma
  • 585
  • 5
  • 18
  • 1
    Thanks for the solution. My problem was in `copy bundle resources` section of the `Build phases`, I removed `info.plist` from there and the problem got solved. – Mahdieh Shavandi Dec 16 '22 at 11:07
9

It's worth noting that this error can be produced after auto generation of CoreData models where the Codegen is not set to Manual/None.

To correct this in Xcode 10 double click on your xcdatamodeId file and select each of your entities and set Codegen to Manual/None under Class in your Data Model Inspector.

Aurelia W
  • 377
  • 3
  • 8
9

If you are manually making your entity's CoreDataClass and CoreDataProperties, make sure you go to your xcdatamodel and set the Codegen in the inspector tab to "Manual/None". Xcode will automatically create a duplicate class for you if this is set as "Class Definition".

Andrew Lee
  • 446
  • 4
  • 7
9

In my case I had the error about the Info.plist duplicate output file :

warning: duplicate output file


/Users/mahdifaraji/Desktop/boilerplate/ios/boilerplate.xcodeproj: warning: The Copy Bundle Resources build phase contains this target's Info.plist file '/Users/mahdifaraji/Desktop/boilerplate/ios/boilerplate/Info.plist'. (in target 'boilerplate' from project 'boilerplate')
warning: duplicate output file '/Users/mahdifaraji/Library/Developer/Xcode/DerivedData/boilerplate-fpkyeiljiiuxbidceadasmpsntah/Build/Products/Debug-iphonesimulator/boilerplate.app/Info.plist' on task: ProcessInfoPlistFile /Users/mahdifaraji/Library/Developer/Xcode/DerivedData/boilerplate-fpkyeiljiiuxbidceadasmpsntah/Build/Products/Debug-iphonesimulator/boilerplate.app/Info.plist /Users/mahdifaraji/Desktop/boilerplate/ios/boilerplate/Info.plist (in target 'boilerplate' from project 'boilerplate')

** BUILD FAILED **

I solved the issue by removing it from Project -> Target -> BuildPhases -> Copy Bundle Resources

Mehdi Faraji
  • 2,574
  • 8
  • 28
  • 76
9

I'm facing same issue in Xcode 14.2

  • error says

Multiple commands produce '/Users/bhaveshparmar/Library/Developer/Xcode/DerivedData/App-cgedsyimmqlucmcodsrdnwzllkat/Build/Intermediates.noindex/App.build/development-iphonesimulator/App.build/Objects-normal/x86_64/ThemeLabel.stringsdata'

It's because my source code contains 2 files with same name ThemeLabel, so deleted one ThemeLabel and issue resolved.

enter image description here

mokagio
  • 16,391
  • 3
  • 51
  • 58
steveSarsawa
  • 1,559
  • 2
  • 14
  • 31
7

Search & Remove duplicate files those are produced from multiple commands.

Here, an extra Info.plist file should be removed (In my case it was Contents.json)

error: Multiple commands produce '/Users/uesr/Library/Developer/Xcode/DerivedData/OptimalLive-fxatvygbofczeyhjsawtebkimvwx/Build/Products/Debug-iphoneos/OptimalLive.app/Info.plist'
roy
  • 6,685
  • 3
  • 26
  • 39
  • Annoying. I know it's twice the same file so I never cared about it being copied one over the other. – Martin Sep 19 '18 at 12:57
7

I using Carthage and Xcode 10.

My Solution is -> Project -> Target -> General ->

Remove the Frameworks added with Carthage from "Embedded Binaries"

usualy u have to add a script in Build Phases to strip the architecture for app store.

In Xcode 10 the script seems called always. So it copies the frameworks to the right place and you don't have to add them to the General Tab.

Note: if not set -> in Build Settings -> Search Paths -> Framework Search Paths -> set the path to the Framework u added with Carthage .... eg. "$(PROJECT_DIR)/Carthage/Build/iOS"

Maurice Raguse
  • 4,437
  • 2
  • 29
  • 46
7

One of my CocoaPods was oudated and caused the issue. Did an pods update and it worked fine.

I believe it may have been the LivePerson SDK

ninjaneer
  • 6,951
  • 8
  • 60
  • 104
7

My problem was a duplicate Product Module Name for both the Action Extension I created and the main target. The solution was changing the Product module name (Under Build Settings) for the Extension.

(XCode 11)

Lirik
  • 3,167
  • 1
  • 30
  • 31
6

Had similar issue but with .swiftdoc files.

I have extensions and unit test targets in project. And they had same "Product Module Name" (PRODUCT_MODULE_NAME in Build Settings) as application. After making names unique issue gone.

Igor Palaguta
  • 3,579
  • 2
  • 20
  • 32
6

This basically means you have multiple files named Info.plist; Usually it's fine, but accidentally yours files are set to the same Target Membership. So the fix is: click each each file and check their Target Membership on the right, make sure they don't overlap.

code4latte
  • 560
  • 9
  • 9
6

My issue was in Xcode 10 being run in Mojave, and while trying to run unit tests that I wrote before updating to XCode 10.

In my case, I had this issue while running my TestTarget target. To resolve, I had to:

  • Delete one of the target dependency (in TestTarget > build phases > Target Dependencies)

since I had two other targets besides my TestTarget and both were running the same script and creating/copying files at a certain point.

And that conflicted with what was mentioned in Build System Release Notes for Xcode 10 here:

It is an error for any individual file in the build to be produced by more than one build command. For example, if two targets each declare the same output file from a shell script phase, factor out the declaration of the output file into a single target.

New UPDATE after I updated from Xcode 10.1 to 10.2

Similar issue again showed up after I updated to Xcode 10.2. I have multiple targets in by project: Target1 and Target2, and I solved this issue by:

  • navigating to Edit Scheme > Build and
  • removing one of the target from being built: uncheck the checkbox of Target1 under Test since I knew Target2 imported Target1

Also to note here, Target2's checkbox is to remain checked under Test

Samman Bikram Thapa
  • 1,037
  • 12
  • 15
6
error: Multiple commands produce '/Users/KunshtechNew/Library/Developer/Xcode/DerivedData/chat21-fgjaqebxysmggqfdnetggdbzfqih/Build/Products/Debug-iphonesimulator/Chat21.app/Base.lproj/Chat.strings':
1) Target 'chat21' (project 'chat21') has copy command from '/Users/KunshtechNew/Downloads/chat21-ios-demo-master/TildeskWidget/Chat21Core/Base.lproj/Chat.strings' to '/Users/KunshtechNew/Library/Developer/Xcode/DerivedData/chat21-fgjaqebxysmggqfdnetggdbzfqih/Build/Products/Debug-iphonesimulator/Chat21.app/Base.lproj/Chat.strings'
2) Target 'chat21' (project 'chat21') has copy command from '/Users/KunshtechNew/Downloads/chat21-ios-sdk-master 2/Chat21Core/Base.lproj/Chat.strings' to '/Users/KunshtechNew/Library/Developer/Xcode/DerivedData/chat21-fgjaqebxysmggqfdnetggdbzfqih/Build/Products/Debug-iphonesimulator/Chat21.app/Base.lproj/Chat.strings'

There can be 2 different solutions to get rid of this problem:

Solution 1

As We can see I was getting the same error.. in my case there was an extra copy of the folder Chat21Core in TildeskWidget folder ..This was creating issue.. So one of the possible solutions can also be just read the error entirely and try to find if there is any extra copy referenced from project or not.

Solution 2

Another simple solution I found when I face same type of issue for different project. This time I had to apply different solution.

  • pod deintegrate from the project.
  • Remove the workspace file and pod.lock file from the project folder.
  • Again pod install and try to build the project.

Hope this might work for you..

Sanjay Mangaroliya
  • 4,286
  • 2
  • 29
  • 33
6

In my case, I added GoogleService-Info.plist file twice disappointedly to my Firebase project.

I delete first added GoogleService-Info.plist and problem solved.

Emre Değirmenci
  • 715
  • 6
  • 22
6

Remove the damn Assets file

Solution -> Open target -> Build phases > Copy Bundle Resources and remove Assets from there.

Rein rPavi
  • 3,368
  • 4
  • 22
  • 32
5

Select your scheme (top left corner) -> Edit Scheme... -> Build (left tab) -> uncheck "Find Implicit Dependencies"

enter image description here

And after that you may need to fix any dependencies that were not imported explicitly by your targets.

MarekR
  • 2,410
  • 1
  • 14
  • 10
5

In my case, Build archive error vs Xcode10

-1: Multiple commands produce '/Users/kk/Library/Developer/Xcode/DerivedData/react_carday_app-hjahojxsbvmmiyaklrhhuqljdfwv/Build/Intermediates.noindex/ArchiveIntermediates/react_carday_app/IntermediateBuildFilesPath/UninstalledProducts/iphoneos/libyoga.a': 1) Target 'yoga' has a command with output '/Users/kk/Library/Developer/Xcode/DerivedData/react_carday_app-hjahojxsbvmmiyaklrhhuqljdfwv/Build/Intermediates.noindex/ArchiveIntermediates/react_carday_app/IntermediateBuildFilesPath/UninstalledProducts/iphoneos/libyoga.a' 2) Target 'yoga' has a command with output '/Users/kk/Library/Developer/Xcode/DerivedData/react_carday_app-hjahojxsbvmmiyaklrhhuqljdfwv/Build/Intermediates.noindex/ArchiveIntermediates/react_carday_app/IntermediateBuildFilesPath/UninstalledProducts/iphoneos/libyoga.a'

There should something like bellow in your Podfile

post_install do |installer|
  installer.pods_project.targets.each do |target|
    if target.name == "React"
      target.remove_from_project
    end

    if target.name == "yoga"
      target.remove_from_project
    end
  end
end

and then run pod install

SenKe
  • 346
  • 3
  • 10
5

DONT enable legacy build, you're just hiding the problem

I had 2 GoogleService-Info.plist in my project. had to remove the older one and also remove its entry from Build Phases >> Copy Bundle Resources enter image description here

Ali80
  • 6,333
  • 2
  • 43
  • 33
4

Moving to Xcode 10, errors like

error: Multiple commands produce '/Users/uesr/Library/Developer/Xcode/DerivedData/OptimalLive-fxatvygbofczeyhjsawtebkimvwx/Build/Products/Debug-iphoneos/OptimalLive.app/Info.plist':

can be solved as follows:

Go to Xcode->File->Workspace/Project Settings-> Build System -> Legacy Build System.

Noor
  • 967
  • 7
  • 18
  • 6
    In this case Xcode is flagging a problem in the project, so reverting to the legacy build system will just hide it for now. Xcode's reporting of these sorts of problems is intentional and it's best to fix the issue. For more information please see https://help.apple.com/xcode/mac/10.0/#/dev14a2fd0c0. – Rick Ballard Oct 22 '18 at 17:40
  • this one did it for me, you sir are a genious – samouray Dec 14 '18 at 03:53
4

In Xcode 10, it will work on previous version too

  1. Double click on project
  2. You will see image like below
  3. select TARGET from left
  4. Expand Copy Bundle Resources (0 items)
  5. Remove corresponding file which produces the error

enter image description here

Aravind Vemula
  • 1,571
  • 17
  • 22
4

I notice the target has a Run Script Phases exactly the same as the [EC] Embed Pods Frameworks. After removing the Run Script, the problem was solved.

enter image description here

pableiros
  • 14,932
  • 12
  • 99
  • 105
3

I had the same issue with a plist. Turns out I had two copies of it, one was empty and one was in my localized resources folder. Removing one of them (the empty one) solved the issue.

If you check your error, lines 1) and 2) have different paths. You likely have this file defined twice in your copy phase.

Check your target properties, Build Phases, Copy Bundle Resources, and look for a duplicate info.plist. Figure out which path is incorrect and remove it. (You'll probably want to delete it from the filesystem also.)

rodfleischer
  • 320
  • 5
  • 9
3

For dependency projects managed by cocoapods, solved the problem by providing a local podspec to exclude info.plist from sources. Take godzippa as an example

Podfile pod 'Godzippa', :podspec => "venders/godzippa.podspec"

venders/godzippa.podspec s.source_files = 'Sources/*.{h,m}'

Shuo
  • 8,447
  • 4
  • 30
  • 36
3

In my case an Info.plist file was scooped up from one of my Cocoapods. Deleted it and solved the problem.

Rebeloper
  • 813
  • 10
  • 22
3

In our case, we just cleaned up any debris from "Copy Bundle Resources", only leaving the minimum items.

enter image description here

goodhyun
  • 4,814
  • 3
  • 33
  • 25
3

Same here but here is the latest solution May 2020

It looks like a bug or some new issue with new Xcode version.

Error response is:

Failed to build iOS project. We ran "xcodebuild" command but it exited with error code 65.

Detailed response:

Build system information error: Multiple commands produce '/path/of/the/project/ios/build/NameOfTheProject/Build/Products/Debug-iphonesimulator/NameOfTheProject.app/Zocial.ttf':

1) Target 'NameOfTheProject' (project 'NameOfTheProject') has copy command from '/path/of/the/project/NameOfTheProject/node_modules/react-native-vector-icons/Fonts/Zocial.ttf' to '/path/of/the/project/NameOfTheProject/ios/build/NameOfTheProject/Build/Products/Debug-iphonesimulator/NameOfTheProject.app/Zocial.ttf'

2) That command depends on command in Target 'NameOfTheProject' (project 'NameOfTheProject'): script phase “[CP] Copy Pods Resources”

Build system information error: Multiple commands produce '/path/of/the/project/ios/build/NameOfTheProject/Build/Products/Debug-iphonesimulator/NameOfTheProject.app/SimpleLineIcons.ttf':

1) Target 'NameOfTheProject' (project 'NameOfTheProject') has copy command from '/path/of/the/project/NameOfTheProject/node_modules/react-native-vector-icons/Fonts/SimpleLineIcons.ttf' to '/path/of/the/project/NameOfTheProject/ios/build/NameOfTheProject/Build/Products/Debug-iphonesimulator/NameOfTheProject.app/SimpleLineIcons.ttf'

2) That command depends on command in Target 'NameOfTheProject' (project 'NameOfTheProject'): script phase “[CP] Copy Pods Resources”

...

That response repeat for each .ttf file used by the library.

I had to temporary react-native unlink react-native-vector-icons, and the project build again, but with not icons.

kepy97
  • 988
  • 10
  • 12
3

[Updated] try to checking on Project-> Targets -> (Your name Project) -> Copy Bundle Resources, and check if there is some duplicated name of file related on your error.

After you found duplicate name, remove the one path that shown wrong.

enter image description here

picture above show that I've already removed the wrong one. Sorry I wasnt take screenshoot the errors pictures. Will update if face it again.

Slamet Riyadi
  • 203
  • 1
  • 2
  • 6
3

The most common, simple, problem:

Your assets folder has two different images, which happen to have the same name.

This can easily happen in assets:

- assets
- - photos of cars
- - - ford
- - - - mustang.jpg
- - - - truck.jpg
- - - chevy
- - - - truck.jpg

Two "truck.jpg"

Just rename one.

Fattie
  • 27,874
  • 70
  • 431
  • 719
2

In my case, I've got my GoogleService-info.plist file multiple copied, as it's included in both my main app and a share extension project.

The solution is to exclude this file from the extension project (by unchecking it from the Target in its File Inspector side window view); as I don't like the option to switch to Legacy Build System (which is also working for me).

Wei WANG
  • 1,748
  • 19
  • 23
2

Commenting use_frameworks! in PodFile worked for me.

#use_frameworks!

Note: Did this on XCode 10.1, pod version 1.8.4

Vishwas Singh
  • 1,497
  • 1
  • 18
  • 16
2

My situation was similar to the Damo's one - some Products were added to the Pods project twice. The structure of my Podfile was:

# platform :ios, '11.0' 

def shared_pods
  use_frameworks!
  pod 'SharedPod1'
end

target 'Target1' do
  pod 'SomePod1'
  shared_pods
end

target 'Target2' do
  shared_pods
end

and all shared pods were added twice. Uncommenting of first line and then pod install solved the problem.

Pavlo28
  • 1,454
  • 2
  • 16
  • 30
1

I had multiple copies of same file. Simply, keep one copy and remove all remaining. Clean Build, and issue sorted.

Eric Aya
  • 69,473
  • 35
  • 181
  • 253
Avinash Jadhav
  • 491
  • 4
  • 17
1

In my case, the problem comes from the podfile. I must add my test project to the podfile:

target 'MyApp' do
    pod 'Firebase'
    target 'MyAppTests' do
        inherit! :search_paths
        pod 'Firebase'
    end
end

After that, I need to execute:

pod update
Sean Stayns
  • 4,082
  • 5
  • 25
  • 35
1

For those using React Native and Cocoapods

The issue was produced by some libRN...a files. I fixed it by removing some of them like libRNScreens.a and libRNGestureHandler.a from Build Phases -> Link Binary with Libraries since they were already being referenced from another libraries. Others had to be replaced by their Pod version like libRNDeviceInfo.a:

enter image description here enter image description here

Community
  • 1
  • 1
1

In my case cleaning deprived data and build settings(in this order) , and restarting Xcode and Simulator helped.

I tried to do Solution -> Open target -> Build phases > Copy Bundle Resources , but it appeared there again. Cleaning deprived data helped. in the error it shows where is the duplicate, in my case it said it was in my app bundle and in deprived data.

Nalov
  • 578
  • 5
  • 9
1

Issue: Faced Error on creating xcodebuild archive for Cocoapod Project in the command line.

Error in Console: error: Multiple commands produce '/Users/xxxx/Library/Developer/Xcode/DerivedData/...':

Steps that resolved this issue:

  1. Open Xcode
  2. Select Scheme in the Top of Xcode Editor
  3. Select Edit Scheme
  4. Select Build in the left column of the Popup window.
  5. If any additional Target got added other than the Target related to Edited Scheme.
  6. Select the irrelevant Target and remove it by pressing "minus icon" and close the popup.
  7. Run the xcodebuild command again in the command line to get the issue resolved.

Description with image:

Step 1:

Select Scheme

Step 3:

Select Edit Scheme

Step 4-6:

Remove Irrelevant Target and Save

Community
  • 1
  • 1
1

The multiple produce error was being triggered by a hidden file for me (.gitkeep) Look at your compile sources closely, I believe this file was in Compile Sources but it shows up as an empty row. It doesn't actually say the hidden file's name, but I deleted the blank row and it fixed the issue, so I suspect the project navigator doesn't show hidden files.

lundhjem
  • 608
  • 6
  • 12
1

In my case I had a modified watch project where the app and the extension all had a info.plist files (all named with the same name), to solve this I have renamed the files for the ios app I left it as info.plist for the watch I have named it watch_info.plistand so on After that I have modified the 'project->target->build settings' under packaging info.pilst and modified the plist file name accordingly, that solved it for me

note that I saw in other places to changed the build system from new to legacy under project/workspace settings, Although it works - I do not recommend this as it causes other issues down the road.

benchuk
  • 669
  • 7
  • 13
1

The duplication of Product Name may also cause the same problem, especially when you are creating more than one extension target in a single workspace.

Make sure you also check Product Module Name according to @Lirik 's answer.

David Lee
  • 74
  • 8
1

Sometimes the reason for this problem is that you have multiple targets that have different iOS deployment target. just check that your targets(for example your main app target and your extensions) have the same iOS deployment target.

1

This error can also be encountered when you are creating a framework.

In your framework project if you have app targets and you have set different iOS version under Deployment Info section for each app target doing a pod install will create a new target for the same pod with ios version suffixed.

You can check this by going to the pods target. If you see duplication then that's your problem. Xcode get's confused because of this and throws an error like this.

Multiple commands produce '/Users/userName/Library/Developer/Xcode/DerivedData/ProjectName-fbeqffupediuiedlrplqjyhgyqna/Build/Products/Production-iphoneos/XCFrameworkIntermediates/SomePodFramework':
1) That command depends on command in Target 'SomePodFramework-iOS10.0' (project 'Pods'): script phase “[CP] Copy XCFrameworks”
2) That command depends on command in Target 'SomePodFramework-iOS13.0' (project 'Pods'): script phase “[CP] Copy XCFrameworks”

Here's what you need to do.

  1. Make all the minimum ios version under Deployment info for all the targets same. This will make sure when you do pod install, cocoapods doesn't create a new target of the same pod depending on multiple ios versions.
  2. Close you workspace. Delete xcworkspace, Podfile.lock and Pods folder.
  3. Run pod install.

Now when you open the worksapce you can check the pods target again. You will see that there is no duplication.

Now just change the deployment info of all your targets to what it was.

Rishab
  • 1,901
  • 2
  • 18
  • 34
  • I have one target with iOs 14 and another was default (15), so pod made two branches, and yes, just need to make all targets the same, then pod deintegrate, pod install, and it works. – djdance Aug 26 '22 at 18:57
1

For me, it was simply having two files with the same name.

John Sorensen
  • 710
  • 6
  • 29
  • How did you find out that they had the same name? – cedricbahirwe Jan 03 '22 at 13:35
  • 1
    Checking Xcode file directory. They were in different folders, but it was still a problem. I had a "Model" folder with a "Feed" file, and "View" folder with a "Feed" file and it threw the error – John Sorensen Jan 04 '22 at 04:39
1

2022 Answer

If you have more than one target,Make sure the Deployment targets are the same.

enter image description here

Mohamed Amin
  • 997
  • 2
  • 12
  • 29
  • 3
    I do not understand what this means. How do I make that sure, exactly? – Karolina Hagegård Aug 01 '22 at 08:44
  • Don't know what that means, plus in XCode 14.0.1 the category heading is "Supported Destinations" and instead of checkboxes, it's a list with icons beside each category and +/- buttons to add/delete items. – clearlight Oct 23 '22 at 05:19
1

In my case I found a duplicate in Project -> target -> Build phases -> Copy bundle resources, just I have removed the duplicate, the clean and run and everything works fine

Omar Zaoujal
  • 397
  • 5
  • 13
0

In my case, I had imported files from another project and had the same class in two locations.

I had the following related error message:enter image description here

When I copied the error, it turned out to copy a lot MORE textual information, and when I read through the dump, I came to the relevant line:

:0: error: filename "EventNode.swift" used twice:

which was followed by the locations and allowed me to eliminate the problem.

In the process, I found out what needs to be in 'Copy Bundle Resources':

  • Main.storyboard
  • Assets.xcassets
  • any SpriteKit scenes (.sks) your project uses
green_knight
  • 1,319
  • 14
  • 26
0

I got the same problem but with the header files.

enter image description here

In this case the solution is to move headers from "Public" to "Project" section.

enter image description here

93sauu
  • 3,770
  • 3
  • 27
  • 43
0

For me the problem was tied to having the same file included in the bundle resources twice. Not sure how that happened, but I removed one of them and it compiled fine with the new build system.

Larry
  • 396
  • 4
  • 7
0

My ProjectName.xcodeproj had a valid and an invalid reference to a file with same name. Same filename in the project navigator, one filename was red, the other okay. I got rid of the invalid reference one (the red one), issue resolved.

Surpher
  • 517
  • 4
  • 10
0

In my case, I had the same custom Public Header Folder Path for two different static libs. One was for a main app another for a watch app. Changed the path for the watch app and now everything is fine.

Alexey
  • 440
  • 3
  • 12
0

In my case (I'm using Carthage) the problem with

error: Multiple commands produce 
1) Target *** has copy command from
2) That command depends on command in Target ***: script phase “Run Carthage Script” 

was caused due to importing frameworks both to Embeded frameworks and Run carthage script phases in Build Phases configuration

These 2 phases copy frameworks to derrived data, so Xcode see duplicated files and print these errors with warning:

ignoring duplicated output file: (in target ***)

After removing duplicated frameworks from Embeded frameworks phase everything is working correctly.

Budyn
  • 134
  • 1
  • 4
0

If the issue with your error is .app/ (and not .app/Info.plist) see this answer here: xcode 10 error: multiple commands produce - react native

AlexK
  • 336
  • 8
  • 21
  • 41
0

OK so for anyone who hadn't found correct answer here because it has nothing to do with info.plist...

I ran into this problem while I was developing a macOS app without CocoaPods or Carthage, just with SPM packages, manually dragging xcodeprojs into workplace.

When I was using only one dependency (it was using Swift-NIO from within), everything was OK, but when I added one more one more dependency with overlapping subdeps, I got this nasty problem.

The solution is to try to compile all major dependencies separately (it would fail due to unexisting checkout folders within respective .build folders, and this is most probably happened because you put your pkgs in edit mode (swift package edit YourPkg ...).

You just unedit your pkgs, and force all dependencies to compile successfully. After that you must make sure that your linked binaries within main target aren't overlapped (I'm not sure it's really necessary, but just in case).

After that everything should be working just great :)

Kirill Titov
  • 2,060
  • 5
  • 21
  • 33
0

For people who rely on names to be the same for Swift header imports. (Ex: header file name: #import "MyApp-Swift.h"):

This header file's name is actually determined by ${SWIFT_MODULE_NAME}-Swift.h where SWIFT_MODULE_NAME uses PRODUCT_MODULE_NAME as the default value.

Moreover, there is a build setting that is project-wide called: SWIFT_OBJC_INTERFACE_HEADER_NAME “Objective-C Generated Interface Header Name” and it's default value is ${SWIFT_MODULE_NAME}-Swift.h. By changing this value to MyApp-Swift.h all targets within our aggregate build were able to share the same header name and from them we were able to change the PRODUCT_MODULE_NAMEvalue.

keji
  • 5,947
  • 3
  • 31
  • 47
0

In case you're getting this error with React Native, specifically with libyoga.a, check out this Github comment

Uri Klar
  • 3,800
  • 3
  • 37
  • 75
0

If your app is generating the error related to the multiple .app files then removing the .plist files from "Copy bundle Resources" WILL NOT WORK.

If the error is related to .app file then follow the following steps

  1. Select the Target.

  2. Go to Build Phases tab.

  3. Remove the items listed in Output Files
  4. Compile the code if it compiles successfully then not follow the next steps.
  5. If code does not compile successfully and Xcode may give you an error related to "Library not found". Then add the missing library in General Tab in Linked Frameworks and Libraries that Xcode mentioned in the error.
  6. Keep adding these libraries (that Xcode ask through compile errors) in Linked Frameworks and Libraries until the code compiles successfully.

    Hope this helps.

Abuzar Amin
  • 1,981
  • 1
  • 19
  • 33
0

Actually you can use legacy build system but you wont get the speedy build times i.e) u won't get the new build systems features which have been made default in XCode10 It is just a workaround for not getting the latest build features https://developer.apple.com/documentation/xcode_release_notes/xcode_10_release_notes/build_system_release_notes_for_xcode_10

0

If you develop private cocoapod, and had already added it via Podfile,

remove it from Embedded Binaries section:

Embedded Binaries in test app

Zaporozhchenko Oleksandr
  • 4,660
  • 3
  • 26
  • 48
0

Check your supported platforms!

We spent months looking into this issue with several our of child projects. We found that AVAILABLE_PLATFORMS was being set to "appletvos appletvsimulator iphoneos iphonesimulator macosx watchos watchsimulator" which was causing multiple platforms to be built, which would lead to the "Multiple commands produce error." For instance, "Foo" platform was building for both iOS and TVOS, and thus multiple build commands were creating a Foo.framework file.

As soon as we set

AVAILABLE_PLATFORMS = iphoneos iphonesimulator

in our root xcconfig file, this problem went away all child projects.

To check your config

Run

xcodebuild -project FitbitMobile.xcodeproj -target "FitbitMobile" -showBuildSettings > BuildSettings.txt

See if the output is being set to what you'd expect. If you're an iOS app and you're building for tvOS, you'll want to update your config.

Jason
  • 13,563
  • 15
  • 74
  • 125
0

I had the same problem but where able to fix it by removing the associated .png's and the icon asset catalog and then build the app. That generated expected errors as assets were missing. After than I added everything again and build the app with no problems.

PeterK
  • 4,243
  • 4
  • 44
  • 74
0

1- Remove DerivedData For all Apps 2- Open Terminal 3- Update Pod Every thing Done

0

No Legacy build system If you have Podfile like this

def shared_pods
  pod 'X'
end

target 'A' do
  shared_pods
end

target 'B' do
  shared_pods
end

and B also has dependecy on A then move B into A like this

 target 'A' do

   shared_pods

   target 'B' do
     inherit! :search_paths
   end
 end
yasirmturk
  • 1,924
  • 2
  • 22
  • 32
0

For me, it was when i embedded a framework of a cocoapod. All you need to do is remove it from the embedded content tab in the general build target.

jbiser361
  • 949
  • 7
  • 20
0

This was my error message:

error: Multiple commands produce '/Users/runner/Library/Developer/Xcode/DerivedData/slapshot-ios-bpixgzdbgfcmofhguehgrznwbjxl/Build/Intermediates.noindex/ArchiveIntermediates/slapshot-ios-example/IntermediateBuildFilesPath/UninstalledProducts/iphoneos/Introspect.framework'
    note: Target 'Introspect-dynamic' (project 'Pods') has create directory command with output '/Users/runner/Library/Developer/Xcode/DerivedData/slapshot-ios-bpixgzdbgfcmofhguehgrznwbjxl/Build/Intermediates.noindex/ArchiveIntermediates/slapshot-ios-example/IntermediateBuildFilesPath/UninstalledProducts/iphoneos/Introspect.framework'
    note: Target 'Introspect-static' (project 'Pods') has create directory command with output '/Users/runner/Library/Developer/Xcode/DerivedData/slapshot-ios-bpixgzdbgfcmofhguehgrznwbjxl/Build/Intermediates.noindex/ArchiveIntermediates/slapshot-ios-example/IntermediateBuildFilesPath/UninstalledProducts/iphoneos/Introspect.framework'

I had to add :linkage => :static to all of my targets, not just some of them, before running pod deintegrate/pod install (credit to this answer).

Tamás Sengel
  • 55,884
  • 29
  • 169
  • 223
0

The error disapeared after removing "Copy Bundle Resources" fonts in the xcode

amir behrouzi
  • 155
  • 1
  • 10
0

That happened due to the library being redundant. the issue is "Multiple commands produce". by doing the following step and it is solved.

enter image description here

  1. Uncommitted and set pod version in pod file as follows (If I set it from the Xcode, it did not work for me)

enter image description here

  1. Run pod deintegrate

  2. Run pod install

Note: This issue takes place only when archiving the project for me

starball
  • 20,030
  • 7
  • 43
  • 238
Thanushka
  • 39
  • 3
0

One more variant when you can get:

Multiple commands produce '<path>/<some_name>'

It is when group name is the same as a module name

yoAlex5
  • 29,217
  • 8
  • 193
  • 205
0

I read all the answers and none of them worked for me.

What happened in my case was that I tried to add the framework for GoogleInteractiveMediaAds with the .xcframework file I downloaded (there is no SPM available at the moment for it).

The error I got was the same as in this question (except for the file names).

I checked for repeated files and couldn't find any. I even opened the project.pbxproj file in Visual Studio Code to see what the difference was with another framework I was adding manually and that worked properly. There were no differences and I kept getting this error.

It turned out to be that I was using a framework called ARC which was added through SPM. That framework seems to already have GoogleInteractiveMediaAds in it, which is why I cannot add it on my own to my project. Therefore, to use GoogleInteractiveMediaAds I just have to import its classes in my code, without having to add its .xcframework. The downside of this is that I will be using the version of GoogleInteractiveMediaAds that ARC is using (they define it, not me).

The way I found out it was that framework was by removing one framework at a time while adding GoogleInteractiveMediaAds manually and compiling. When I removed ARC, the error was not there anymore.

Tomas
  • 153
  • 1
  • 1
  • 12
0

With Xcode V15.0 Beta. I was working on a demo Core Data project and was getting this error for one of the Entity+CoreDataProperties file(out of the three entities my model class had). Made few changes to the entity and used Editor -> Create NSManagedObject subclass to generate the files. Had codegen set to Manual/None. None of the mentioned solutions worked. Then noticed one folder named Recovered References under source files. The entity class that was giving error was listed there. I deleted that reference and the build succeeded.

I had re-created subclasses for all the three entities in one go, but for some reason only one of the subclass was generating this error.

0

if you are using React Native and Firebase and got this problem, per this answer in github issue Github Issue React Native #36120

Hi there! The solution is to move the use_frameworks! :linkage => :static before the use_react_native!() function call.

Feki Hamza
  • 307
  • 1
  • 7