Npm Python

node-gyp <command> --python /path/to/executable/python
1 là một công cụ dòng lệnh đa nền tảng được viết bằng Node. js để biên dịch các mô-đun addon gốc cho Node. js. Nó chứa một bản sao của dự án gyp-next đã được nhóm Chromium sử dụng trước đây, được mở rộng để hỗ trợ sự phát triển của Node. addon gốc js

Lưu ý rằng

node-gyp <command> --python /path/to/executable/python
1 không được sử dụng để xây dựng Nút. js chính nó

Nhiều phiên bản mục tiêu của Node. js được hỗ trợ (tôi. e.

node-gyp <command> --python /path/to/executable/python
4,. ,
node-gyp <command> --python /path/to/executable/python
5,
node-gyp <command> --python /path/to/executable/python
6,
node-gyp <command> --python /path/to/executable/python
7, v.v. ), bất kể phiên bản Node nào. js thực sự đã được cài đặt trên hệ thống của bạn (
node-gyp <command> --python /path/to/executable/python
1 tải xuống các tệp hoặc tiêu đề phát triển cần thiết cho phiên bản đích)

Đặc trưng

  • Các lệnh xây dựng tương tự hoạt động trên bất kỳ nền tảng được hỗ trợ nào
  • Hỗ trợ nhắm mục tiêu các phiên bản khác nhau của Node. js

Cài đặt

Bạn có thể cài đặt

node-gyp <command> --python /path/to/executable/python
1 bằng cách sử dụng
npm config set python /path/to/executable/python
0

npm install -g node-gyp

Tùy thuộc vào hệ điều hành của bạn, bạn sẽ cần phải cài đặt

Trên Unix

  • Python v3. 7, v3. 8, v3. 9 hoặc v3. 10
  • npm config set python /path/to/executable/python
    1
  • Chuỗi công cụ biên dịch C/C++ thích hợp, như GCC

Trên macOS

CHÚ Ý. Nếu máy Mac của bạn đã được nâng cấp lên macOS Catalina (10. 15) trở lên, vui lòng đọc macOS_Catalina. md

  • Python v3. 7, v3. 8, v3. 9 hoặc v3. 10
  • npm config set python /path/to/executable/python
    2 sẽ cài đặt
    npm config set python /path/to/executable/python
    3,
    npm config set python /path/to/executable/python
    4 và
    npm config set python /path/to/executable/python
    1
    • Cài đặt độc lập
      npm config set python /path/to/executable/python
      2 bằng cách chạy
      npm config set python /path/to/executable/python
      7. -- HOẶC --
    • Ngoài ra, nếu bạn đã cài đặt Xcode đầy đủ, bạn có thể cài đặt Công cụ dòng lệnh trong menu
      npm config set python /path/to/executable/python
      8

Trên Windows

Cài đặt phiên bản hiện tại của Python từ gói Microsoft Store

Cài đặt công cụ và cấu hình thủ công

  • Cài đặt môi trường xây dựng Visual C++. Công cụ xây dựng Visual Studio (sử dụng khối lượng công việc "Công cụ xây dựng Visual C++") hoặc Cộng đồng Visual Studio (sử dụng khối lượng công việc "Phát triển máy tính để bàn với C++")
  • Khởi chạy cmd,
    npm config set python /path/to/executable/python
    9

Nếu các bước trên không hiệu quả với bạn, vui lòng truy cập Microsoft's Node. js Nguyên tắc dành cho Windows để biết các mẹo bổ sung

Để nhắm mục tiêu Nút ARM64 gốc. js trên Windows 10 trên ARM, hãy thêm các thành phần "Visual C++ trình biên dịch và thư viện cho ARM64" và "Visual C++ ATL cho ARM64"

Định cấu hình phụ thuộc Python

node-gyp <command> --python /path/to/executable/python
1 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. 10. Nếu bạn đã cài đặt nhiều phiên bản Python, bạn có thể xác định phiên bản Python nào
node-gyp <command> --python /path/to/executable/python
1 nên sử dụng theo một trong các cách sau

  1. bằng cách đặt tùy chọn dòng lệnh
    node-gyp <command> --python /path/to/executable/python
    12, e. g

