Đây là những gì làm việc cho tôi, tôi đã đưa ra câu hỏi này với cùng một vấn đề, tôi đang cố gắng xây dựng chuỗi công cụ gcc-4.8 trong NDK và chạy vào cùng một vấn đề. Điều thats một chút khác nhau mặc dù về tình hình của tôi là tôi đang xây dựng trên một thiết bị Android, có nghĩa là tôi có thư viện Bionic libc.so
và libdl.so
trong /system/lib
.Tôi đã nhận được lỗi này khi cấu hình cho libgomp
:
toolchain-build/binutils-2.23/ld/ld-new: cannot find crtbegin_dynamic.o: No such file or directory
toolchain-build/binutils-2.23/ld/ld-new: cannot find -lc
toolchain-build/binutils-2.23/ld/ld-new: cannot find -ldl
toolchain-build/binutils-2.23/ld/ld-new: cannot find crtend_android.o: No such file or directory
File Make đã thiết lập một tùy chọn -B
vào một thư mục đặc biệt toolchain/gcc-4.8/gcc/
vì vậy tôi tạo liên kết tượng trưng từ hai libs chia sẻ trong /system/lib
-gcc-4.8/gcc
. Sau đó, tôi đã liên kết với các đối tượng crtbegin_dynamic.o
và crtend_android.o
đối với các tệp đối tượng crtbegin.o
và crtend.o
nơi được biên dịch và cài đặt vào lệnh findchain-build/prefix/lib/gcc/arm-linux-androideabi/4.8/the
find` có thể giúp bạn tìm thấy chúng.
Các lệnh tôi sử dụng để làm các liên kết tượng trưng trông như thế này:
ln -s ../../prefix/lib/gcc/arm-linux-androideabi/4.8/crtend.o crtend_android.o
từ bên trong thư mục toolchian-build/gcc-4.8/gcc
, đối với tôi mà làm việc vì thats nơi cấu hình đã được trỏ đến tìm kiếm với -B
tùy chọn make
qua đến xgcc
.
Tôi hy vọng rằng sẽ giúp ai đó. Thời gian để chuyển sang libatomic
;)
Nguồn
2014-07-14 11:02:28
Có cách nào để tôi có thể liên kết thủ công điều này vì có điều gì đó rõ ràng không? – Jackie
Tôi cũng đã thử xuất LD = arm-linux-androideabi-ld nhưng lại không có súc sắc. – Jackie