ไม่พบไลบรารี่สำหรับ -lPods


334

ฉันพบข้อผิดพลาดเมื่อเก็บถาวรโครงการ นี่คือสภาพแวดล้อมของฉัน

  • Mac OS Lion
  • Xcode 4.3.1
  • iOS SDK 5.1

เป้าหมายการปรับใช้โครงการคือ:

IPHONEOS_DEPLOYMENT_TARGET 3.2

ข้อผิดพลาดแสดง:

ld: library not found for -lPods
clang: error: linker command failed with exit code 1 (use -v to see invocation)

ฉันเดา Pods คือ CocoaPods ที่ฉันใช้ในการจัดการการพึ่งพาโครงการ XCode https://github.com/CocoaPods/CocoaPods

นี่คือ Podfile ของฉัน

platform :ios  
dependency 'libPusher', '1.1'

ฉันไม่แน่ใจว่าข้อผิดพลาดหมายถึงอะไร


สาเหตุของปัญหาที่ไม่มีคำตอบครอบคลุม ตรวจสอบคำตอบนี้ได้ที่นี่: stackoverflow.com/questions/24050012/…
hasan

คำตอบ:


611

คุณกำลังเปิดพื้นที่ทำงาน (ที่สร้างโดย CocoaPods) แทนที่จะเป็น xcodeproj หรือไม่?


26
ฉันทำ. ปัญหาได้รับการแก้ไขหลังจากเปลี่ยนสถาปัตยกรรมการเปิดตัวของโครงการ Pod เป็น 'armv6 armv7'
angelokh

10
Aha ในของคุณระบุแพลตฟอร์มเช่นดังนั้น:Podfile ว่าควรกำหนดค่าได้อย่างถูกต้องในครั้งต่อไปที่คุณใช้platform :ios, :deployment_target => "3.2" pod install
อัลลอย

248
ต้องมีความชัดเจนสำหรับมือใหม่ออกมีคุณควรจะเปิดไฟล์ไม่ได้.xcworkspace .xcodeprojวิธีที่นอกเหนือไปจากโครงการของคุณนี้ Xcode รู้เกี่ยวกับโครงการในไดเรกทอรีและวิธีการสร้างPods/ libPods.a
Jonathan Tran

13
ติดตามความคิดเห็นของจาก @ JonathanTran ... หากคุณมีการ.xcodeprojเปิดคุณต้องปิดมันก่อนที่จะเปิด.xcworkspaceไฟล์
Ross

4
โปรดทราบว่าโครงการที่คุณใช้พ็อดด้วยควรตั้งค่าสถาปัตยกรรมเป็น armv6 armv7 (หากเป็นตัวเลือกที่คุณใช้กับสถาปัตยกรรมโปรเจ็กต์พ็อด) หากคุณไม่ทำเช่นนั้นคุณจะได้รับข้อผิดพลาดเดียวกันมาก
Patrick Bassut

173

ฉันแยกแอพและเป้าหมายการทดสอบใน Podfile โดยใช้

target :App do
    
end

target :AppTests do
    
end

สิ่งนี้ส่งผลให้ผลิตภัณฑ์ใหม่สองรายการคือ libPods-App.aและlibPods-AppTests.aตามลำดับและพวกเขาทำให้ผลิตภัณฑ์ก่อนหน้าlibPods.aล้าสมัย ฉันต้องลบผลิตภัณฑ์นี้ออกจากส่วนLink Binary With Librariesของการกำหนดค่าBuild Phasesของเป้าหมายทั้งสอง


