2013-03-12 67 views
17

Có thể xây dựng trình thông dịch Python từ nguồn với Mingw và gcc trên Windows 7 không? Và tôi muốn biuld một phiên bản 64bit.Xây dựng Python với Mingw và gcc

Nếu phiên bản Python 64 bit (gcc Mingw) có sẵn để tải xuống, vui lòng cho tôi biết, tôi cũng sẽ sử dụng phiên bản đó. Cuối cùng tôi vẫn muốn biên dịch nó với gcc và mingw.

+0

Tải xuống các nguồn, đọc tài liệu và chạy trình biên dịch với các cờ thích hợp. Điều này không chỉ áp dụng cho MinGW :) – StoryTeller

+3

@StoryTeller tên của bạn được chọn một cách khéo léo. Python không xây dựng ra khỏi hộp với MinGW, hãy để một mình cho Win64. – rubenvb

+0

@rubenvb, Cảm ơn bạn: P – StoryTeller

Trả lời

7

Trước hết, bạn không cần phải xây dựng Python với MinGW-w64 để liên kết với nó và nhúng trình thông dịch. Chỉ cần giải nén trình cài đặt msi và sử dụng DLL dựng sẵn. Lưu ý bạn sẽ phải cẩn thận không trộn các đối tượng msvcr [t | 90] .dll, nhưng tôi chưa bao giờ thấy đó là một vấn đề thực sự cá nhân.

MinGW-w64 gcc/ld sẽ có thể liên kết đến DLL trực tiếp, nếu không bạn sẽ phải sử dụng gendefto create a .def filedlltoolto create an import library.

Thứ hai, có một patchset to build Python with MinGW, nhưng tôi không chắc về khả năng tương thích 64 bit của nó.

+0

Cảm ơn bạn đã trả lời. Lý do cho điều này, là tôi muốn biên dịch Quantum-Gis cho 64 bit với mingw và gcc. Quatum-Gis có khả năng sử dụng các plugin được viết bằng python hoặc C++. Đối với điều này tôi cần Sip và PyQt4 trong 64bit cho Win7. Tôi đã đi qua quá trình gendef/nm để tạo tệp libpython27.a. Tôi bắt đầu xây dựng Sip với Mingw và gcc và Python 2.7.3 tất cả trong 64bit, thành công, tôi cũng có thể kiểm tra Sip trong một giao diện điều khiển python. Tôi đã biên dịch thành công PyQt4 và cài đặt nó, nhưng khi thử nghiệm nó trong một giao diện điều khiển python nó chỉ thất bại. –

+0

Tôi không biết cách gỡ lỗi lỗi này? Vì sự thất bại này, tôi lý luận rằng có lẽ tôi cần phải biên dịch Python 2.7.3 với mingw và gcc trong 64bit. Theo ý kiến ​​của bạn, nếu tôi tải về trước khi xây dựng 64 bit Sip và PyQt4 nhị phân được xây dựng với MSVC, tôi sẽ có vấn đề sau này với các kịch bản python khác/plugins bằng văn bản chống lại các nhị phân? –

+0

@TheunsHeydenrych Điều đó tôi không biết. Tôi sẽ đề nghị yêu cầu danh sách gửi thư 'mingw-w64-public @ sourceforge.net', trong đó một vài người sử dụng Python với MinGW-w64. Tất cả những gì tôi làm là liên kết 'gdb' với Python, nó hoạt động như tôi đã mô tả' ;-) '. – rubenvb

4

Bạn có thể thử kho này:

hg bản sao https://bitbucket.org/puqing/python-mingw

Nó là một bản sao của kho lưu trữ chính thức nhưng có chứa một số sửa đổi để làm cho nó biên dịch với mingw. Nhập PC/MinGW thư mục:

cd PC/MinGW & & làm

Không chắc chắn nếu nó biên dịch trong win64, nhưng với win32 và MSys cần làm việc.

Các vấn đề liên quan