ปัญหาเกี่ยวกับ Homebrew เมื่อพยายาม parallelly ติดตั้ง Python 3.x


0

ฉันพยายามติดตั้ง Python v.3.x ขนานกับ Python v.2.7.10 ที่ติดตั้งไว้แล้ว ฉันกำลังทำตามขั้นตอนที่อธิบายไว้ในบทช่วยสอนนี้ที่ฉันพบบน YouTube แม้ว่ามันจะไม่ใช่ขั้นตอนที่ยาก แต่ในกรณีของฉันเมื่อฉันเรียกใช้brew doctorคำสั่งมันกลับมา:

MacBook-Pro-di-Rodolfo:~ Rodolfo$ brew doctor
Please note that these warnings are just used to help the Homebrew maintainers
with debugging if you file an issue. If everything you use Homebrew for is
working fine: please don't worry and just ignore them. Thanks!

Warning: "config" scripts exist outside your system or Homebrew directories.
`./configure` scripts often look for *-config scripts to determine if
software packages are installed, and what additional flags to use when
compiling and linking.

Having additional scripts in your path can confuse software installed via
Homebrew if the config script overrides a system or Homebrew provided
script of the same name. We found the following "config" scripts:
    /Library/Frameworks/Python.framework/Versions/2.7/bin/python-config
    /Library/Frameworks/Python.framework/Versions/2.7/bin/python2-config
    /Library/Frameworks/Python.framework/Versions/2.7/bin/python2.7-config

Warning: Python is installed at /Library/Frameworks/Python.framework

Homebrew only supports building against the System-provided Python or a
brewed Python. In particular, Pythons installed to /Library can interfere
with other software installs.

Warning: Unbrewed header files were found in /usr/local/include.
If you didn't put them there on purpose they could cause problems when
building Homebrew formulae, and may need to be deleted.

Unexpected header files:
    /usr/local/include/jack/control.h
    /usr/local/include/jack/intclient.h
    /usr/local/include/jack/jack.h
    /usr/local/include/jack/jslist.h
    /usr/local/include/jack/metadata.h
    /usr/local/include/jack/midiport.h
    /usr/local/include/jack/net.h
    /usr/local/include/jack/ringbuffer.h
    /usr/local/include/jack/session.h
    /usr/local/include/jack/statistics.h
    /usr/local/include/jack/systemdeps.h
    /usr/local/include/jack/thread.h
    /usr/local/include/jack/transport.h
    /usr/local/include/jack/types.h
    /usr/local/include/jack/uuid.h
    /usr/local/include/jack/weakjack.h
    /usr/local/include/jack/weakmacros.h

Warning: 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/jack.pc

คำเตือนเหล่านี้อ้างถึงแพ็คเกจสองชุดที่ฉันติดตั้งไว้ก่อน Homebrew ซึ่ง ได้แก่ Python v.2.7.10 รวมถึงแอพพลิเคชั่นที่เกี่ยวข้องและ JACK ซึ่งเป็น API สำหรับการกำหนดเส้นทางเสียงระหว่างแอปพลิเคชัน การติดตั้งของพวกเขาทำผ่านไฟล์. pkg ทั่วไปสองไฟล์ ดังนั้นเพื่อหลีกเลี่ยงความไม่เข้ากันในอนาคตที่เป็นไปได้ฉันจะแก้ไขคำเตือนที่รายงานข้างต้นได้อย่างไร มีทางเลือกอื่นในการถอนการติดตั้งและขั้นตอนการติดตั้งใหม่หรือไม่? หากเป็นประโยชน์ฉันกำลังใช้งานแอปพลิเคชันเหล่านี้ทั้งหมดใน OS X 10.9 Mavericks


ตัวแปร PATH ของคุณมีลักษณะอย่างไร โดยทั่วไปแล้ว Homebrew จะติดตั้ง/usr/local/binและสิ่งนี้จะต้องปรากฏก่อนหน้านี้/Library/Frameworks/...ใน PATH ของคุณ brew doctorดึงคำเตือนจำนวนมากขึ้นอยู่กับการกำหนดค่าระบบของคุณ แต่เพียงเพราะมีคำเตือนไม่ได้ (เสมอ) หมายความว่ามีปัญหา ... หรือแม้แต่คำเตือนที่สร้างขึ้นนั้นเกี่ยวข้องกับปัญหาเฉพาะของคุณ
Dustin Wheeler

@DustinWheeler echo $PATHส่งคืน/Library/Frameworks/Python.framework/Versions/2.7/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbinอาจเป็นไปได้ไหมที่จะถอนการติดตั้ง Pyhton เวอร์ชันปัจจุบันซึ่งตั้งอยู่ใน/Library/Frameworksนั้นและติดตั้งใหม่ผ่าน Homebrew
rudicangiotti