3
ใช่นี่เป็นของฉันหลังจากที่ลองทำสิ่งอื่นอีกหลายสิบรายการก่อนหน้านี้ในหัวข้อนี้ podfile ของฉันมีสองเป้าหมายข้างต้นและดังนั้น libPods.a จึงไม่ถูกสร้างขึ้น การลบ libPods.a จากส่วน Link Binary With Libraries "คงที่" (แม้ว่าแน่นอนตอนนี้ฉันมี 32 "สัญลักษณ์ที่ไม่ได้กำหนด" ข้อความเพื่อจัดเรียงเนื่องจาก SQLite lib ที่ขาดหายไป ฯลฯ
Hot Licks

นี่เป็นโปรแกรมแก้ไขเดียวกับstackoverflow.com/a/21694261/581994และอีกสองคน
Hot Licks

ขณะนี้ยังคงเป็นปัญหาที่เกิดขึ้น
nsantorello

"พวกเขาทำผลิตภัณฑ์ libPods.a รุ่นก่อนหน้าล้าสมัยฉันต้องลบ ... "
Vassily

นี่เป็นปัญหาส่วนใหญ่สำหรับฉัน ด้วยเหตุผลบางอย่างฉันมีไบนารี่จากเป้าหมายการทดสอบที่เก่ากว่าในนั้นเช่นกัน
LJ Wilson

119

วันนี้ฉันเจอปัญหาที่คล้ายกัน

  1. ฉันตั้งค่าโครงการใหม่
  2. ฉันติดตั้งฝักโกโก้
  3. ฉันสร้างการกำหนดค่าใหม่Previewพร้อมกับที่มีอยู่DebugและRelease
  4. ตอนนี้เมื่อรวบรวมการPreviewตั้งค่าใหม่นี้คอมไพเลอร์จะไม่สามารถเชื่อมโยงกับ Pods และให้ข้อความนี้กับฉัน:

    ld: library not found for -lPods

การแก้ไขปัญหา:

สิ่งที่ฉันต้องทำคือวิ่ง

 pod install

อีกครั้งและทำการกำหนดค่า cocoapods สำหรับการPreviewกำหนดค่าใหม่ มันอัปเดตโครงการของฉันพื้นที่ทำงานและไฟล์โครงการของ Pod และปัญหาหายไป


1
เรื่องนี้ทำให้ฉันออกเช่นกัน โดยเฉพาะอย่างยิ่งเนื่องจากมันยังคงใช้งานได้นานหลังจากที่ฉันสร้างการกำหนดค่าและมันก็ต่อเมื่อฉันล้างข้อมูลที่ได้รับซึ่งเป็นปัญหาที่เกิดขึ้น
Daniel Wood

และใส่ใจกับคำเตือนที่แสดงในส่วน "สถิติการส่ง" ของผลลัพธ์ของ "pod install --verbose" หรือ "pod update --verbose" เช่น "yourApp [Debug]" เป้าหมายจะแทนที่ "HEADER_SEARCH_PATHS" `การตั้งค่าการสร้างที่กำหนดไว้ใน ... " หรือ "... เป้าหมายจะแทนที่การตั้งค่าการสร้าง OTHER_LDFLAGS` ... "
jk7

เปลี่ยนการกำหนดค่าดูตัวอย่างในการกำหนดค่าเส้นทางผลิตภัณฑ์ต่อจากนั้นทำการติดตั้งพ็อด pod ไม่บันทึกมูลค่าของฉันในโครงการ pod ความช่วยเหลือใด ๆ
liu pluto

อา! ปัญหาเกิดขึ้นหลังจากสร้างการกำหนดค่าใหม่สำหรับส่วนขยาย 3 ขั้นตอนแรกช่วยให้ฉันเข้าใจปัญหา ขอบคุณ!
iHarshil

70

ตรวจสอบให้แน่ใจว่าคุณเปิด.xcworkspaceไม่ได้.xcodeproj


นี่คือปัญหาของฉัน ฉันกำลังเปิดโครงการจากไฟล์โครงการ Xcode ปกติ เมื่อคุณเริ่มใช้ฝักโกโก้คุณต้องเริ่มเปิดโครงการของคุณจากไฟล์. xcworkspace ไม่ใช่. xcodeproj
HotFudgeSunday

hehe ฉันทำเช่นนี้เสมอ :)
yeahdixon

สิ่งนี้นี่คือสิ่งนี้
ไบรอัน

OMG ฉันต้องการกอดคุณ เปลี่ยนหลายสิ่งหลายอย่างที่ไม่เคยเป็นปัญหามาเริ่มต้นด้วย!
kjonsson

53

