There is an urgent need to migrate the project from xcode 7 to xcode 6. The project is quite large. When I try to start, I get a linker error (+ a very huge log before the error): 312 dublicate symbols for architecture x86_64 . In xcode 7, everything starts fine. Is this a trivial incompatibility that goes so sideways?

    1 answer 1

    Duplicate characters appear when some functions / methods are defined more than once. And it is hardly the case in the incompatibility of the code. Based on your situation, we can assume several reasons:

    1. Perhaps you have the -ObjC flag in the Other Linker Flags , which forces you to dump all the object files in one heap, which leads to duplicate functions:

      Objective-C class or category. It is a goal for the Objective-C to make it possible.

    2. Some files may have been copied to the project more than once.
    3. Perhaps, an .m-file is imported somewhere, although it is unlikely that the code is intact.

    I think in such a situation it is better to add code to the project in parts in order to immediately find the causes of problems when they appear.

    • The point is that he swears on the PayPalMobile library (Namely, on files with the extension * .a). When you delete this library (the project does not need it later), the linker error floats up with the message that it is impossible to find this library, however I don’t understand where to delete the link to it. Although this is a completely different question. Thank. - Matvey
    • Clean project: Product -> Clean - Maxim Bogdanov
    • maybe there is some kind of file in the project called "Constant.h" where there are no static variables - Alexey Alybin