node-gyp <command> --python /path/to/executable/python

  1. Nếu
    node-gyp <command> --python /path/to/executable/python
    1 được gọi theo cách của
    npm config set python /path/to/executable/python
    0 và bạn đã cài đặt nhiều phiên bản Python, thì bạn có thể đặt khóa cấu hình 'python' của
    npm config set python /path/to/executable/python
    0 thành giá trị phù hợp

________số 8

  1. Nếu biến môi trường

    node-gyp <command> --python /path/to/executable/python
    16 được đặt thành đường dẫn của tệp thực thi Python, thì phiên bản đó sẽ được sử dụng, nếu đó là phiên bản tương thích

  2. Nếu biến môi trường

    node-gyp <command> --python /path/to/executable/python
    17 được đặt thành đường dẫn của tệp thực thi Python, nó sẽ được sử dụng thay cho bất kỳ đường dẫn tìm kiếm Python được định cấu hình hoặc dựng sẵn nào khác. Nếu nó không phải là phiên bản tương thích, sẽ không cần tìm kiếm thêm

Xây dựng cho nút bên thứ ba. thời gian chạy js

Khi xây dựng các mô-đun cho Nút của bên thứ ba. js như Electron, có cấu hình xây dựng khác với Node chính thức. js, bạn nên sử dụng các cờ

node-gyp <command> --python /path/to/executable/python
18 hoặc
node-gyp <command> --python /path/to/executable/python
19 để chỉ định các tiêu đề của thời gian chạy để xây dựng cho

Ngoài ra, khi các cờ

node-gyp <command> --python /path/to/executable/python
18 hoặc
node-gyp <command> --python /path/to/executable/python
19 được thông qua, nút-gyp sẽ sử dụng
node-gyp <command> --python /path/to/executable/python
32 được vận chuyển trong phân phối tiêu đề để tạo cấu hình bản dựng, khác với chế độ mặc định sẽ sử dụng đối tượng
node-gyp <command> --python /path/to/executable/python
33 của Nút đang chạy. ví dụ js

Một số phiên bản cũ của Electron vận chuyển

node-gyp <command> --python /path/to/executable/python
32 không đúng định dạng trong các bản phân phối tiêu đề của chúng và bạn có thể cần chuyển
node-gyp <command> --python /path/to/executable/python
35 sang nút-gyp để khắc phục các lỗi cấu hình

Cách sử dụng

Để biên dịch addon gốc của bạn, trước tiên hãy chuyển đến thư mục gốc của nó

node-gyp <command> --python /path/to/executable/python
1

Bước tiếp theo là tạo các tệp xây dựng dự án phù hợp cho nền tảng hiện tại. Sử dụng

node-gyp <command> --python /path/to/executable/python
36 cho điều đó

node-gyp <command> --python /path/to/executable/python
3

Tự động phát hiện không thành công cho Visual C++ Build Tools 2015, vì vậy cần thêm

node-gyp <command> --python /path/to/executable/python
37 (không cần thiết khi chạy bằng npm như đã định cấu hình ở trên)

node-gyp <command> --python /path/to/executable/python
1

Ghi chú. Bước

node-gyp <command> --python /path/to/executable/python
36 tìm tệp
node-gyp <command> --python /path/to/executable/python
39 trong thư mục hiện tại để xử lý. Xem bên dưới để biết hướng dẫn tạo tệp
node-gyp <command> --python /path/to/executable/python
39

Bây giờ bạn sẽ có tệp

node-gyp <command> --python /path/to/executable/python
11 (trên nền tảng Unix) hoặc tệp
node-gyp <command> --python /path/to/executable/python
12 (trên Windows) trong thư mục
node-gyp <command> --python /path/to/executable/python
13. Tiếp theo, gọi lệnh
node-gyp <command> --python /path/to/executable/python
14

node-gyp <command> --python /path/to/executable/python
9

Bây giờ bạn đã có tệp ràng buộc

node-gyp <command> --python /path/to/executable/python
15 đã biên dịch của mình. Các ràng buộc được biên dịch kết thúc bằng
node-gyp <command> --python /path/to/executable/python
16 hoặc
node-gyp <command> --python /path/to/executable/python
17, tùy thuộc vào chế độ xây dựng. Tại thời điểm này, bạn có thể yêu cầu tệp
node-gyp <command> --python /path/to/executable/python
15 với Node. js và chạy thử nghiệm của bạn