ไม่ใช่วิธีแก้ปัญหาที่ใช้งานได้สำหรับฉันมันทนไม่ได้จริงๆมีไฟล์libpods.a(ซึ่งเป็นสีแดง) ฉันลบมันและทุกอย่างทำงานได้ดี! ขอบคุณฉัน;)


6
เกิดขึ้นกับฉันด้วย ฉันเปลี่ยนชื่อเป้าหมายและสร้างไฟล์. aa ที่เป็นปัญหานี้แล้ว
seenickcode

หากฉันทำสิ่งนี้แสดงว่า libs ที่ฉันเพิ่มโดยใช้ Cocoapod ไม่ได้ถูกเพิ่มเข้าไปในโครงการ
Francisco Corrales Morales

1
คุณทำวันของฉัน: D มีเป้าหมาย 2 และฉันลบหนึ่ง แต่ฝักยังคงและล้มเหลวในการสร้างแก้ไขได้โดยเพียงแค่ลบการอ้างอิงของฝักของเป้าหมายนั้น
Mohammad alabid

เกิดขึ้นกับฉันเหมือนกัน มันเป็นโครงการเก่าที่ฉันไม่ได้สัมผัสมานานหลายปียังมีรูปแบบเก่า Podfile และอื่น ๆ
Departamento B

46

ฉันได้แบ่งรายชื่อพ็อดของฉันในPodfileเป้าหมายที่แตกต่างกันเช่น:

target :ABC do
  pod 'KissXML', '~> 5.0'
  pod 'libPhoneNumber-iOS', '~> 0.7.2'
end

target :ABCTests do
  pod 'OCMock', '~> 2.2.1', :inhibit_warnings => true
end

และวิ่ง pod install

สิ่งนี้สร้างห้องสมุดใหม่libPods-ABC.aที่ไบนารีของฉันต้องเชื่อมโยง libPods.aแต่ข้อผิดพลาดก็คือว่ามันไม่ได้ลบเช่นห้องสมุดก่อนหน้านี้

วิธีแก้ไข: ลบห้องสมุดlibPods.aจากของBuild PhasesLink Binary With Libraries


นี่เป็นวิธีแก้ไขเดียวกับstackoverflow.com/a/23085107/581994และstackoverflow.com/a/21694261/581994
Hot Licks

2
การแก้ปัญหานั้นแตกต่างกัน นี้แก้ไขให้ฉันโดยใช้โซลูชันที่แน่นอนนี้
cynistersix

ลบไลบรารี libPods.a จากนั้นติดตั้งพ็อดแก้ไขปัญหาให้ฉัน
bisma

1
จะแก้ไขเมื่อมีข้อผิดพลาดในการส่งออก IPHONEOS_DEPLOYMENT_TARGET = 9.0 ด้วย "ld: ไม่พบไลบรารี่สำหรับ -lPods"
jacksonfdam

ใช้งานได้กับฉันหลังจากเปลี่ยนชื่อเป้าหมาย
alsantos123

46

ฉันมีไฟล์ libPod.a เก่าที่ระบุไว้ (อาจเกิดจากฉันเปลี่ยนเป้าหมาย)

การตั้งค่าโครงการ -> สร้างเฟส -> เชื่อมโยงไบนารีกับไลบรารี

โดยปกติ cocoapods เท่านั้นที่จะรวมเป็นหนึ่งห้องสมุดเช่นหรือlibPods-target.a libPods.aฉันแก้ไขมันโดยลบสิ่งที่ซ้ำกัน


5
สิ่งนี้ใช้ได้สำหรับฉัน ฉันเพิ่มการรองรับพ็อดสำหรับเป้าหมายการทดสอบ (* การทดสอบและ * UITests) และการกำหนดค่าฐานเปลี่ยนจากPods.debugเป็นPods-MyApp.debugดังนั้นตอนนี้ฉันต้องการเพียงlibPods-MyApp.a(มีไอคอน "จาง" สำหรับเก่าlibPods.a)
Nicolas Miari

ไม่มีไอคอนจางหายไปสำหรับฉัน แต่นี่เป็นทางออกเดียวที่ทำงานได้
Yogesh Maheshwari

