cuốn sách gpt4 ai đã làm

Không thể biên dịch chương trình C trên Mac sau khi nâng cấp lên Mojave

In lại Tác giả: Vũ trụ không gian Thời gian cập nhật: 2023-11-04 04:15:14 25 4
mua khóa gpt4 Nike

Tôi đang sử dụng lệnh gcc trên thiết bị đầu cuối để biên dịch chương trình C, nhưng đột nhiên, sau khi cập nhật hệ điều hành máy Mac của tôi (Mac OS 10.14mojave và xcode10.0), tôi bắt đầu nhận được thông báo:

test.c:8:10: lỗi nghiêm trọng: stdio.h: Không có tệp hoặc thư mục như vậy
#include
^~~~~~~~~
quá trình biên dịch chấm dứt.

Tôi đã cài đặt gcc vì tôi có thể /usr/local/binTìm thấy nó trong , có gcc. Tôi đã thử chạy cùng một tệp trên iMac khác của mình mà không gặp vấn đề gì.
Tôi đã thử chạy xcode-select --installVà nó đã được cài đặt rồi nên nó không giải quyết được vấn đề tôi đang gặp phải. Tôi đoán các đường dẫn bị rối vì sau khi tôi bắt đầu sao chép và dán một số lệnh từ các tài nguyên khác để sửa lỗi này, dường như không tìm thấy nó gcc.
Hy vọng điều này sẽ giúp.

câu trả lời hay nhất

TL;Tiến sĩ.
Đảm bảo bạn đã tải xuống gói "Công cụ dòng lệnh" mới nhất và chạy gói này từ thiết bị đầu cuối (dòng lệnh):

mở /Library/Developer/CommandLineTools/Packages/macOS_SDK_headers_for_macOS_10.14.pkg

Để biết một số thông tin về Catalina, hãy xem Không thể biên dịch chương trình C trên máy Mac sau khi nâng cấp lên Catalina 10.15.
Để trích xuất một câu trả lời nửa mạch lạc từ một bài đánh giá khá sâu rộng...
Lời nói đầu
nói chung là, xcode-select --installlà giải pháp đúng đắn, nhưng có vẻ như lần này nó không giúp ích được gì. Bạn đã thử chạy GUI Xcode chính chưa? Nó có thể cài đặt thêm một số phần mềm và dọn dẹp cho bạn. Tôi đã làm điều này sau khi cài đặt Xcode 10.0, nhưng cách đây một tuần hoặc hơn, rất lâu trước khi nâng cấp lên Mojave.
Tôi nhận thấy rằng nếu GCC của bạn được cài đặt trong /usr/local/bin, thì có thể bạn không sử dụng GCC từ Xcode; /usr/bin中。
Tôi cũng đã cập nhật macOS 10.14 Mojave và Xcode 10.0. Tuy nhiên, hệ thống /usr/bin/gccvà hệ thống /usr/bin/clangtất cả đều làm việc cho tôi ( Apple LLVM phiên bản 10.0.0 (clang-1000.11.45.2) Mục tiêu: x86_64-apple-darwin18.0.0Có giá trị cho cả hai). GCC 8.2.0 trong nước của tôi đang ở /usr/bao gồmCó vấn đề với tiêu đề không tìm thấy trong /usr/local/bin/gccCũng không thể tìm thấy tiêu đề của vấn đề là song song.
Tôi đã làm một số so sánh và máy Mojave của tôi hoàn toàn không có nó /usr/bao gồm,Nhưng /usr/bin/clangNó biên dịch tốt. cái đầu( _stdio.h, với dấu gạch dưới ở đầu) trong phần trước của tôi /usr/bao gồmin; hiện bị thiếu (do đó tôi gặp phải sự cố với GCC 8.2.0). tôi đã chạy xcode-select --install, nó nói " xcode-select: lưu ý: yêu cầu cài đặt cho các công cụ dành cho nhà phát triển dòng lệnh", sau đó chạy trình cài đặt GUI, trình cài đặt này hiển thị cho tôi giấy phép mà tôi đã đồng ý, đồng thời nó đã tải xuống và cài đặt công cụ dòng lệnh - hoặc đúng như vậy.
Sau đó, tôi chạy GUI Xcode (không gian lệnh, Xcode, trả về) và nó cho biết cần cài đặt thêm phần mềm nhưng vẫn không có gì. nhưng tôi có thể sử dụng /usr/bao gồm/usr/bin/clangbiên dịch và /usr/bin/gcccác tùy chọn chỉ ra rằng họ đang sử dụng
InstalledDir: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin

giải pháp làm việc
Sau đó Maxxxx ghi nhận:
Tôi đã tìm ra cách. Nếu chúng tôi đang sử dụng Xcode 10, bạn sẽ nhận thấy rằng nếu bạn điều hướng đến -v, bạn sẽ không còn thấy thư mục có tên "include", đó là lý do tại sao thiết bị đầu cuối phàn nàn về việc thiếu các tệp tiêu đề trong thư mục "bao gồm". hiện hữu Ghi chú phát hành Xcode 10.0, nó cho thấy có một gói:
/Thư viện/Nhà phát triển/CommandLineTools/Gói/macOS_SDK_headers_for_macOS_10.14.pkg 

