ව්‍යාපෘතියක තනි ගොනුවක් සඳහා ARC අක්‍රීය කරන්නේ කෙසේද?


1345

මම මගේ ව්‍යාපෘතිය තුළ ARC සාර්ථකව භාවිතා කරමි. කෙසේ වෙතත්, ARC හි නීති මේ වන විට තරමක් බිඳෙනසුලු වන ලිපිගොනු කිහිපයක් (උදා: ඒකක පරීක්ෂණ සහ විහිළු වස්තු) මට හමු විය. මෙම විකල්පය සොයා ගැනීමට මට නොහැකි වී තිබුණද, එක් ගොනුවකට ARC අක්‍රීය කිරීමට ක්‍රමයක් ඇති බව මට අසන්නට ලැබුණි.

මෙය කළ හැකිද? එක් ගොනුවකට ARC අක්‍රීය කරන්නේ කෙසේද?


Answers:


2172

-fno-objc-arcඑම ලිපිගොනු සඳහා සම්පාදක ධජය එක් කිරීමෙන් තනි ගොනු සඳහා ARC අක්‍රීය කළ හැකිය .

ඔබ ඉලක්ක -> ගොඩනැගීමේ අදියර -> සම්පාදක ප්‍රභවයන්හි සම්පාදක ධජ එක් කරයි. සම්පාදක ධජ යටතේ පේළියේ දකුණු තීරුව මත දෙවරක් ක්ලික් කළ යුතුය . ගොනු තෝරා ගැනීමට cmd බොත්තම තද කර ධජය සංස්කරණ කොටුව ගෙන ඒමට Enter යතුර එබීමෙන් ඔබට එය බහු ගොනු වලට එකතු කළ හැකිය. (බහු ලිපිගොනු සංස්කරණය කිරීමෙන් දැනටමත් ඇති ඕනෑම කොඩි නැවත ලියනු ඇති බව සලකන්න.)

මම උදාහරණයක් සහිත නියැදි ව්‍යාපෘතියක් නිර්මාණය කළෙමි: https://github.com/jaminguy/NoArc

xcode

වැඩි විස්තර සඳහා මෙම පිළිතුර බලන්න: සමහර ලිපිගොනු සඳහා ස්වයංක්‍රීය යොමු ගණන් කිරීම අක්‍රීය කරන්න


58
එබැවින්, මෙම ධජය එක් කළ යුතු ස්ථානය බුද්ධිමත් නොවේ. නමුත්, Xcode 4 හි, ගොඩනැගීමේ අදියරවල සහ ප්‍රභවයන් සම්පාදනය කිරීමේදී, ඇත්ත වශයෙන්ම තීරු දෙකක් තිබේ. එකක් ගොනුවේ නම සඳහා වන අතර තවත් එකක් එම එක් ගොනුවක් සඳහා කොඩි සම්පාදනය කරයි. ඔබ මෙම විශේෂිත සම්පාදක ධජය ඇතුළත් කරන්නේ මෙහිදීය.
casademora

3
ඔබට නාමාවලියක් සඳහා, එනම්, නාමාවලියක ඇති සියලුම ගොනු සඳහා නියම කළ හැකිද? කණ්ඩායමක් සඳහා කුමක් කළ යුතුද?
ma11hew28