Ghi chú. Để tạo bản dựng Gỡ lỗi của tệp liên kết, hãy chuyển công tắc

node-gyp <command> --python /path/to/executable/python
19 (hoặc
node-gyp <command> --python /path/to/executable/python
90) khi chạy lệnh
node-gyp <command> --python /path/to/executable/python
36,
node-gyp <command> --python /path/to/executable/python
14 hoặc
node-gyp <command> --python /path/to/executable/python
93

Tệp node-gyp --python /path/to/executable/python39

Tệp

node-gyp <command> --python /path/to/executable/python
39 mô tả cấu hình để xây dựng mô-đun của bạn, ở định dạng giống như JSON. Tệp này được đặt trong thư mục gốc của gói của bạn, cùng với
node-gyp <command> --python /path/to/executable/python
96

Tệp

node-gyp <command> --python /path/to/executable/python
97 barebones phù hợp để xây dựng Nút. js addon có thể trông giống như

node-gyp <command> --python /path/to/executable/python
3

đọc thêm

Thư mục tài liệu chứa tài liệu bổ sung về các chủ đề cụ thể của nút-gyp có thể hữu ích nếu bạn gặp sự cố khi cài đặt hoặc xây dựng addon bằng cách sử dụng nút-gyp

Một số tài nguyên bổ sung cho Node. js addons gốc và viết tệp cấu hình

node-gyp <command> --python /path/to/executable/python
97

  • "Đi bản địa" một nodeschool. hướng dẫn io
  • Ví dụ addon nút "Xin chào thế giới"
  • tài liệu người dùng gyp
  • tham chiếu định dạng đầu vào gyp
  • "ràng buộc. gyp" trong trang wiki hoang dã

lệnh

node-gyp <command> --python /path/to/executable/python
1 trả lời các lệnh sau

LệnhMô tả
node-gyp <command> --python /path/to/executable/python
30Hiển thị hộp thoại trợ giúp
node-gyp <command> --python /path/to/executable/python
14Gọi
npm config set python /path/to/executable/python
1/
node-gyp <command> --python /path/to/executable/python
33 và xây dựng addon gốc
node-gyp <command> --python /path/to/executable/python
34Xóa thư mục
node-gyp <command> --python /path/to/executable/python
14 nếu nó tồn tại
node-gyp <command> --python /path/to/executable/python
36Tạo tệp xây dựng dự án cho nền tảng hiện tại
node-gyp <command> --python /path/to/executable/python
93Chạy liên tiếp
node-gyp <command> --python /path/to/executable/python
34,
node-gyp <command> --python /path/to/executable/python
36 và
node-gyp <command> --python /path/to/executable/python
14
node-gyp <command> --python /path/to/executable/python
71Cài đặt nút. js cho phiên bản đã cho____772Liệt kê Nút hiện được cài đặt. phiên bản tiêu đề js
node-gyp <command> --python /path/to/executable/python
73Xóa nút. tệp tiêu đề js cho phiên bản nhất định

Tùy chọn lệnh

node-gyp <command> --python /path/to/executable/python
1 chấp nhận các tùy chọn lệnh sau

