2012-11-06 36 views
7

Tôi đang cố gắng hiểu những gì một toolchain độc lập có nghĩa là. Sau đây là những phát hiện của tôi. Một chuỗi công cụ sẵn sàng sử dụng với tất cả cấu hình là tiêu đề hệ thống và thư viện trong đường dẫn chính xác. Đối với Android, nó cũng sẽ có các tiêu đề API trong đường dẫn nơi chuỗi công cụ có thể tìm kiếm nó. Tại sao cụm từ "độc lập"? Điều này có thể sẽ khác nhau mà các toolchain thường xuyên trong ý nghĩa rằng R T sẽ cần phải được cấu hình và thực hiện sẵn sàng cho android sử dụng withe sysroot và libc đường dẫn tiêu đề cho vv Xin vui lòng nhận xét.Chuỗi công cụ độc lập là gì?

Hmm, tôi đã biên dịch cho android và một tiến trình đang chạy một tập lệnh gọi là make-standalone-toolchain.sh một chuỗi công cụ độc lập được tạo .Tôi đã thực hiện kịch bản này để hiểu điều này đang làm. Không thực sự tốt ở kịch bản shell. Nhưng làm ra những thứ nhất định. "" Tạo cài đặt chuỗi công cụ Android tùy chỉnh bao gồm một sysroot đang hoạt động. Kết quả là một thứ có thể dễ dàng được sử dụng như một trình biên dịch chéo độc lập, ví dụ: để chạy cấu hình và tạo kịch bản. "--toolchain arch ndk-dir gói-hệ thống nền tảng biến biến được thiết lập Compute source sysroot SRC_SYSROOT =" $ NDK_DIR/nền tảng/$ PLATFORM arch- $ ARCH "Sao chép tiêu đề sysroot và thư viện ... libstdC++ tiêu đề và thư viện ... được tạo sẵn trong thư mục tạm thời sau đó sao chép từ thư mục Tmp để cài đặt dir tạo tar nghĩa là tệp gói để thêm tmpdir muốn biết chính xác những gì đang xảy ra ở đây hoặc liên kết hoặc đề xuất để look.but ofcourse không muốn đọc hướng dẫn sử dụng rất công phu ~

+0

vui lòng cung cấp một số thông tin về những gì bạn đã thử, những gì bạn đang hướng đến, câu hỏi dường như rộng rãi vào lúc này. –

+0

Câu trả lời này có một ví dụ tuyệt vời về cách sử dụng: http://stackoverflow.com/a/16784582/895245 –

Trả lời

5

Blog này niêm yết có thể trả lời câu hỏi của bạn:.

http://clseto.mysinablog.com/index.php?op=ViewArticle&articleId=3480794

Có một cách được khuyến nghị để tạo chương trình C/C++ gốc trên Android: Liệt kê các tệp nguồn của bạn trong tập lệnh (Android.mk) và chạy 'ndk-build'. Nó có thể không là vấn đề nếu bạn đang viết chương trình mới nhưng nếu bạn đã có một kịch bản xây dựng làm việc (giống như những phần mềm mã nguồn mở đó) có thể xây dựng chương trình của bạn một cách độc đáo trên Linux, nó sẽ là một nhức đầu để di chuyển kịch bản của bạn sang Android.mk . Tất cả những gì bạn cần trong tình huống này là trình biên dịch chéo C/C++ và sau đó thay thế các biến trong kịch bản của bạn (như CC, CXX, AR, AS, RANLIB, ...) thành một cái gì đó như 'arm-linux-androideabi-gcc' , 'cánh tay-linux-androideabi-g ++, ...

Fortunatley, bên trong 'Android NDK Dev Hướng dẫn', có một phần 'độc toolchain' mà chỉ mô tả những gì chúng ta cần ....

Các vấn đề liên quan