Sự khác biệt giữa các công cụ arm-linux-gcc và arm-none-linux-gnueabi và arm-linux-gnueabi là gì?Sự khác biệt giữa arm-linux-gcc và arm-none-linux-gnueabi
Họ có biên dịch khác không?
Sự khác biệt giữa các công cụ arm-linux-gcc và arm-none-linux-gnueabi và arm-linux-gnueabi là gì?Sự khác biệt giữa arm-linux-gcc và arm-none-linux-gnueabi
Họ có biên dịch khác không?
Công cụ có quy ước tên lỏng lẻo như arch[-vendor][-os]-abi
.
arch
là dành cho kiến trúc: cánh tay, mips, x86, i686 ...vendor
là công cụ cung cấp chuỗi: táo,os
là dành cho hệ điều hành : linux, none (kim loại trần)abi
là cho các ứng dụng hội nghị giao diện nhị phân: EABI, gnueabi, gnueabihfĐối với câu hỏi của bạn, arm-none-linux-gnueabi
và arm-linux-gnueabi
là điều tương tự. arm-linux-gcc
thực sự là nhị phân cho gcc, trong đó tạo ra các đối tượng cho kiến trúc ARM được chạy trên Linux với cấu hình mặc định (abi) được cung cấp bởi toolchain.
Một số nội dung thú vị: Toolchains.
Điều này * có thể * đúng, nhưng thực sự, không có đủ thông tin để chắc chắn. Bạn cần biết về nguồn gốc của toolchain. Tuy nhiên, các công cụ "gnueabi" có lẽ là khá hiếm. – ams
Bạn đang nói về arm-linux-gcc? hoặc bạn có thể làm rõ? – auselen
Thật đáng để chỉ ra rằng các chuỗi công cụ được cấu hình với các đường dẫn tìm kiếm thư viện và tiêu đề mặc định. Khi biên dịch chéo, chúng nên trỏ vào hình ảnh đích chứ không phải các tiêu đề và thư viện riêng của máy phát triển. Vì vậy, bạn có thể dễ dàng kết thúc bằng trình biên dịch báo cáo đặc tả của nó là 'arm-none-linux-gnueabi' thực sự biên dịch với các kết quả hơi khác nhau. Bạn có thể kiểm tra điều này với 'gcc -print-sysroot' – marko
Liên quan: [Sự khác biệt giữa các trình biên dịch arm-eabi arm-gnueabi và gnueabi-hf] (https://stackoverflow.com/q/26692065/427545) – Lekensteyn