LệnhMô tả
node-gyp <command> --python /path/to/executable/python
75,
node-gyp <command> --python /path/to/executable/python
76Chạy song song
npm config set python /path/to/executable/python
1. Giá trị
node-gyp <command> --python /path/to/executable/python
78 sẽ sử dụng tất cả các lõi CPU có sẵn
node-gyp <command> --python /path/to/executable/python
79Node. js để xây dựng cho (mặc định là
npm config set python /path/to/executable/python
60)
npm config set python /path/to/executable/python
61,
npm config set python /path/to/executable/python
62Ghi lại tất cả tiến trình lên bàn điều khiển
npm config set python /path/to/executable/python
63,
npm config set python /path/to/executable/python
64Ghi lại hầu hết tiến trình lên bàn điều khiển
npm config set python /path/to/executable/python
65,
npm config set python /path/to/executable/python
66Không đăng nhập bất kỳ thứ gì vào bàn điều khiển
npm config set python /path/to/executable/python
67,
node-gyp <command> --python /path/to/executable/python
19Tạo bản dựng Gỡ lỗi (mặc định là
npm config set python /path/to/executable/python
69)
node-gyp <command> --python /path/to/executable/python
00,
node-gyp <command> --python /path/to/executable/python
01Make Release build
node-gyp <command> --python /path/to/executable/python
02,
node-gyp <command> --python /path/to/executable/python
03Run lệnh khác . g.
node-gyp <command> --python /path/to/executable/python
06)
node-gyp <command> --python /path/to/executable/python
07Kích hoạt thư viện tĩnh mỏng
node-gyp <command> --python /path/to/executable/python
08Đặt kiến ​​trúc mục tiêu (e. g. ia32)
node-gyp <command> --python /path/to/executable/python
09Nhận tiêu đề từ tarball cục bộ
node-gyp <command> --python /path/to/executable/python
10Thư mục tải xuống SDK (mặc định là thư mục bộ đệm của hệ điều hành)
node-gyp <command> --python /path/to/executable/python
11Không cài đặt lại tiêu đề nếu đã có
node-gyp <command> --python /path/to/executable/python
12Tải xuống tarball tiêu đề từ URL tùy chỉnh
node-gyp <command> --python /path/to/executable/python
13Đặt proxy HTTP(S) để tải xuống tarball tiêu đề
node-gyp <command> --python /path/to/executable/python
14Đặt url để bỏ qua proxy khi tải xuống tarball tiêu đề
node-gyp <command> --python /path/to/executable/python
15Ghi đè chuỗi CA mặc định

Cấu hình

Biến môi trường

Sử dụng biểu mẫu

node-gyp <command> --python /path/to/executable/python
23 cho bất kỳ tùy chọn lệnh nào được liệt kê ở trên (dấu gạch ngang trong tên tùy chọn phải được thay thế bằng dấu gạch dưới)

Ví dụ: để đặt

node-gyp <command> --python /path/to/executable/python
24 bằng
node-gyp <command> --python /path/to/executable/python
25, bạn sẽ

Chạy cái này trên Unix

node-gyp <command> --python /path/to/executable/python
7

Hoặc cái này trên Windows

npm config set python /path/to/executable/python
6

cấu hình npm config set python /path/to/executable/python0

Sử dụng biểu mẫu

node-gyp <command> --python /path/to/executable/python
27 cho bất kỳ tùy chọn lệnh nào được liệt kê ở trên

Ví dụ: để đặt

node-gyp <command> --python /path/to/executable/python
24 bằng
node-gyp <command> --python /path/to/executable/python
25, bạn sẽ chạy

node-gyp <command> --python /path/to/executable/python
0

Ghi chú. Cấu hình được đặt qua

npm config set python /path/to/executable/python
0 sẽ chỉ được sử dụng khi
node-gyp <command> --python /path/to/executable/python
1 được chạy qua
npm config set python /path/to/executable/python
0, không phải khi
node-gyp <command> --python /path/to/executable/python
1 được chạy trực tiếp

npm Python là gì?

Npm là trình quản lý gói cho ngôn ngữ lập trình JavaScript . Nó là trình quản lý gói mặc định cho Node. js và có thể được sử dụng để cài đặt, gỡ cài đặt và xuất bản các gói mới. Ngoài ra, npm không phải là trình cài đặt. Nó thường được sử dụng kết hợp với Node.

Chúng ta có thể sử dụng gói npm trong Python không?

npm cho phép cài đặt các gói trên toàn cầu hoặc cục bộ cho một dự án . Trong pip , tất cả các gói được cài đặt trên toàn cầu. Để tách các phụ thuộc cục bộ khỏi các gói trên toàn hệ thống, một môi trường ảo được tạo chứa tất cả các phụ thuộc cục bộ của dự án và thậm chí cả bản phân phối Python cục bộ.

Có điều gì giống như npm trong Python không?

Python sử dụng pip cho trình quản lý gói . Lệnh cài đặt pip có tùy chọn -r

Npm cài đặt Python ở đâu?

Theo thiết kế, Python sẽ cài đặt vào một thư mục có số phiên bản được nhúng , e. g. Python phiên bản 2. 7 sẽ cài đặt tại C. \Python27\ , để bạn có thể có nhiều phiên bản Python trên cùng một hệ thống mà không xảy ra xung đột.