กันที่นี่ ขอบคุณ
rmvz3

ฉันเปลี่ยนชื่อโครงการและข้อผิดพลาดเกิดขึ้น วิธีแก้ปัญหาข้างต้นทำงานให้ฉัน
guness

44

หากคุณกำลังประสบปัญหากับสิ่งนี้ใน cocoapods v25 / Xcode 5

โปรเจ็กต์ Pods Xcode ตั้งค่าการสร้าง ONLY_ACTIVE_ARCH เป็น YES ในการกำหนดค่า Debug คุณจะต้องตั้งค่าเดียวกันในโครงการ / เป้าหมายของคุณไม่เช่นนั้นบิลด์จะล้มเหลว

https://github.com/CocoaPods/CocoaPods/wiki/FAQ#running-into-build-failures-after-migrating-to-xcode-5-and-cocoapods-0250

อัพเดทตรวจสอบว่าคุณมีอัญมณี / cocoapods ล่าสุด

  • ระบบอัพเดทอัญมณี
  • อัญมณีอัพเดท cocoapods

คุณจะต้องสร้างโครงการใหม่โดยใช้ Pod Install เพื่อสร้างโครงการใหม่


นี่เป็นของฉันหลังจากเพิ่ม CP ไปยังโครงการเก่ามาก
Josh Hudnall

เหมือนกันสำหรับฉัน - เพิ่ม CP ให้กับโครงการที่เก่ามากสามารถสร้างตัวจำลอง แต่ทันทีที่ฉันเปลี่ยนไปสร้างสำหรับอุปกรณ์การสร้างล้มเหลว คำตอบนั้นช่วยได้มาก!
Florian

40

หาก Xcode บ่นเมื่อทำการเชื่อมโยงเช่นไม่พบไลบรารี่สำหรับ -lPods จะไม่ตรวจจับการพึ่งพาโดยนัย

ไปที่ผลิตภัณฑ์> แก้ไขโครงการคลิกที่สร้างเพิ่มห้องสมุดคง Pods และตรวจสอบให้แน่ใจว่ามันอยู่ด้านบนของรายการทำความสะอาดและสร้างอีกครั้งหากไม่ได้ผลตรวจสอบว่าแหล่งที่มาสำหรับข้อมูลจำเพาะที่คุณพยายามรวม ดึงออกมาจาก GitHub ทำได้โดยดูจาก / Pods / หากว่างเปล่า (ไม่ควรเป็น) ให้ตรวจสอบว่า ~ / .cocoapods / master //. podspec มี git hub url ที่ถูกต้อง หากยังใช้งานไม่ได้ให้ตรวจสอบการตั้งค่าตำแหน่งบิวด์ XCode ไปที่การตั้งค่า -> ที่ตั้ง -> ข้อมูลที่ได้รับ -> ขั้นสูงและตั้งค่าตำแหน่งการสร้างเป็น "สัมพันธ์กับพื้นที่ทำงาน"

http://docs.cocoapods.org/guides/getting_started.html


3
ส่วนแรกแก้ไขปัญหาของฉัน (ผลิตภัณฑ์> แก้ไขโครงการเพิ่มพ็อดเพื่อสร้างเป็นรายการแรก) ขอบคุณ
William Power

ฉันมีปัญหานี้ใน xCode 6.3 ที่มี cocoapods 0.36.0 และนี่คือสิ่งที่แก้ไขได้ ขอบคุณ!
ProgrammierTier

เหมือนกับ xcode 6.3 cocoapods 0.37 -> ขอบคุณ !! เริ่มบ้ากับการตั้งค่าเป้าหมายในขณะที่ปัญหาคือแบบแผน เพียงเพิ่ม Pods
altagir

36

ฉันมีปัญหาเดียวกันเมื่อฉันแก้ไข Podfile เพิ่มเป้าหมายที่ฉันใช้โดยไม่มีเป้าหมายก่อน

Podfile

target 'xxxx' do

pod 'xyz'
pod 'abc'    

end

