ข้อผิดพลาดใน Homebrew บน OS X Lion


18

ฉันรันสคริปต์ Homebrew ตามที่อธิบายไว้ในหน้าการติดตั้ง จากนั้นฉันก็วิ่งไปที่brew doctorTerminal และมันกลับข้อผิดพลาดหลายอย่าง ฉันไม่แน่ใจว่าจะแก้ไขข้อผิดพลาดเหล่านั้นได้อย่างไรโปรดช่วยด้วย

brew doctor

Error: Some directories in /usr/local/share/man aren't writable.
This can happen if you "sudo make install" software that isn't managed
by Homebrew. If a brew tries to add locale information to one of these
directories, then the install will fail during the link step.
You should probably `chown` them:

    /usr/local/share/man/de
    /usr/local/share/man/de/man1
Error: You have Xcode 4.2, which is outdated.
Please install Xcode 4.3.
Error: Unbrewed dylibs were found in /usr/local/lib.
If you didn't put them there on purpose they could cause problems when
building Homebrew formulae, and may need to be deleted.

Unexpected dylibs:
    /usr/local/lib/libcdt.5.dylib    /usr/local/lib/libcgraph.6.dylib    /usr/local/lib/libgraph.5.dylib    /usr/local/lib/libgvc.6.dylib    /usr/local/lib/libgvpr.2.dylib    /usr/local/lib/libpathplan.4.dylib    /usr/local/lib/libxdot.4.dylib
Error: Unbrewed .pc files were found in /usr/local/lib/pkgconfig.
If you didn't put them there on purpose they could cause problems when
building Homebrew formulae, and may need to be deleted.

Unexpected .pc files:
    /usr/local/lib/pkgconfig/libcdt.pc    /usr/local/lib/pkgconfig/libcgraph.pc    /usr/local/lib/pkgconfig/libgraph.pc    /usr/local/lib/pkgconfig/libgvc.pc    /usr/local/lib/pkgconfig/libgvpr.pc    /usr/local/lib/pkgconfig/libpathplan.pc    /usr/local/lib/pkgconfig/libxdot.pc
Error: /usr/bin occurs before /usr/local/bin
This means that system-provided programs will be used instead of those
provided by Homebrew. The following tools exist at both paths:

    2to3

Consider amending your PATH so that /usr/local/bin
is ahead of /usr/bin in your PATH.

คำตอบ:


27

ฉันจัดการเพื่อให้มันทำงานขึ้นหลังจาก Googling และเล่นซอมาก

ก่อนอื่นคุณต้องทำให้ไดเรกทอรีเขียนได้โดยใช้ "chown"

sudo chown $(whoami) /usr/local/share/man/de
sudo chown $(whoami) /usr/local/share/man/de/man1

จากนั้นติดตั้ง Xcode 4.3 จาก App Store และติดตั้งเครื่องมือบรรทัดคำสั่งจาก Xcode-> Preferences-> Downloades-> Components จากนั้นตั้งค่าเส้นทางที่ถูกต้องเป็น Xcode 4.3

sudo xcode-select -switch /Applications/Xcode.app/Contents/Developer

มีไฟล์ dylib และ. pc ที่ไม่คาดคิดจาก GraphViz อาจปลอดภัยที่จะลบออกโดยตรง แต่ฉันเลือกที่จะสำรองข้อมูลแทนในกรณีที่แอปพลิเคชันอื่นแตก หากต้องการสำรองข้อมูล:

mkdir -p ~/brew-backup/lib/pkgconfig/
mv /usr/local/lib/*.*.dylib ~/brew-backup/lib/
mv /usr/local/lib/pkgconfig/*.pc ~/brew-backup/lib/pkgconfig/

ในที่สุดให้แก้ไข PATH ของระบบเพื่อให้/usr/local/binปรากฏก่อนพา ธ อื่น

export PATH=/usr/local/bin:/usr/local/sbin:$PATH

ตรวจสอบว่าไม่มีข้อผิดพลาดเพิ่มเติมจากการทำงาน

brew doctor

อัปเดตbrewเพื่อให้ข้อมูลแพคเกจเป็นปัจจุบันและคุณพร้อมแล้ว

brew update

จากประสบการณ์ของฉันคุณสามารถละเว้นbrew doctorข้อผิดพลาดส่วนใหญ่ได้อย่างปลอดภัยยกเว้นเมื่อคุณไม่สามารถติดตั้งบางสิ่งได้
slhck

1
ไม่ควรเป็นเจ้าของไดเรกทอรีเหล่านั้นโดย root หรือไม่
แบล็กไลท์ส่องแสง

คัดลอกและวางไดเรกทอรีทั้งหมดตั้งค่าเป็นตัวแปรโดย: directory = "PASTE HERE" echo "$ ไดเรกทอรี" | ในขณะที่อ่านบรรทัด ทำเสียงสะท้อน "$ line"; sudo chown $ (whoami) "$ line"; ก้อง; ทำ;
Jared Burrows

3

สำรองข้อมูลของ dylib และ pc อย่างแน่นอน ไม่มีการแบ่ง graphviz (โดยเฉพาะอย่างยิ่งการผูกหลาม) คัดลอกพวกเขากลับไปยังไดเรกทอรีของพวกเขาเมื่อคุณพร้อม

หากคุณลืมสำรองข้อมูลและ graphiz หยุดทำงานกับข้อผิดพลาด "ไม่พบรูปภาพ" ในไลบรารีเพียงติดตั้งแอปพลิเคชั่น graphviz ใหม่จากเว็บไซต์ ( http://www.graphviz.org/Download_macos.php )

ดูเหมือนว่าชื่อของเกมที่นี่จะไม่สนใจคำเตือนหมอชงเหล่านั้น


1

ฉันจะ "รายการขาว" .dylibไฟล์ที่นี่:

nano +128 /usr/local/Library/Homebrew/cmd/doctor.rb

เพิ่ม:

"libcdt.5.dylib", 
"libcgraph.6.dylib", 
"libgraph.5.dylib", 
"libgvc.6.dylib", 
"libgvpr.2.dylib", 
"libpathplan.4.dylib", 
"libxdot.4.dylib", 

และ.pcไฟล์ที่นี่:

nano +163 /usr/local/Library/Homebrew/cmd/doctor.rb

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