Tôi đã đọc hai câu hỏi SO sau: Which runtime libraries to ship? và License of runtime libraries included in GCC? - cả hai đều rất hữu ích nhưng không hoàn toàn là những gì tôi đang tìm kiếm.Yêu cầu đối với thư viện thời gian vận chuyển/DLL
Tôi luôn viết các chương trình để sử dụng trên máy của riêng mình, điều này chưa bao giờ gây ra bất kỳ vấn đề gì, nhưng bây giờ tôi muốn bắt đầu chạy phần mềm trên các máy khác và tôi cảnh giác với các yêu cầu thời gian chạy.
EDIT: Xem ví dụ bên dưới để thay thế, điều này gây hiểu lầm.
Cụ thể, nếu tôi viết một chương trình C++ trên một máy Windows, biên dịch với gcc qua MinGW, và muốn chạy nó trên máy khác:
Tôi có phải gửi libstdC++. dll với chương trình của tôi?Đây có phải là tệp duy nhất (tôi giả định được đặt trong thư mục của tệp thi hành) đủ để cho phép chương trình chạy không?
Ngoài ra, ví dụ giống hệt, ngoại trừ lần này là chương trình Mục tiêu-C. Đang gửi tệp libobjc.dll đến máy khác đủ để cho phép chương trình thực thi đúng cách?
Tôi đã quen với việc chạy các chương trình trên máy có công cụ nhà phát triển, v.v., nhưng bây giờ tôi đang tìm cách chạy chúng trên các máy mục đích chung (bạn bè, đồng nghiệp ...) và tôi không hoàn toàn chắc chắn phải làm gì!
EDIT: Để đối phó với dinh thự 's câu trả lời, tôi cảm thấy tôi nên làm rõ nó là gì tôi đang tìm kiếm. Tôi biết làm thế nào để xác định các DLL cần thiết (/ dylibs, vv) mà các chương trình của tôi sử dụng, (mặc dù tôi đã quen với việc thực hiện công việc đó một cách thủ công; Tôi chưa từng nghe về bất kỳ công cụ nào). Câu hỏi của tôi là "Tôi phải làm gì bây giờ?"
Một ví dụ tổng quát hơn có lẽ là cần thiết:
Hãy nói rằng tôi đã viết một chương trình trong đó có đối tượng file có nguồn gốc từ C++, C và/hoặc Objective-C (2) mã. Tôi đã sử dụng một số mã Windows API được biên dịch thành công bằng cách sử dụng gcc của MinGW. Tôi cũng có một DLL tùy chỉnh tôi đã viết trong Visual Studio (C + +).
Tôi đã xác định chương trình của tôi sẽ sử dụng khi chạy (một trong số đó có thể là libobjc.dll của GCC, tôi không chắc liệu điều này có nên tạo sự khác biệt trên máy Windows hay không, nhưng tôi muốn thực hiện điều này càng chung càng tốt) - "các điều kiện tiên quyết DLL".
Tôi muốn chạy nó trên máy tính đồng nghiệp của tôi, hầu hết trong số đó chạy Windows 7, nhưng một số hiện nay chạy Windows 8. Bắt đầu từ khi bắt đầu vì lợi ích của sự hoàn chỉnh:
- Tôi có cần thế nào để chuyển các tệp điều kiện tiên quyết DLL vào máy tính của đồng nghiệp của tôi?
- Tôi nên đặt chúng vào thư mục nào? (thư mục exe/thư mục hệ thống?)
- Khi nào tại chỗ, sự hiện diện của các tệp DLL này có cho phép chương trình thực thi chính xác không? (Giả sử nó biết nơi để tìm chúng)
- Có bất kỳ tệp nào khác cần được chuyển với các tệp DLL không?
Về cơ bản, tôi đang cố xác định toàn bộ quá trình suy nghĩ để phát triển và chạy một ứng dụng trên máy khác theo yêu cầu thời gian chạy hệ thống.
Đối với các ứng dụng cửa hàng win8 thấy điều này .. http://blogs.msdn.com/b/vcblog/archive/2012/09/28/10354327.aspx –