หลังจากสงสัยรอบ ๆ ฉันพบว่าภายใต้คุณสมบัติเป้าหมาย >> แท็บทั่วไป >> กรอบงานและไลบรารีที่เชื่อมโยงมี libPods-xxxx.a ใหม่และ libPods.a อันเก่า

ฉันเพิ่งลบ libPods.a และทุกอย่างทำงานได้ดี


นั่นก็เป็นปัญหาสำหรับฉันเช่นกัน ฉันคิดว่าสาเหตุของปัญหาคือฉันได้อัพเกรด CocoaPods และรูปแบบของ Podfile ในระหว่างการพัฒนา
gklka

2
ฉันมีสถานการณ์เดียวกันหลังจากเพิ่มเป้าหมายในพ็อด +1 เพื่อความแม่นยำ
Adriano Spadoni

27

วิกิ CocoaPods ใน GitHub มีคำตอบที่ถูกต้องในคำถามที่พบบ่อยของพวกเขา :

  • ไปที่ Product > Edit Scheme
  • คลิกที่ Build
  • เพิ่มไลบรารีแบบคงที่ของ Pods และตรวจสอบให้แน่ใจว่าอยู่ด้านบนสุดของรายการ
  • ทำความสะอาดและสร้างใหม่อีกครั้ง
  • หากไม่ได้ผลให้ตรวจสอบว่าแหล่งที่มาสำหรับข้อมูลจำเพาะที่คุณพยายามรวมนั้นถูกดึงออกมาจาก GitHub ทำได้โดยดู<Project Dir>/Pods/<Name of spec you are trying to include>จาก หากว่างเปล่า (ไม่ควรเป็น) ให้ตรวจสอบว่า~/.cocoapods/master/<spec>/<spec>.podspec URL นั้นมี URL ที่ถูกต้องในนั้น
  • หากยังใช้งานไม่ได้ให้ตรวจสอบการตั้งค่าตำแหน่งการสร้าง XCode ของคุณ ไปที่Preferences -> Locations -> Derived Data -> Advancedและตั้งค่าตำแหน่งการสร้างเป็น "สัมพันธ์กับพื้นที่ทำงาน"

สกรีนช็อต


6
ฉันพบปัญหานี้เช่นกัน แต่ฉันไม่สามารถทำตามขั้นตอนเหล่านี้ได้ ฉันค้างที่ "เพิ่มไลบรารีคงที่ของพ็อดและตรวจสอบให้แน่ใจว่าอยู่ด้านบนสุดของรายการ" ไลบรารีแบบสแตติกไม่แสดงเมื่อฉันคลิกเพื่อเพิ่มลงในชุดรูปแบบ Build ความคิดใด ๆ
เบย์ฟิลลิปส์

@BayPhillips ปิดโครงการปัจจุบันของคุณและเปิด. xcworkspace ที่สร้างในโฟลเดอร์โครงการของคุณ จากนั้นไลบรารีแบบคงที่จะปรากฏขึ้น
Junho Nam

12

ฉันเปลี่ยนชื่อโครงการเป็น "NBSelector" จาก "พันธมิตร"

ฉันพบข้อผิดพลาด "Library not found for libPods-Partners" หลังจากเปลี่ยนชื่อโครงการ Xcode พยายามเชื่อมโยงไปยังไฟล์ Partners.a เก่า เพียงลบออกหากคุณมี podInstalled หลังจากเปลี่ยนชื่อ

ป้อนคำอธิบายรูปภาพที่นี่


โซลูชั่นที่สมบูรณ์แบบสำหรับปัญหาของฉัน :) แต่หลังจากที่ถอดฝักต้องเพิ่มอีกครั้งหากคุณต้องการที่จะใช้
satheesh

11

การใช้ ONLY_ACTIVE_ARCH = NO ในพ็อดทั้งหมดแก้ไขปัญหาให้ฉันได้ ในการทำให้เป็นแบบถาวรนี้ฉันเพิ่มตะขอ post_install ลงใน Podfile ของฉัน:

post_install do |installer_representation|
  installer_representation.project.targets.each do |target|
      target.build_configurations.each do |config|
            config.build_settings['ONLY_ACTIVE_ARCH'] = 'NO'
      end
  end
