Tôi gặp sự cố nhỏ: Tôi phải mở tệp trình liên kết có phần mở rộng là .a
. Tôi sử dụng Dev-C++.Cách mở tệp .a
Trả lời
.a
tệp là ar
lưu trữ (giống như lưu trữ zip) của đối tượng (.o
) tệp. Bạn có thể liệt kê các file trong .a
tập tin sử dụng ar
chương trình:
ar t file.a
Và giải nén tất cả các file:
ar x file.a
Hãy thử fstream hoặc fstream file_op("c:\\test.a",ios::in);
và đừng quên bao gồm fstream.h
.
Đó có lẽ là những gì anh ta yêu cầu, nhưng hầu hết có lẽ không phải những gì anh ta thực sự muốn. – Clifford
@Clifford Nhưng đó là vấn đề o câu hỏi, nhưng không phải là câu trả lời. Vậy tại sao -1? –
@ Draco Ater: Tôi đã không bỏ phiếu nó xuống nó (giả định của bạn). Đôi khi một câu hỏi có thể được hỏi mà không có đủ kiến thức kỹ thuật hoặc thuật ngữ chính xác để thể hiện rõ ràng, và tôi nghi ngờ rằng đây là một tình huống như vậy. Dao cạo Occam nên được áp dụng; hãy tự hỏi "Tại sao một người nào đó (đặc biệt là một người mới) muốn * mở * một kho lưu trữ thay vì chỉ * sử dụng nó * theo cách thông thường bằng cách liên kết nó?". Hơn nữa, ông đã đề cập đến IDE được sử dụng, cho thấy ông cần biết cách sử dụng thư viện trong IDE không có trong mã. Đọc nhận xét và câu trả lời của người khác để xem tại sao điều này có thể không phải là câu trả lời. – Clifford
Tệp có phần mở rộng là .a
là các thư viện tĩnh sử dụng quy ước đặt tên tệp Unix. Chúng không nhiều hơn một bộ sưu tập mã đối tượng được lập chỉ mục. Bạn không mở quá nhiều (trừ khi bạn có một công cụ như nm
hoặc gdb
có sẵn, cả hai trong số đó có thể thực hiện những điều hợp lý với thư viện nếu không nhất thiết bạn muốn) như yêu cầu trình liên kết sử dụng chúng khi liên kết. Với hầu hết các trình liên kết, điều quan trọng là phải đặt tất cả các thư viện (cả tĩnh và động/chia sẻ) sau mã chương trình chính của bạn trên dòng lệnh trình liên kết và thứ tự các thư viện quan trọng.
nm đặc biệt hiệu quả cho mục đích của tôi. Cảm ơn! – AWrightIV
Bạn có thực sự có nghĩa là bạn muốn mở tập tin, hay đúng hơn mà bạn muốn liên kết bằng mã của bạn?
Dev-C++ theo mặc định được cài đặt với trình biên dịch MinGW/GCC. Nếu kho lưu trữ không được xây dựng cụ thể để làm việc với MinGW (ví dụ nó có thể là một kho lưu trữ Cygwin hoặc Linux), bạn sẽ không thể liên kết nó với mã được tạo ra của MinGW.
Nếu lưu trữ là thư viện tương thích MinGW/GCC, thì bạn chỉ cần liên kết nó với mã của bạn. Trong Dev-C++, bạn cần thêm tệp nén vào tùy chọn trình liên kết dự án, bằng cách thêm đường dẫn đầy đủ vào tệp lưu trữ (có nút cho tùy chọn dự án) hoặc bằng cách đặt lưu trữ trong đường dẫn được xác định bởi tùy chọn -L<path>
và sau đó thêm tùy chọn -l<archive>
. Lưu ý rằng id lưu trữ được gọi là libXXX.a, sau đó tùy chọn -l<archive>
sẽ là `-lXXX '; tiền tố "lib" và phần mở rộng ".a" là ẩn.
Nếu bạn chỉ muốn kiểm tra bản lưu trữ để xác định biểu tượng bên ngoài nó cung cấp, thì tiện ích nm có thể được sử dụng cho điều đó. Nếu bạn muốn trích xuất các tệp đối tượng riêng lẻ, hãy sử dụng ar, mặc dù tôi không thể nghĩ ra một lý do chính đáng nào khiến bạn muốn thực hiện.
- 1. .o tệp vs .a tệp
- 2. Cách liệt kê các tệp trong một tệp .a
- 3. Cách mở tệp bằng cách mở bằng câu lệnh
- 4. Thư viện tĩnh C++ - cách tạo tệp .a từ .lib?
- 5. Cách mở tệp .hprof
- 6. Cách mở tệp "nul"?
- 7. cách mở tệp * .sdf?
- 8. SVN bỏ qua tệp '.a'
- 9. Làm (a, a) a Functor
- 10. Mở hộp thoại tập tin trên <a> thẻ
- 11. Cách mở tệp .msu extension?
- 12. Cách mở tệp bên ngoài từ HTML
- 13. Cách mở tệp trong Android qua Intent
- 14. Cách dễ nhất để chuyển đổi "a/b/c" thành ["a/b/c", "a/b", "a"]
- 15. Tệp .a (như libcrypto.a) là gì?
- 16. SmartSVN không thể xác định tệp .a?
- 17. Android làm cách nào để mở tệp mở rộng .doc?
- 18. Làm cách nào để mở nhiều tệp bằng cách sử dụng "có mở" bằng Python?
- 19. lệnh để biên dịch các tệp c có tệp .a
- 20. Subversion - Thêm tệp văn bản - Tình trạng tệp A (bin)
- 21. Cách mở tệp từ Memory Stream
- 22. Cách mở tệp .accdb trong Ubuntu?
- 23. Làm cách nào để mở tệp hx?
- 24. Cách mở tệp vcproj từ CDT Eclipse?
- 25. Cách mở và chia nhỏ nhiều tệp
- 26. Cách ánh xạ Ctrl + A và Ctrl + Shift + A khác?
- 27. Cách truy cập Trình mô tả tệp của tệp mở
- 28. Làm cách nào để "a <= b && b <= a && a! = B" là đúng?
- 29. Cách để chức năng [a] -> [a] hoạt động trên [(a, Int)]?
- 30. Cách mở tệp PDF trong <iframe>?
Xin chào Ale, bạn có thể cho chúng tôi thấy những gì bạn đã đưa ra cho đến nay? –
@Mgst: Bạn đang cố gắng đạt được điều gì? –
Bạn có ý nghĩa gì khi "mở"? – zvrba