Skip to content

Feed to Win

September 28, 2019 / Uncategorized

Build PyQt5 in Python2.7 32-bit

Tại sao lại có bài viết này? Đơn giản vì hiện tại mình đang ngồi chờ PyQt5 build xong và mình không muốn người khác tốn nhiều thời gian như mình (~6 tiếng xàm xí :|)
Lý do mình tiến hành build PyQt5 là vì muốn sử dụng một số plugin cho IDA 6.8. Một số plugin như flare-ida, DROP,... có sử dụng Qt framework để làm giao diện. Lúc sử dụng thì sẽ hiển thị lỗi như này

Cho dù bạn có cài python-qt5 thì vẫn bị vì IDA 6.8 là 32-bit, kể cả file idaq64.exe (để ý việc debug một ứng dụng 64-bit trong IDA 6.8) trong khi python-qt5 lại được compile bằng 64-bit (đến IDA 7.0 thì mới chuyển hết toàn bộ sang 64-bit, hình như đấy là lý do vì sao một số plugin trở về trước không dùng được cho IDA 7.0)

Các bước tiến hành build được thực hiện như sau:

  1. Cài đặt QtCreator
    Tại sao lại phải cài cái này? Vì nó có thư viện Qt được biên dịch sẵn rồi, nếu bạn muốn khổ dâm hơn (tự build) thì có thể vào https://wiki.qt.io/Building_Qt_5_from_Git để thẩm.
    Lưu ý là chọn đúng phiên bản 32-bit có compiler mà máy bạn có sẵn nhé. Ở đây mình chọn Qt x86 msvc2015 5.6.3 vì máy mình cài sẵn Visual Studio 2015 rồi.
    Trong lúc cài nhớ tích chọn mục có tên compiler để có build tools của Qt nhé. Ví dụ msv2015, mingw, clang,...
    Sau khi cài xong phải thêm đường dẫn chứa build tools vào %PATH%, của mình là C:\Qt\Qt5.6.3\5.6.3\msvc2015\bin

  2. Cài SIP
    Mình không rõ phần mềm này chức năng là gì nhưng nó lại cần thiết khi build PyQt5.
    Lưu ý là nên chọn phiên bản giống với SIP_MIN_VERSION trong file configure.py của PyQt5 (tải ở bước 3)
    Vào thư mục chứa mã nguồn SIP, bật VS2015 x86 Native Tools Command Prompt (cái này bản chất cũng chỉ là cmd.exe nhưng có thêm các biến môi trường của Visual Studio để build thôi) rồi gõ python configure.py là xong.
    À quên, trước khi gõ python configure.py thì nhớ đổi tên thư mục QtNfc thành tên khác nhé. Đối với mình thì thư mục đó nằm trong C:\Qt\Qt5.6.3\5.6.3\msvc2015\include (tải ở bước 3)

  3. Cài đặt PyQt5
    Lựa chọn phiên bản PyQt5 giống với QtCreator
    Vào thư mục mã nguồn của PyQt5 rồi lại bật VS2015 x86 Native Tools Command Prompt gõ:
    python configure.py
    nmake
    nmake install

Có nhiêu đó bước mà tốn ~6 tiếng do ngu chứ thời gian build cũng không lâu lắm, và kết quả

Post navigation

Previous Post:

Writeups BlazeCTF 2018

Next Post:

Câu chuyện về GDB

Recent Posts

  • SVATTT2019
  • flag_check – AceBear CTF 2019
  • Writeups MatesCTF Round 3
  • Writeups ISITDTU
  • Câu chuyện về GDB

Recent Comments

    Archives

    • December 2019
    • April 2019
    • February 2019
    • July 2018
    • June 2018
    • April 2018
    • March 2018
    • February 2018

    Categories

    • CTF
    • Exploit
    • RE
    • Uncategorized

    Meta

    • Log in
    • Entries feed
    • Comments feed
    • WordPress.org
    © 2021 Feed to Win - Powered by SimplyNews