end

pod install และคุณทำเสร็จแล้ว


8

คุณสร้าง 'การแจกจ่าย' หรือการกำหนดค่าที่คล้ายกันเพื่อสร้างคลังเก็บ Ad-Hoc และ App Store หรือไม่ เช่นเดียวกับคนอื่น ๆ ฉันทำตามคำแนะนำของ Apple และตั้งค่า 'ปล่อย' เรียกว่า 'การกระจาย' และตั้งกฎการเซ็นชื่อที่แตกต่างกัน บางทีนั่นอาจเป็นคำแนะนำก่อนที่พวกเขาจะนำเสนอชุดรูปแบบและตัวเลือก "แจกจ่าย" ในออแกไนเซอร์อย่างไรก็ตามฉันเพิ่งเคยมีมาก่อน

จากนั้นฉันก็มีปัญหาเดียวกันกับพ็อด ทุกอย่างทำงานได้ดีเมื่อทำการดีบัก แต่การเก็บถาวรล้มเหลวด้วยข้อผิดพลาดลิงก์ หลังจากลองสิ่งนี้แล้วและฉันได้เปลี่ยนการกำหนดค่าการเก็บถาวรของโครงการดั้งเดิมของฉันจาก 'การกระจาย' เป็น 'ปล่อย' และข้อผิดพลาดการเชื่อมโยงก็หายไป

แต่ที่เก็บถาวรไม่ปรากฏใน Organizer แต่ฉันสามารถหามันในระบบไฟล์ แต่มันมีขนาด 0

ขั้นตอนสุดท้ายในการแก้ไขทั้งหมดนี้คือการเปลี่ยนการตั้งค่า "ข้ามการติดตั้ง" สำหรับการกำหนดค่า 'ปล่อย' เป็น "ไม่" โปรดทราบว่าคุณต้องทำเช่นนี้เฉพาะกับโครงการหลักของคุณ แต่ไม่ใช่สำหรับโครงการ Pod ออกจากโครงการพ็อดได้ดีกว่าเพราะมันถูกสร้างขึ้นทุกครั้งที่คุณเรียกใช้ 'ติดตั้งพ็อด'

อัปเดต เพิ่งได้รับคำตอบจาก CocoaPods devs ดูเหมือนว่าจะไม่เหมาะกับฉันเนื่องจากฉันตั้งค่า Pods ไว้อย่างถูกต้อง แต่มันสามารถช่วยคนอื่นได้


8

ในกรณีของฉันปัญหาคือตำแหน่งข้อมูลที่ได้รับของ Xcode ถูกตั้งค่าเป็นตัวเลือก "Legacy" เป้าหมาย CocoaPods (libPods.a) ถูกสร้างขึ้นอย่างถูกต้อง แต่ Xcode กำลังมองหาที่ผิด

การสลับเป็น "ไม่ซ้ำ" (ค่าเริ่มต้น) แก้ไขปัญหาได้ คุณสามารถทำได้โดยไปที่การตั้งค่า> สถานที่และคลิกปุ่มขั้นสูง ...


แต่ฉันอยู่ในสถานการณ์ที่ฉันต้องใช้ "เลกาซี่" ค้นหาโซลูชันอื่นต่อ ...
CocoaBob


4

หากคุณกำลังเก็บถาวรสำหรับ iOS7 และ Xcode5 และได้รับข้อผิดพลาดเหล่านี้โปรดดูที่ลิงค์นี้ ดูเหมือนว่า Apple กำลังวางสถาปัตยกรรมที่ต้องการฝักโกโก้ https://github.com/CocoaPods/CocoaPods/pull/1352


4

ฉันพบว่าการเลือก "ค้นหาการอ้างอิงโดยนัย" (ภายใต้โครงร่างผลิตภัณฑ์ / แก้ไข) จะแก้ไขปัญหานี้แทนที่จะต้องเพิ่มพ็อดเป็นเป้าหมาย


การรันพ็อดติดตั้งอีกครั้งสามารถช่วยได้เมื่อทำตามขั้นตอนเหล่านี้
StackRunner

3