4
නාමාවලි නොමැත. ගොඩනැගීමේ සැකසුම් තුළ වරකට එක් ගොනුවක් පමණි :(
casademora

13
ascasademora ඔබට මෙම තොරතුරු සඳහා ප්‍රමාණවත් තරම් ඉහළ අගයක් ලබා ගත නොහැක. ඔබට ස්තුතියි.
THETRON

26
ascasademora ඔබට එකවර ගොනු කිහිපයක් තෝරා ගත හැකිය - නමුත් පසුව දෙවරක් ක්ලික් නොකර නැවත පැමිණෙන්න. ඉන්පසු එක් කරන්න, -fno-objc-arcඑය තෝරාගත් සියලුම ගොනු වලට එකතු වේ. සංස්කරණය මේ සඳහා පහත පිළිතුර දුටුවේය :(
pkyeck

460

ආබාධිත ARC මත බහු ගොනු:

  1. Xcode හි ඉලක්ක / ගොඩනැගීමේ අදියර / සම්පාදක ප්‍රභවයන් තුළ අවශ්‍ය ගොනු තෝරන්න
  2. ප්‍රෙස් එන්ටර්
  3. ටයිප් -fno-objc-චාප
  4. Enter හෝ Done ඔබන්න

;)

රූප විස්තරය මෙහි ඇතුළත් කරන්න


2
ස්තූතියි! මෙම අංගය දිගු කාලයක් තිස්සේ සොයමින් සිටියේය. පේළි කිහිපයක් තෝරාගැනීමේදී ද්වි-ක්ලික් කිරීම ක්‍රියා නොකරයි, නමුත් එන්ටර් එබීමෙන් එය සිදු වේ. ගොඩක් විකාර.
bobmoff

4
ඕහ් නියමයි. මෙය නැවත නගා සිටුවීම සඳහා මම මගේ සියලු කර්මය වියදම් කරමි. බෙදාගැනීම ගැන ස්තූතියි!
ජෙමන්ස්

මෙය තවදුරටත් Xcode 4.3.3 හි ක්‍රියා නොකරන බව පෙනේ. -fno-ojbc-arc ධජය දැමීම සඳහා දෙබස ගෙන එන්නේ නැත, තෝරාගත් ලිපිගොනු මත දෙවරක් ක්ලික් කරන්න හෝ එබීම එබීමෙන් කිසිවෙකුට මේ සඳහා විසඳුමක් තිබේද?
ටොම්

මා සතුව 4.3.3 සහ දැන් 4.4 ඩීපී 7 ඇති අතර එය තවමත් හොඳින් ක්‍රියාත්මක වේ. Xcode නැවත ආරම්භ කිරීමට, යන්ත්‍රය නැවත ආරම්භ කිරීමට සහ අවසර අළුත්වැඩියා කිරීමට උත්සාහ කරන්න.
ටිබිඩාබෝ

44

Xcode 4.3 සඳහා පහසුම ක්‍රමය විය හැකිය: සංස්කරණය කරන්න / ප්‍රතික්‍රියා කරන්නා / වෛෂයික-සී ARC වෙත පරිවර්තනය කරන්න, ඉන්පසු ඔබට පරිවර්තනය කිරීමට අවශ්‍ය නොවන ගොනු පරීක්ෂා කරන්න. ඉහත සම්පාදක ධජය භාවිතා කිරීම හා සමාන බව මට පෙනේ.


36

තනි ගොනුවක් චාප නොවන බවට පත් කිරීම ඉතා සරල ක්‍රමයකි.

පහත පියවර අනුගමනය කරන්න:

තනි ගොනුවේ ARC අක්‍රීය කරන්න:

  1. Xcode හි ඉලක්ක / ගොඩනැගීමේ අදියර / සම්පාදක ප්‍රභවයන් තුළ අවශ්‍ය ගොනු තෝරන්න

  2. ඔබට අවශ්‍ය .m ගොනුව තෝරන්න එය NON-ARC PRESS ENTER ටයිප් කරන්න -fno-objc-arc

ARC නොවන ව්‍යාපෘති ගොනුවට ARC නොවන ගොනුව: -fno-objc-arc

ARC ගොනුව ARC නොවන ව්‍යාපෘති ධජයට: -fobjc-arc


35

සටහන: ඔබට බොහෝ ලිපිගොනු සඳහා ARC අක්‍රීය කිරීමට අවශ්‍ය නම් , ඔබ කළ යුත්තේ:

  1. "ගොඩනැගීමේ අදියර" විවෘත කරන්න -> "ප්‍රභව සම්පාදනය කරන්න"
  2. ගොනු තෝරා "left_mouse" + "cmd" (වෙන් ගොනු සඳහා) හෝ , + "මාරුවක්" (වර්ගීකරණය කරනු ගොනු සඳහා - පළමු හා අවසන් වරට තෝරන්න)
  3. "enter" ඔබන්න
  4. පේස්ට් කරන්න -fno-objc-arc
  5. නැවත "enter" ඔබන්න
  6. ලාභයක්!


13
  1. Xcode ව්‍යාපෘතිය තෝරන්න
  2. ඉලක්ක වෙත යන්න
  3. ගොඩනැගීමේ අදියර කොටස තෝරන්න
  4. ගොඩනැගීමේ අදියර කොටස තුළ සම්පාදක ප්‍රභවයන් තෝරන්න.
  5. ARC අක්‍රීය කිරීමට ඔබට අවශ්‍ය නැති ගොනුව තෝරන්න සහ -fno-objc-arc එක් කරන්න

විශේෂිත ගොනුවක් සඳහා ARC අක්‍රීය කරන්න


13

Xcode හි විශේෂිත ගොනුවක් සඳහා ARC (ස්වයංක්‍රීය යොමු ගණන් කිරීම) අක්‍රිය කළ හැකිය.

ඉලක්කය තෝරන්න -> අදියර ගොඩනඟන්න -> ප්‍රභවයන් සම්පාදනය කරන්න -> ගොනුව තෝරන්න (ද්විත්ව ක්ලික් කරන්න) -> උත්පතන කවුළුව වෙත "-fno-objc-arc" එක් කරන්න.

"ළඟා විය හැකි" ලිපිගොනු භාවිතා කිරීමේදී මට මෙම තත්වයට මුහුණ දීමට සිදු විය.

මෙය පහත රූපයේ දැක්වේ:

රූප විස්තරය මෙහි ඇතුළත් කරන්න



11

මෙම වීඩියෝවේ විස්තර කර ඇති පරිදි අනිවාර්ය පියවර හතර

    //1. Select desired files
    //2. Target/Build Phases/Compile Sources
    //3. Type -fno-objc-arc
    //4. Done


6

ඔබ යුනිටි භාවිතා කරන්නේ නම්, ඔබට මෙය එක්ස් කේතයෙන් වෙනස් කිරීමට අවශ්‍ය නැත, යුනිටි තුළම නිශ්චිත ගොනුව (ය) සඳහා පාර-දත්තවල සම්පාදක ධජයක් යෙදිය හැකිය. ව්‍යාපෘති පැනලයේ ඒවා තෝරාගෙන පරීක්ෂක මණ්ඩලයෙන් අයදුම් කරන්න. ඔබ වලාකුළු තැනීම භාවිතා කිරීමට අදහස් කරන්නේ නම් මෙය අත්‍යවශ්‍ය වේ.රූප විස්තරය මෙහි ඇතුළත් කරන්න


5

“-Fno-objc-arc” ධජය එක් කරන්න.

සරල අනුගමනය කිරීමේ පියවර: යෙදුම> ඉලක්ක> ගොඩනැගීමේ අදියර> ප්‍රභවයන් සම්පාදනය කිරීම> “-fno-objc-arc” පන්තියෙන් පසු ධජය එක් කරන්න.


5

අනෙක් සියලුම පිළිතුරු මගින් එම්ආර්සී (අතින් විමර්ශන ගණන) අක්‍රීය කරන්නේ කෙසේද සහ ARC (ස්වයංක්‍රීය යොමු ගණන්) සක්‍රීය කරන්නේ කෙසේද යන්න පැහැදිලි කරයි. MRC (අත්පොත යොමු ගණන) භාවිතා කිරීම සඳහා, එනම් බහු ලිපිගොනු වල ARC (ස්වයංක්‍රීය යොමු ගණන) අක්‍රීය කිරීම:

  1. Xcode හි ඉලක්ක / ගොඩනැගීමේ අදියර / සම්පාදක ප්‍රභවයන් තුළ අවශ්‍ය ගොනු තෝරන්න
  2. ප්‍රෙස් එන්ටර්
  3. -Fobjc-arc ටයිප් කරන්න
  4. Enter හෝ Done ඔබන්න

2

ARC අයදුම් කිරීමට ඔබට අවශ්‍ය නැති ලිපිගොනු ඉදිරිපිට -fno-objc-arc ධජය භාවිතා කරන්න.


-1
  1. ව්‍යාපෘතිය තෝරන්න -> ඉලක්ක -> ගොඩනැගීමේ අදියර -> සම්පාදක ප්‍රභව
  2. ගොනුව තෝරන්න -> සම්පාදක කොඩි
  3. -fno-objc-arc එකතු කරන්න

-2

යෙදුමට යන්න -> ඉන්පසු ඉලක්ක -> අදියර ගොඩනැගීම -> සම්පාදනය කරන්න

දැන්, ඔබට ARC අක්‍රිය කිරීමට අවශ්‍ය ගොනුව තෝරන්න

මෙම ස්නිපටය "-fno-objc-arc" අලවන්න ENTER ඔබන්න

ARC අක්‍රීය කිරීමට අවශ්‍ය සෑම ගොනුවකම.


5
ඔබගේ පිළිතුර මෙම පැරණි ප්‍රශ්නයට කිසිදු එකතු කිරීමක් සපයන්නේ නැත.
vikingosegundo

-2

ARC අක්‍රීය කිරීම සක්‍රීය කිරීම සඳහා පියවර අනුගමනය කරන්න

Xcode ව්‍යාපෘතිය තෝරන්න ඉලක්ක වෙත යන්න ගොඩනැගීමේ අදියර අංශය තෝරන්න ගොඩනැගීමේ අදියර කොටසේ ඇතුළත සම්පාදක ප්‍රභවයන් තෝරන්න. ARC අක්‍රීය කිරීමට ඔබට අවශ්‍ය නැති ගොනුව තෝරන්න සහ -fno-objc-arc එක් කරන්න


1
ඔබගේ පිළිතුර මෙම පැරණි ප්‍රශ්නයට කිසිදු එකතු කිරීමක් සපයන්නේ නැත.
ජොමාෆර්

එකතු කිරීම අවශ්‍ය වන්නේ කුමක්ද? ඔබ අපට ලබා දීමට වඩා හොඳින් දන්නවා නම්.
annu

මම ඔබව පහත් කොට සැලකුවේ නැහැ. මෙම ප්‍රශ්නය ජූලි 11 '11 හි 5:21 ට විමසන ලදි. කිසිදු ප්‍රයෝජනවත් තොරතුරක් එක් නොකරන එකම පිළිතුර සමඟ බොහෝ පිළිතුරු ඇත ... එම හේතුව නිසා යමෙකු ඔබව පහත් කොට සලකනු ඇතැයි මම සැක කරමි ...
ජොමාෆර්

ඔයාට මට ඒ ගැන කෙටියෙන් කියන්න පුළුවන්ද?
annu
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.