อย่าพยายามลบระบบ Python (OS X ต้องการสิ่งต่าง ๆ สิ่งเล็ก ๆ น้อย ๆ มาจากการลบมัน ... )
Dustin Wheeler

ฉันไม่คิดว่ารายการ Frameworks เป็นการรวมค่าเริ่มต้นใน OS X ดังนั้นจึงถูกเพิ่มเข้าไปในที่อื่น ตรวจสอบของคุณ.bashrc(หรือ.zshrc, .profileหรืออะไรก็ตามrcไฟล์เปลือกของคุณคือการจัดหาที่เริ่มต้น) export PATH='/Library/Frameworks/Python.framework/Versions/2.7/bin:$PATH'สำหรับรายการเช่น เปลี่ยนบรรทัดที่โดยทั้งถอดรายการกรอบหรือท้าย (มากกว่า prepending) export PATH='$PATH:/Library/Frameworks/Python.framework/Versions/2.7/bin'เช่นดังนั้น: หวังว่าจะช่วยแก้ปัญหาของคุณได้ (ตอนนี้ Python ที่ทำการกลั่นจะพบก่อนที่ Python ของระบบ)
Dustin Wheeler

ฉันคิดเหมือนกันเพราะในช่วงเดือนพฤศจิกายนที่ผ่านมาฉันจำได้ว่าฉันติดตั้ง Python 2.x เวอร์ชันใหม่โดยใช้แพ็คเกจที่ดาวน์โหลดจากเว็บไซต์อย่างเป็นทางการ อย่างไรก็ตามฉันจะตรวจสอบเนื้อหาของไฟล์ที่คุณแนะนำ!
rudicangiotti

คำตอบ:


0

brew doctorกระจายแหล่งที่มาของข้อผิดพลาดที่เป็นไปได้ในการตั้งค่าของคุณ (ดูคำอธิบายของข้อผิดพลาดและสาเหตุที่เกิดขึ้นในหน้า Homebrew Github เช่นนี้ ) หากคุณไม่พบปัญหาเกี่ยวกับการตั้งค่าของคุณคุณสามารถเพิกเฉยต่อข้อความ (พวกเขาอยู่ที่นั่นเพื่อช่วยผู้ดูแลระบบ Homebrew ในการแก้ปัญหาหากคุณมี)

ด้วยความคิดนี้ฉันคิดว่าคุณสามารถละเว้นข้อความที่เกี่ยวข้องกับไฟล์ส่วนหัวและ.pcไฟล์จากแจ็ค หากคุณต้องการล้างสิ่งเหล่านี้คุณสามารถลบการติดตั้งปัจจุบันของคุณและbrew install jackซึ่งจะเป็นที่ตั้งของไฟล์เหล่านั้นทั้งหมดในสถานที่ "ได้รับการอนุมัติจาก Homebrew"

เท่าที่ปัญหาหลามดูเหมือนว่าคุณติดตั้งหลามจากแพคเกจที่ดาวน์โหลดมาจากpython.org นี้ส่งผลให้เส้นทางของคุณถูกแก้ไข (โดยคุณผ่านการเรียนการสอนของพวกเขาหรือเป็นส่วนหนึ่งของการติดตั้งสคริปต์) .bash_profileมีเส้นในของคุณ เมื่อคุณพิมพ์ที่บรรทัดคำสั่งระบบจะดำเนินการสิ่งที่รุ่นของงูใหญ่ที่พบเป็นครั้งแรกในpython PATHในกรณีของคุณมันเป็นรุ่น /Library/Frameworks/2.7 คุณสามารถถอนการติดตั้งรุ่นที่ใช้คำแนะนำที่นี่แทนกรณีที่มี3.x 2.7โดยไม่คำนึงถึงหรือไม่ว่าคุณให้การติดตั้งที่คุณสามารถมั่นใจได้ว่าpythonจะนำไปยัง "Homebrew-ED" รุ่นโดยให้แน่ใจว่า/usr/local/binเกิดขึ้นก่อนในของคุณ/Library/Frameworks/...PATH

ในคำอื่น ๆ ลบคำสั่ง:

PATH="/Library/Frameworks/Python.framework/Versions/2.7/bin:${PATH}" 
export PATH

จากคุณ.bash_profileหรือเปลี่ยนบรรทัดแรกเป็น:

PATH="${PATH}:/Library/Frameworks/Python.framework/Versions/2.7/bin" export PATH

รุ่นที่สองนี้ค่อนข้างไร้ประโยชน์เนื่องจากมี Python สองรุ่นที่จะพบก่อนเวอร์ชัน Frameworks (เวอร์ชัน Homebrew หนึ่งใน/usr/local/binและเวอร์ชันของระบบ/usr/bin) ถ้าคุณอยากรู้ที่ทุกรุ่นหลามของคุณอยู่คุณสามารถตรวจสอบกับwhich -a pythonซึ่งจะแสดงรายการไบนารีชื่อทั้งหมดในของคุณpythonPATH

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