Sự cố này thường xảy ra do tệp cấu hình
~/.node-gyp//include/node/common.gypi
6 có tên là ~/.node-gyp//include/node/common.gypi
7 không được thiết lập cho phiên bản Mac OS hiện tại của bạnNó thường đi kèm với một thông báo lỗi như
fatal error: 'utility' file not found
#include
Một cách khắc phục thông thường khác là cài đặt lại các công cụ dòng lệnh của XCode với
$ xcode-select --install
Đối với bối cảnh, sự cố này thường xảy ra sau khi nâng cấp hệ điều hành của bạn nếu bạn sử dụng
~/.node-gyp//include/node/common.gypi
8 và đang sử dụng phiên bản NodeJs mới được cài đặtNếu dự án của bạn có bất kỳ phần phụ thuộc phức tạp nào phụ thuộc nhiều vào thư viện gốc thì giải pháp này có thể không dành cho bạn
Nếu phần phụ thuộc phức tạp nhất liên quan đến
~/.node-gyp//include/node/common.gypi
6 mà bạn có trong dự án của mình là thứ phổ biến như $ xcode-select --install
1 thì đây thường là cách khắc phục bạn cầnBạn sẽ cần tìm và chỉnh sửa tệp
~/.node-gyp//include/node/common.gypi
7 cho phiên bản NodeJs mà bạn đang sử dụng. Bạn thường sẽ tìm thấy nó trong một đường dẫn như~/.node-gyp//include/node/common.gypi
Ví dụ cho NodeJs
$ xcode-select --install
3~/.node-gyp/6.5.0/include/node/common.gypi
[Hãy nhớ rằng
$ xcode-select --install
4 có nghĩa là thư mục$ xcode-select --install
5 của người dùng của bạn]
Mở tệp, tìm giá trị khóa
$ xcode-select --install
6 và thay thế nó bằng phiên bản Mac OS hiện tại của bạn [ví dụ: ___17 cho Catalina]Ví dụ với các trình soạn thảo khác nhau
sử dụng nanoTrình chỉnh sửa bị đánh giá thấp nhất từ trước đến nay
$ xcode-select --install
0Sử dụng mã VSCó, bạn cũng có thể sử dụng nó để chỉnh sửa các tệp cấu hình mờ ám, chỉ cần Lưu tệp như bình thường khi bạn hoàn tất
$ xcode-select --install
1[Hãy nhớ rằng đây là dưới
$ xcode-select --install
5 nên lệnh không yêu cầu bất kỳ quyền đặc biệt nào như sudo]Sử dụng $ xcode-select --install
9[Nhưng tại sao? Rất có thể là bạn đã có một ngày tồi tệ với nút-gyp]
$ xcode-select --install
4tiền boa. Để thoát, nhấn
~/.node-gyp//include/node/common.gypi
0 rồi nhấn vào~/.node-gyp//include/node/common.gypi
1 rồi nhấn vào~/.node-gyp//include/node/common.gypi
2~/.node-gyp//include/node/common.gypi
3 là để viết,~/.node-gyp//include/node/common.gypi
4 là từ bỏ và~/.node-gyp//include/node/common.gypi
5 để thể hiện bạn rất vui khi được tự do trở lạiBạn không cần cài đặt hay cấu hình bất cứ thứ gì khác để sử dụng Python. Phải nói rằng, tôi thực sự khuyên bạn nên cài đặt các công cụ và thư viện được mô tả trong phần tiếp theo trước khi bắt đầu xây dựng các ứng dụng Python để sử dụng trong thế giới thực. Đặc biệt, bạn phải luôn cài đặt Setuptools, vì nó giúp bạn cài đặt và quản lý các thư viện Python của bên thứ ba khác dễ dàng hơn nhiều
Phiên bản Python đi kèm với OS X rất tốt cho việc học nhưng không tốt cho việc phát triển. Phiên bản được cung cấp cùng với OS X có thể đã lỗi thời so với bản phát hành Python chính thức hiện tại, được coi là phiên bản sản xuất ổn định
Làm đúng¶
Hãy cài đặt phiên bản thực của Python
Trước khi cài đặt Python, bạn sẽ cần cài đặt trình biên dịch C. Cách nhanh nhất là cài đặt Công cụ dòng lệnh Xcode bằng cách chạy
$ xcode-select --install
1. Bạn cũng có thể tải xuống phiên bản đầy đủ của Xcode từ Mac App Store hoặc gói OSX-GCC-Installer tối thiểu nhưng không chính thứcGhi chú
Nếu bạn đã cài đặt XCode, đừng cài đặt OSX-GCC-Installer. Kết hợp lại, phần mềm có thể gây ra các sự cố khó chẩn đoán
Ghi chú
Nếu bạn thực hiện cài đặt XCode mới, bạn cũng sẽ cần thêm các công cụ dòng lệnh bằng cách chạy
$ xcode-select --install
1 trên thiết bị đầu cuốiMặc dù OS X đi kèm với một số lượng lớn các tiện ích UNIX, nhưng những người quen thuộc với hệ thống Linux sẽ nhận thấy thiếu một thành phần chính. một người quản lý gói phong nha. Homebrew lấp đầy khoảng trống này
Để cài đặt Homebrew, hãy mở
$ xcode-select --install
3 hoặc trình giả lập thiết bị đầu cuối OSX yêu thích của bạn và chạy$ xcode-select --install
1Tập lệnh sẽ giải thích những thay đổi mà tập lệnh sẽ thực hiện và nhắc bạn trước khi quá trình cài đặt bắt đầu. Khi bạn đã cài đặt Homebrew, hãy chèn thư mục Homebrew ở đầu biến môi trường
$ xcode-select --install
4 của bạn. Bạn có thể thực hiện việc này bằng cách thêm dòng sau vào cuối tệp$ xcode-select --install
20 của mình$ xcode-select --install
2Bây giờ, chúng ta có thể cài đặt Python 2. 7
$ xcode-select --install
4Bởi vì
$ xcode-select --install
21 là một "thùng", chúng tôi cần cập nhật lại$ xcode-select --install
4 của mình, để trỏ đến cài đặt mới của chúng tôi$ xcode-select --install
6Homebrew đặt tên cho tệp thực thi là
$ xcode-select --install
23 để bạn vẫn có thể chạy hệ thống Python thông qua tệp thực thi$ xcode-select --install
24$ xcode-select --install
9Công cụ thiết lập & Pip¶
Homebrew cài đặt Setuptools và
$ xcode-select --install
25 cho bạnSetuptools cho phép bạn tải xuống và cài đặt bất kỳ phần mềm Python tuân thủ nào qua mạng [thường là Internet] bằng một lệnh duy nhất [
$ xcode-select --install
26]. Nó cũng cho phép bạn thêm khả năng cài đặt mạng này vào phần mềm Python của riêng bạn với rất ít công việc$ xcode-select --install
25 là một công cụ để dễ dàng cài đặt và quản lý các gói Python, được khuyên dùng trên$ xcode-select --install
26. Nó vượt trội hơn$ xcode-select --install
26 theo nhiều cách và được duy trì tích cực~/.node-gyp//include/node/common.gypi
5Môi trường ảo¶
Môi trường ảo [thường được gọi là 'virtualenv'] là một công cụ để giữ các phần phụ thuộc theo yêu cầu của các dự án khác nhau ở những nơi riêng biệt, bằng cách tạo môi trường Python ảo cho chúng. Nó giải quyết “Dự án X phụ thuộc vào phiên bản 1. x nhưng Dự án Y cần 4. x” và giữ cho thư mục gói trang web toàn cầu của bạn sạch sẽ và dễ quản lý
Ví dụ: bạn có thể làm việc trên một dự án yêu cầu Django 1. 10 đồng thời duy trì một dự án yêu cầu Django 1. 8
Liệu nút
node-gyp yêu cầu bạn đã cài đặt phiên bản tương thích của Python , một trong. v3. 7, v3. 8, v3. 9 hoặc v3.Python có cần thiết cho nút không
Để sử dụng node-gyp, trước tiên, chúng ta cần cài đặt thời gian chạy Python, tiện ích tạo và trình biên dịch C hoặc C++. Chúng tôi đã gặp sự cố với yêu cầu đầu tiên. node-gyp mong đợi Python ≥v3. 6, không phải Python v2 .Không thể tìm thấy Python thực thi Python Bạn có thể đặt biến Python ENV cho Mac không?
Không thể tìm thấy đường dẫn thực thi của python tới Python, bạn có thể đặt Biến Mac Env của python không? .Cài đặt python2. Bạn nên đảm bảo rằng trong thiết bị đầu cuối which -a python2 chỉ trả về một python2 và python2 -V trả về đúng 2. phiên bản xghi đè PYTHON env. xuất PYTHON=python2Chạy lại cài đặtPython có thể thực thi được trên Mac ở đâu?
Bản dựng Python do Apple cung cấp được cài đặt trong /System/Library/Frameworks/Python. framework và /usr/bin/python , tương ứng.