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

Chuỗi công cụ Cmake cho bộ xử lý MIPS 32 bit

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

Yêu cầu chạy mẫu Azure IoT SDK C trên máy ảnh Axis. Việc xây dựng các ví dụ bằng cmake tiêu chuẩn không hoạt động vì chúng được biên dịch cho x86_84 64-bit. Nó cần được biên dịch thành MIPS32.

Eugene Shi. Nên tạo một tệp chuỗi công cụ cho nó. Bây giờ tôi đã viết một bản nhưng nó bị lỗi ở mức 16% với lỗi sau:

[16%] /usr/bin/cmake: /usr/local/lib/libcurl.so.4: không có thông tin phiên bản (được yêu cầu bởi /usr/bin/cmake)
Xây dựng đối tượng C c-utility/CMakeFiles/aziotsharedutil.dir/adapters/uniqueid_linux.co
/demo/azure-iot-sdk-c/c-utility/adapters/uniqueid_linux.c:7:23: lỗi nghiêm trọng: uuid/uuid.h: Không có tệp hoặc thư mục như vậy
quá trình biên dịch chấm dứt.
make[2]: *** [c-utility/CMakeFiles/aziotsharedutil.dir/adapters/uniqueid_linux.co] Lỗi 1
make[1]: *** [c-utility/CMakeFiles/aziotsharedutil.dir/all] Lỗi 2
make: *** [all] Error 2

Các tập tin chuỗi công cụ của tôi:

BAO GỒM(CMakeForceCompiler)

SET(CMAKE_SYSTEM_NAME Linux) # cái này quan trọng
SET(CMAKE_SYSTEM_VERSION 1) # cái này không nhiều lắm
SET(CMAKE_SYSTEM_PROCESSOR dặm)

# đây là vị trí của chuỗi công cụ imps nhắm vào M1125
BỘ (CMAKE_C_COMPILER/usr/local/mipsisa32r2el/r23/bin/mipsisa32r2el-axis-linux-gnu-gcc)

# đây là thư mục gốc hệ thống tập tin của mục tiêu
#SET(CMAKE_FIND_ROOT_PATH /usr/local/mipsisa32r2el/r23)

# tìm kiếm các chương trình trong thư mục máy chủ xây dựng
BỘ (CMAKE_FIND_ROOT_PATH_MODE_PROGRAM KHÔNG BAO GIỜ)

# cho các thư viện và tiêu đề trong thư mục đích
BỘ (CHỈ CMAKE_FIND_ROOT_PATH_MODE_PROGRAM)
BỘ (CHỈ CMAKE_FIND_ROOT_PATH_MODE_LIBRARY)
BỘ (CHỈ CMAKE_FIND_ROOT_PATH_MODE_INCLUDE)

Sau đó chạy nó bằng cách sử dụng `./build.sh --toolchain-file toolchain-mips.cmake`.

Nếu tôi vượt qua nó như documentation Chạy nói, sử dụng -cl --sysroot=/usr/local/mipsisa32r2el/r23. Lỗi tôi gặp là không tìm thấy OpenSSL và bị lỗi trước đó.

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

Đã nghĩ ra một phần của nó. Nó không thể tìm thấy OpenSSL vì nó không có trong thư mục gốc được chỉ định. Đó là điều hiển nhiên, thực sự. Bạn cần sao chép mã nguồn và xây dựng nó bằng mips gcc và cung cấp đường dẫn đến thư mục gốc của nó.

BỘ (CMAKE_FIND_ROOT_PATH/path/to/mips/openssl/usr/local/mipsisa32r2el/r23)

Điều tương tự cũng xảy ra với Curl.

BỘ (CMAKE_FIND_ROOT_PATH /path/to/mips/openssl /path/to/mips/curl /usr/local/mipsisa32r2el/r23)

Bây giờ về cơ bản tôi đã quay trở lại nơi tôi đã bắt đầu. Thiếu các tệp tiêu đề mà lẽ ra tôi không nên đưa vào. Tuy nhiên, một vấn đề mới là khi chạy với --sysroot=/usr/local/mipsisa32r2el/r23 Khi hậu kỳ tập lệnh xây dựng, nó không thành công ở mức 0% với lý do cảnh báo được coi là lỗi. Xem xét điều này không xảy ra nếu không có hậu tố, tôi chỉ có thể cho rằng nó có liên quan đến các tệp liên quan đến mips được cung cấp chứ không phải các tệp CMake.

EDIT: Được quản lý để sửa lỗi và xây dựng thành công bằng chuỗi công cụ.

bỏ qua hệ thống gốc tham số. Đã giải quyết các vấn đề liên quan đến việc mất tích uuid Lỗi tập tin tiêu đề.

Ở mức 22% xảy ra lỗi sau, cụ thể là được thảo luận và giải quyết ở đây. .Câu trả lời ngắn gọn, chỉ cần xây dựng uuid từ util-linux.

Cuối cùng, tôi đã có thể xây dựng cho thiết bị MIPS-32 của mình thông qua Cmake.

Về chuỗi công cụ Cmake dành cho bộ xử lý MIPS 32 bit, 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/48790077/

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