Tôi đã cài đặt phiên bản 32 bit của Mingw 4.7.2 (sử dụng trình cài đặt) trên Windows 7 64 bit của mình. Tôi sử dụng MinGW trong một dự án Eclipse C++ để xây dựng một tệp .dll. Cho đến nay mọi thứ đều hoạt động.Xây dựng dll 64 bit với MinGW 32 bit trong Eclipse
Tuy nhiên tôi sử dụng .dll này để được đưa vào dự án java qua JNI. Và khi tôi gọi một hàm của .dll trong dự án java, ngoại lệ "Exception in thread "main" java.lang.UnsatisfiedLinkError: D:\path\mylib.dll: Can't load IA 32-bit .dll on a AMD 64-bit platform"
được ném. Vì vậy, có vẻ như tôi cần phải xây dựng một phiên bản 64 bit của DLL.
Vì vậy, câu hỏi của tôi là:
- Tôi có thể xây dựng một DLL 64 bit với MinGW 32 bit hay tôi cần phiên bản MinGW 64 bit cho điều đó?
- Nếu có, tôi cần điều chỉnh MinGW và/hoặc Cài đặt Eclipse để làm như thế nào?
Trân Marc
Edit: Như bạn có thể thấy trong những nhận xét dưới đây, tôi đã cố gắng để thiết lập Cờ -m64 để xây dựng một dll 64 bit. Điều này dẫn đến lỗi: "sorry, unimplemented: 64-bit mode not compiled in"
. Vì vậy, có một cách để có được chế độ 64 bit chạy trong mingw32.
Đồng ý, nếu mingw không hỗ trợ nó, mingw-w64 sẽ làm. 1 cho liên kết trực tiếp. – ollo
Btw. đã có 4.7.2 chưa? Tải xuống là 4.7.0. – ollo
Có. Tôi đã chỉnh sửa câu trả lời của mình ... –