Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

ld: file not found: linker command failed with exit code 1

You might be getting this error because you renamed your project and Tests cannot be found anymore. This is easy to fix:

Solve it in Xcode like this:

  1. Select your project from the project navigator.
  2. Select [Your project's Tests] under targets
  3. Under General tab change the Host Application from the drop down
  4. Build and run.

Screenshot

This problem happened to me because I renamed my project and the tests could't find it anymore.


The problem is that after renaming the product its Tests target is still looking for the previous app name.

Select your Tests target and then in Build Settings modify the TestHost values to correspond your new product name in the following way:

$(BUILT_PRODUCTS_DIR)/YourNewProductName.app/YourNewProductName

I had a similar problem -- it's because I was using Cocoapods and had opened the .xcodeproj file instead of the .xcworkspace file... doh!


I have solved it by renaming the product.

In the Application's target choose Build Settings.

Under the Packaging options, you have to rename your product to the name thats shown in the error.

It solved my problem and the code started compiling. My test cases are also executing.


Did you try cleaning up your derived data?

Xcode5->Organizer->Projects->Select your project->Delete the derived data.

Try to remove "Social_EventsTests" target.


  1. Goto Build settings of your tests named PuzzleGameTests.
  2. Go to Testing settings, write $(BUILT_PRODUCTS_DIR)/PuzzleGame.app/PuzzleGame
  3. Clean and build

Note: PuzzleGame is new name of my project(product name). RandomNumber is old name of my project(product name).