Bạn nên cài đặt gói để cài đặt /usrthư mục. Đã đến lúc bạn phải đi.
Khi vẫn thất bại, hãy đọc hướng dẫn sử dụng hoặc trong trường hợp này là ghi chú phát hành. Khi tôi biết rằng Apple muốn từ bỏ di sản Unix của họ, tôi không ngạc nhiên mà chỉ thất vọng. Nếu họ cẩn thận thì họ đã đuổi tôi đi rồi. Cảm ơn bạn đã thông tin.
Sau khi cài đặt gói bằng lệnh bên dưới trong dòng lệnh, tôi đã cài đặt lại /usr/bao gồm, GCC 8.2.0 của tôi hoạt động trở lại.
mở /Library/Developer/CommandLineTools/Packages/macOS_SDK_headers_for_macOS_10.14.pkg

Tải xuống công cụ dòng lệnh
正如 bàng quangmột cách có giá trị bình luậnNhư đã chỉ ra trong bài viết, bạn cần tải xuống bộ công cụ dòng lệnh cho xcode10.1 trên Mojave 10.14, bạn có thể tải xuống từ trang web sau:
https://developer.apple.com/download/more/
Bạn cần đăng nhập bằng ID Apple của mình để tải xuống. Sau khi quá trình tải xuống hoàn tất, hãy cài đặt bộ công cụ dòng lệnh. Sau đó làm theo hướng dẫn trong phần "Giải pháp hiệu quả" để cài đặt các tệp tiêu đề.
Tính năng này hoạt động trên Mojave 10.14.1 của tôi. Chắc hẳn tôi đã tải xuống cái này trước đây nhưng tôi đã quên nó khi trả lời câu hỏi này.
Đã nâng cấp lên Mojave 10.14.4 và Xcode 10.2
Khoảng ngày 17 tháng 5 năm 2019, tôi đã cập nhật Mojave 10.14.4 và các công cụ dòng lệnh Xcode 10.2 đã được nâng cấp (hoặc các công cụ dòng lệnh Xcode 10.1 đã được nâng cấp lên 10.2). hiển thị ở trên /usr/bao gồmlệnh sửa các tiêu đề bị thiếu. Nâng cấp Xcode chính của bạn lên 10.2 và cài đặt lại các công cụ dòng lệnh và gói tiêu đề vẫn có thể gặp một chút rủi ro.
Nâng cấp lên Xcode 10.3 (dành cho Mojave 10.14.6)
Vào ngày 22 tháng 7 năm 2019, tôi được thông báo qua App Store rằng đã có bản nâng cấp lên Xcode 10.3, bao gồm SDK cho iOS 12.4, tvOS 12.4, watchOS 5.3 và macOS Mojave 10.14.6. Tôi đã cài đặt nó trên máy 10.14.5 của mình, chạy nó và cài đặt các thành phần bổ sung như nó đề xuất và nó dường như vẫn giữ nguyên mởtính chính trực.
Cuối cùng ngày hôm đó, tôi phát hiện ra rằng macOS Mojave 10.14.6 cũng có sẵn (Tùy chọn hệ thống ⟶ Cập nhật phần mềm), cùng với gói tiện ích dòng lệnh IIRC (nó đã được tải xuống và cài đặt tự động). Cài đặt bản cập nhật o/s lại xóa nó /usr/bao gồm, nhưng trả lời ở trên cùng /usr/bao gồmLệnh khôi phục nó một lần nữa. tôi ở đây mởNgày trên tệp lệnh là 2019-07-15.
Nâng cấp lên XCode 11.0 (dành cho Catalina 10.15)
Bản nâng cấp lên XCode 11.0, bao gồm Swift 5.1 và SDK cho iOS 13, tvOS 13, watchOS 6 và macOS Catalina 10.15, được phát hành vào ngày 21 tháng 9 năm 2019. Tôi đã nhận được thông báo "Có sẵn bản cập nhật" và đã tải xuống và cài đặt nó qua ứng dụng AppStore (tab Cập nhật) vào máy tính chạy macOS Mojave 10.14.6 của mình mà không gặp vấn đề gì và không cần phải thực hiện lại mở. Ngay sau khi cài đặt (trước khi chạy ứng dụng), tôi đã thử biên dịch lại và được thông báo:
Việc đồng ý với giấy phép Xcode/iOS yêu cầu đặc quyền của quản trị viên, vui lòng chạy "sudo xcodebuild-license" và thử lại lệnh.
Chạy cái này ( /usr/bao gồm) cho phép tôi chạy trình biên dịch. Kể từ đó, tôi đã chạy ứng dụng để cài đặt các thành phần bổ sung mà nó cần; Vẫn còn phải xem điều gì sẽ xảy ra khi tôi nâng cấp lên Catalina - nhưng máy macOS Mojave 10.14.6 của tôi hiện vẫn ổn (24/09/2019).

Về c - Không thể biên dịch chương trình C trên Mac sau khi nâng cấp lên Mojave, chúng tôi tìm thấy một câu hỏi tương tự trên Stack Overflow: https://stackoverflow.com/questions/52935387/

25 4 0
không gian vũ trụ
Hồ sơ

Tôi là một lập trình viên xuất sắc, rất giỏi!

Nhận phiếu giảm giá taxi Didi miễn phí
Phiếu giảm giá taxi Didi
Chứng chỉ ICP Bắc Kinh số 000000
Hợp tác quảng cáo: 1813099741@qq.com 6ren.com
Xem sitemap của VNExpress