6

Following a stackoverflow topic about disabling ARC compiler mechanism for specific classes, I added the -fno-objc-arc argument to Compiler Flags column under Compile Sources section (Buil Phases tab within TARGETS project). Even if settings have been validated, I'm not able to build my application since the compiler says that retain, release, etc. cannot be used under ARC.

How can I fix the above problem? Thank you in advance.

Brad Larson
  • 170,088
  • 45
  • 397
  • 571
Lorenzo B
  • 33,216
  • 24
  • 116
  • 190

2 Answers2

7

Did you use the migration tool to perform your migration? Did you add the compiler flags to all the files that has release/retain?

I wrote about ARC migration on my blog here.

Mugunth
  • 14,461
  • 15
  • 66
  • 94
  • @MugunthKumar For the first question no. Yes for the second one. +1 for your guide. Thank you. – Lorenzo B Feb 29 '12 at 13:34
  • While this may technically answer the question, [it would be preferable](http://meta.stackexchange.com/q/8259) for you to summarize the linked material here. Otherwise, the answer is at risk of losing its usefulness due to link rot. – jscs Feb 17 '13 at 19:41
  • 1
    I had a similar problem and found that if I moved the `#include 'myFile.h'` to the header file instead of having at the top of the implementation file (of the class where I was trying to include it), the errors went away. I have no idea why. – Clay Jun 11 '13 at 00:17
2

Yes Thats true if you are using the ARC For iphone Application. You can not use manually retain, release, etc. .these messages automatically placed by the complier. You should check your code properly that for which classes you get error. I think so,you are still using retain, release, etc. for ARC enabled Classes. So Firstly check your classes,in which that error Occurred.

Kamar Shad
  • 6,089
  • 1
  • 29
  • 56