ฉันผ่านทุกคำตอบที่นี่ แต่สำหรับฉันมันง่ายอย่างเมามัน ... ไปที่เป้าหมาย -> สร้างเฟสแล้วลบ libPods-YourProject.a จากนั้นเพิ่มอีกครั้งโดยใช้ "+" ไม่ต้องกังวลว่าห้องสมุดจะเป็นสีแดง แต่ก็ไม่เป็นไร


3

ฉันใช้รุ่น cocoapod รุ่นเก่าหลังจากอัปเดต cocoapods แนะนำให้ฉันอัปเดตฝักที่ติดตั้งเนื่องจากการอัปเดตที่สำคัญเนื่องจากฉันอัปเดตเป็นเวลานาน ฉันอัปเดตแล้วและมีการอัปเดตพ็อดเวอร์ชันใหม่แล้ว แต่หลังจากนั้นฉันก็พบข้อผิดพลาดเช่นนั้นlibrary not found for -lPods-xxxprojectName-xxxxxpodName

หลังจากลองใช้วิธีแก้ปัญหามากมายที่ได้รับจากคำตอบในหัวข้อนี้ฉันไม่ได้ทำสิ่งนี้ให้ฉัน จากนั้นฉันไปที่การตั้งค่าโครงการของฉันและพบว่าเส้นทางของพ็อดเปลี่ยนไปOther Linker Flag

ตรวจสอบManage Schemesชื่อพ็อดที่ถูกต้องและเปรียบเทียบในOther Linker Flagเปลี่ยนชื่อหากไม่เหมือนกัน

เส้นทางฝักเก่าคือ -l"lPods-xxxprojectName-xxxxxpodName"

แต่พอดใหม่นั้นเป็นxxxxxpodNameดังนั้นฉันจึงแทนที่Other Linker Flagด้วยอันใหม่ด้านล่าง

เปลี่ยนเป็นเส้นทาง pod -l"xxxxxpodName"และใช้งานได้

ฉันไม่รู้เหตุผลที่สมบูรณ์แบบของสิ่งนี้ แต่อาจจะช่วยได้บ้าง


3

ฉันเปิดพื้นที่ทำงาน แต่ได้รับข้อผิดพลาดเดียวกัน

สร้างสถาปัตยกรรมที่ใช้งานอยู่ ตั้งเป็นYES เท่านั้น

แก้ปัญหาของฉัน


ที่ช่วยในการ ขอบคุณ. ยังไงก็เถอะมันถูกตั้งค่า "ใช่" สำหรับการแก้ปัญหาเฉพาะในขณะที่การตั้งค่าส่วนที่เหลือมี "ไม่" และฉันได้เห็นข้อผิดพลาดสำหรับการสร้างทั้งหมดยกเว้นการแก้ปัญหา
Pavel Yakimenko

สิ่งนี้ช่วยฉันเท่านั้น คำตอบ 'Open as .spacespace' ดังกล่าวน่าเบื่อเกินไป ฉันคิดว่านักพัฒนาควรตรวจสอบเอกสารคู่มือการติดตั้งอย่างละเอียดก่อนพอ ..
KoreanXcodeWorker

2

แก้ไขได้โดยทำตามขั้นตอนด้านล่าง:

  • อัปเดตการติดตั้ง cocoapods ของคุณ ($ [sudo] gem ติดตั้ง cocoapods)
  • ติดตั้งการอ้างอิงของคุณใหม่ภายใต้โครงการของคุณ (ติดตั้งพ็อด)
  • ทำความสะอาดและสร้างใหม่ / เก็บถาวร

มันใช้งานได้ดีมาก ฉันได้อัปเดตหนึ่งในโครงการของฉันแล้วและมันพัง ฉันทำตามขั้นตอนเหล่านี้แล้วก็ใช้งานได้ มันเป็นการแก้ไขด่วน ขอบคุณ
agarcian

2

ในกรณีของฉันpod installแก้ไขปัญหาหลังจากสร้างแผนการแจกจ่ายและเผยแพร่


1

