Tôi mới sử dụng cửa sổ và studio trực quan. Tôi phải biên dịch một mã được viết bằng C++. Nó sử dụng các thư viện khác nhau. Tôi tìm thấy các tập tin dll cho những thư viện. Tôi có thể biên dịch mã nguồn mà không gặp bất kỳ vấn đề gì nhưng có các vấn đề liên kết. Tôi không biết làm thế nào để liên kết các tập tin dll. Tôi hiểu rằng tôi cần các tập tin .lib cho điều đó. Nhưng một số thư viện yêu cầu không có bất kỳ tệp lib nào được cung cấp. Chỉ có các tệp dll và các tệp khác. Làm thế nào tôi có thể tạo ra các tập tin lib yêu cầu bằng cách sử dụng Visual studio 2010 cuối cùng? Tôi không thể tìm thấy một chương trình gọi là lib.exe. Cảm ơn bạn.lib.exe, Visual Studio, tạo các tệp .lib từ tệp dll và def
Trả lời
Bạn thực sự cần lib.exe để chuyển tệp .def thành tệp .lib mà trình liên kết cần. Nó được lưu trữ trong thư mục vc \ bin của thư mục visual studio, C: \ Program Files \ Microsoft Visual Studio 10.0 \ VC \ bin \ lib.exe theo mặc định. Cách dễ nhất là sử dụng "Visual Studio Command Prompt", bạn sẽ tìm thấy nó trong menu Start, Microsoft Visual Studio 2010, Visual Studio Tools.
Tiếp theo, chạy lib.exe với tùy chọn /def:foo.def để tạo .lib. Làm theo hướng dẫn của nhà cung cấp, nếu được cung cấp. Và đừng ngần ngại liên hệ với họ để được hỗ trợ.
Điều này đòi hỏi rất nhiều công việc, và thường dễ dàng hơn để tìm nguồn và/hoặc libs cho DLL của bạn, vì bạn nên biên dịch cả thư viện và chương trình với cùng trình biên dịch (Làm cho triển khai dễ dàng hơn, vì vậy bạn không phụ thuộc vào nhiều lần rc).
Bạn có thể sử dụng hướng dẫn này để tạo ra các tập tin lib: http://support.microsoft.com/kb/131313
Nó là một quá trình đòi hỏi thời gian, cũng như rất nhiều gỡ lỗi (Tùy thuộc vào kích thước của các dll cũng như sự phức tạp của giao diện của dll)
Tùy thuộc vào nền tảng của bạn, vị trí thường là:
Windows 7 32-bit với 32-bit VS2010:
C: \ Program Files \ Microsoft Visual Studio 10.0 \ VC \ bin \
Windows 7 64-bit với 64-bit VS2010:
C: \ Program Files \ Microsoft Visual Studio 10.0 \ VC \ bin '
Windows 7 64-bit với 32-bit VS2010:
C: \ Program Files (x86) \ Microsoft Visual Studio 10.0 \ VC \ bin \
Hồ wever, nếu bạn bắt đầu Visual Studio Command Prompt, nó phải ở trong đường dẫn của bạn. (Xem trong Công cụ Visual Studio trên menu bắt đầu của bạn)
Nếu bạn truy cập thuộc tính dự án cho DLL và kiểm tra Trình liên kết -> Nâng cao, có mục nhập 'Thư viện nhập'. Bạn có thể phải thiết lập để tạo ra một tập tin lib trong khi xây dựng các DLL hoặc nếu nó đã được thiết lập nó sẽ chỉ cho bạn tại vị trí của tập tin lib.
Điều đó nói rằng nếu bạn xây dựng toàn bộ dự án bằng cách sử dụng Visual Studio 2010, việc thêm các thư viện phụ thuộc vào phần Tài nguyên chung của thuộc tính chung sẽ tự động kích hoạt các câu lệnh liên kết cần thiết.
- 1. Tự động tạo tệp DLL .DEF trong Visual Studio?
- 2. Tệp DLL và LIB
- 3. Tạo các tệp .cpp từ tệp .h visual studio
- 4. Dừng tạo .lib và .exp khi xây dựng một .dll với Visual Studio
- 5. Dự án DLL không tạo tệp .exp và .lib
- 6. Khi xây dựng một tệp DLL, tệp LIB được tạo có chứa tên DLL không?
- 7. tạo tập tin .lib trong Visual Studio
- 8. Làm cách nào để có CMake tạo dll và tệp lib phù hợp?
- 9. Tệp DLL và LIB - điều gì và tại sao?
- 10. Công cụ để kiểm tra các tệp .lib?
- 11. Khả năng tương thích của * .dll * .a * .lib * .def giữa VisualStudio và gcc
- 12. Tại sao Visual Studio tạo các tệp bổ sung này?
- 13. Chuyển đổi một Dll Windows sang .lib cho C++ Visual Studio 2008
- 14. Visual Studio gitignore và mdf, các tệp ldf
- 15. C++ tại sao không có tệp .lib được tạo?
- 16. Tệp Header (.h), tệp Thư viện (.lib) và tệp DLL (.dll) có liên quan như thế nào
- 17. Tạo MFC DLL trong Visual Studio
- 18. Visual Studio tạo các tệp Resx không hợp lệ
- 19. Tạo các tệp .webtest mà không sử dụng Visual Studio
- 20. Làm cách nào để xây dựng thư viện nhập (.lib) VÀ DLL trong Visual C++?
- 21. Các tệp tài nguyên của CMake và Visual Studio
- 22. Qt, CMake, Visual Studio và Q_OBJECT trong các tệp cpp
- 23. .lib tệp không được tạo (VS2008)
- 24. Các tệp PDB có Thư viện trong Visual Studio 10
- 25. Các tệp nhóm trong Visual Studio
- 26. Visual Studio Build Definition - Cách thêm các tệp (dll) bổ sung để xây dựng?
- 27. Tại sao dự án Visual C++ .exe của tôi tạo tệp .lib và .exp?
- 28. Tệp Visual Studio 2008 ASMX
- 29. Bộ chọn tệp Visual Studio
- 30. Tạo một DLL từ một tệp cpp bọc với SWIG