ฉันมีปัญหาเดียวกันเมื่อเก็บถาวรเพื่อส่ง การสนทนาเกี่ยวกับปัญหานี้สามารถพบได้ที่นี่: https://github.com/CocoaPods/CocoaPods/issues/155

โดยสรุปมีสองวิธีที่เหมาะกับฉัน:

  1. การตั้งค่า "การตั้งค่า -> สถานที่ -> ขั้นสูง" ถึง "กำหนดเอง (สัมพันธ์กับพื้นที่ทำงาน)" หรือ
  2. ตั้งค่า Podfile เป็น - platform :ios, :deployment_target => "5.0"

1

ใช้ Xcode 5 กับ iOS 7

นี่คือสิ่งที่ฉันทำหลังจากติดขัดเป็นเวลาหนึ่งชั่วโมง ลบ ARM64 ออกจากการตั้งค่า Build> สถาปัตยกรรมที่ถูกต้อง

เพิ่ม: สำหรับกรณีของฉันมันไม่ใช่ตำแหน่งข้อมูลที่ได้รับ ฉันเลือกที่ไม่ซ้ำสำหรับสถานที่สร้าง


1

หากคุณใช้ iOS7 และ Xcode 5 ให้ทำ:

  • เลือกโครงการพ็อดของคุณ
  • ไปที่ Target Pods และในการตั้งค่า Build เลือก Architectures-> สถาปัตยกรรมมาตรฐาน (armv7, armv7s)
  • ทำเช่นเดียวกันสำหรับทุกเป้าหมายของโครงการพ็อด

1

ฉันพยายามทุกคำตอบในหัวข้อนี้ไม่มีประโยชน์ ในที่สุดก็แก้ไขปัญหาของฉันโดยจับคู่ "เส้นทางสร้างผลิตภัณฑ์กำหนดค่าล่วงหน้า" ในโครงการเป้าหมายของฉันกับค่าในโครงการ Pods ปรากฎว่าพวกเขากำลังสร้างสถานที่เอาท์พุทที่แตกต่างกันสองแห่ง ไม่มีคำแนะนำอื่น ๆ ในหัวข้อนี้ที่เกี่ยวข้องกับฉัน จะดีมากถ้า XCode ให้คำอธิบายข้อผิดพลาดที่เป็นประโยชน์ (เช่นทำไมมันไม่สามารถใช้ lib - ไม่พบไฟล์, ไม่พบสถาปัตยกรรมที่ตรงกัน ฯลฯ )


1

ในปัญหานี้หากคุณได้ติดตั้ง & อัปเดตพ็อดในระบบของคุณแล้ว Xcode ของคุณจะไม่สามารถค้นหาไลบรารี่ Pods ได้หากต้องการแก้ไขปัญหานี้โปรดตรวจสอบสาเหตุที่อาจเกิดขึ้นต่อไปนี้:

  1. คุณกำลังใช้พื้นที่ทำงาน
  2. สร้าง Pods library
  3. ไลบรารี Pods มีการอ้างอิงในกลุ่มผลิตภัณฑ์ของโครงการของคุณ
  4. เป้าหมายของคุณรวมถึงไลบรารี Pods ในลิงก์ที่มีเฟสการสร้างเฟรมเวิร์ก

1

ลอง

link_with 'YouTarget1', 'YouTarget2' ...

โครงการของฉันทำงานได้เป้าหมายก็หยุดรวบรวม จากนั้นเพิ่ม "link_with" และกลับสู่ปกติ

เห็นได้ชัดว่าตอนนี้มันเพิ่งเชื่อมต่อกับเป้าหมายแรกคือสิ่งที่ลิงค์พูดว่า:

http://guides.cocoapods.org/syntax/podfile.html#link_with


หนึ่งนี้แก้ไขได้สำหรับฉัน ... มีปัญหาว่าเป้าหมายแรกคือการสร้างและเป้าหมายที่สองล้มเหลวด้วย "ld: library ไม่พบสำหรับ -lPods ... "
Muxor

1

หากคุณยังคงได้รับปัญหานี้ลอง:

pod update

ทำงานให้ฉันได้หรือไม่หวังว่านี่จะช่วยคุณได้

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.