الكود المصدري الرسمي لـ RPCS3 موجود داخل مستودع المشروع على GitHub.
مهم قبل البدء
تعليمات قديمة تعتمد على Qt 6.6.3 أو
CMake 3.16.9 أو
GCC 11 و
Clang 12 ما عادت تمثل متطلبات المشروع الحالية.
هذا شرح بناء وليس شرح تشغيل ألعاب. المستخدم العادي يحمل آخر Build
جاهز من صفحة تنزيل RPCS3 الرسمية.
المتطلبات الحالية
Windows 10 أو أحدث
| الأداة |
الإصدار المطلوب |
ملاحظات |
| Visual Studio |
2022 أو 2026 |
حل rpcs3.sln هو المسار المفضل للبناء على Windows. |
| CMake |
3.28.0 أو أحدث |
اختياري عند استخدام Visual Studio، لكن Visual Studio 2026 يحتاج CMake 4.2.0 أو أحدث. |
| Python |
3.6 أو أحدث |
لازم يكون مضاف إلى PATH. |
| Qt |
6.11.1 |
ثبت مكون qtmultimedia مع نسخة MSVC. |
| Vulkan SDK |
1.4.341.1 |
استخدم الإصدار المحدد في الدليل؛ الإصدارات المستقبلية قد تسبب فشلًا مؤقتًا بالبناء. |
Linux
| الأداة |
الإصدار المطلوب |
ملاحظات |
| Clang / GCC |
Clang 17+ أو GCC 13+ |
هذه الحدود الدنيا الحالية للمترجمات. |
| CMake |
3.28.0 أو أحدث |
يستخدم لتوليد ملفات البناء. |
| Qt |
6.11.1 |
قد تكون حزم Ubuntu أقدم من المطلوب. |
| Vulkan SDK |
1.4.341.1 |
الإصدارات القديمة ممكن تسبب أخطاء Compile. |
| SDL |
SDL3 |
مطلوب لواجهة FAudio. |
مستخدم Nvidia على Linux قد يحتاج تثبيت حزمة
libglvnd.
استنساخ مستودع RPCS3
استخدم خيار --recurse-submodules
عشان ينزل المستودع الرئيسي وجميع المكتبات الفرعية من البداية.
PowerShell أو Terminalgit clone --recurse-submodules https://github.com/RPCS3/rpcs3.git
cd rpcs3
git submodule sync
git submodule update --init --recursive
تنزيل المستودع بدون Submodules يسبب أخطاء مكتبات مفقودة عند Configure أو Build.
بناء RPCS3 على Windows بالطريقة المفضلة
1. تعريف مسار Qt
عند استخدام حل Visual Studio العادي، عرّف متغير البيئة
QTDIR على مسار Qt:
مثالQTDIR=C:\Qt\6.11.1\msvc2022_64\
تقدر بدل ذلك تستخدم إضافة
Qt VS Tools داخل Visual Studio.
2. فتح الحل
2
اختر Open a project or solution.
3
افتح ملف rpcs3.sln من جذر المستودع.
4
من Solution Configurations اختر
Release.
3. تجهيز LLVM
تقدر تستخدم مكتبات LLVM الجاهزة لتقليل وقت البناء، أو تبنيها من داخل
مجموعة المشاريع __BUILD_BEFORE.
1
وسع مجموعة __BUILD_BEFORE.
2
ابنِ مشروع llvm_build،
أو llvm_build_clang_cl
لو مركب Clang داخل Visual Studio.
مكتبات LLVM غير المحسنة الخاصة بـ Debug مو متوفرة جاهزة.
استخدام مكتبات Release داخل Debug يؤدي إلى خطأ
cannot open file.
4. بناء المحاكي
1
تأكد أن Configuration هو Release.
2
افتح قائمة Build واختر
Build Solution.
3
بعد النجاح بتلقى المحاكي داخل
<rpcs3_root>\bin.
البناء على Windows باستخدام CMake
لمسار CMake عرّف متغير البيئة
Qt6_ROOT بدل
QTDIR:
مثالQt6_ROOT=C:\Qt\6.11.1\msvc2022_64\
Visual Studio CMake
1
اختر Open a local folder
وافتح جذر RPCS3.
2
حول العرض إلى CMake Targets View.
3
اختر Configuration باسم msvc-release.
4
نفذ Configure Cache ثم
Build All.
5
الناتج يكون داخل
<rpcs3_root>\build-msvc\bin.
Standalone CMake
من جذر المستودعcmake --preset msvc
cmake --build --preset msvc-release
الناتج يكون داخل
<rpcs3_root>\build-msvc\bin.
تثبيت متطلبات Linux
Arch Linux
Terminalsudo pacman -S glew openal cmake ninja vulkan-validation-layers qt6-base qt6-declarative qt6-multimedia qt6-svg sdl3 sndio jack2 base-devel
Debian وUbuntu
Terminalsudo apt-get install build-essential ninja-build libasound2-dev libpulse-dev libopenal-dev libglew-dev zlib1g-dev libedit-dev libvulkan-dev libudev-dev git libevdev-dev libsdl3-dev libjack-dev libsndio-dev libcurl4-openssl-dev qt6-base-dev qt6-base-private-dev qt6-multimedia-dev qt6-svg-dev libxkbcommon-dev
مستودعات Ubuntu ممكن تكون أقدم من إصدارات Qt وGCC وVulkan وCMake
المطلوبة للمشروع، لذلك لا تعتمد على رقم الحزمة فقط وتأكد من الإصدار الفعلي.
Fedora
Terminalsudo dnf install alsa-lib-devel cmake ninja-build glew glew-devel libatomic libevdev-devel libudev-devel openal-soft-devel qt6-qtbase-devel qt6-qtbase-private-devel vulkan-devel pipewire-jack-audio-connection-kit-devel qt6-qtmultimedia-devel qt6-qtsvg-devel llvm-devel libcurl-devel
OpenSUSE
Terminalsudo zypper install git cmake ninja libasound2 libpulse-devel openal-soft-devel glew-devel zlib-devel libedit-devel vulkan-devel libudev-devel libqt6-qtbase-devel libqt6-qtmultimedia-devel libqt6-qtsvg-devel libQt6Gui-private-headers-devel libevdev-devel libsndio7_1 libjack-devel
بناء وتشغيل RPCS3 على Linux
من جذر مستودع RPCS3cmake -B build -G Ninja
cmake --build build
./build/bin/rpcs3
لاستخدام Clang بدل المترجم الافتراضي:
اختيار ClangCC=clang CXX=clang++ cmake -B build -G Ninja
cmake --build build
البناء على ARM
لتجنب بعض أخطاء NEONcmake -B build -G Ninja -DUSE_NATIVE_INSTRUCTIONS=OFF
cmake --build build
عند استخدام GDB، يوصي الدليل بجعل المصحح يتجاهل إشارة
SIGSEGV المستخدمة داخليًا:
داخل GDBhandle SIGSEGV nostop noprint
أهم خيارات CMake
الخيارات تتغير مع تطوير المشروع، لذلك راجع
CMakeLists.txt قبل اعتماد أي قيمة في سكربت ثابت.
| الخيار |
وظيفته |
| -DUSE_NATIVE_INSTRUCTIONS= | يبني باستخدام تعليمات المعالج المحلي. مناسب للبناء الشخصي، لكنه غير مناسب للحزم العامة. |
| -DWITH_LLVM= | تفعيل بناء RPCS3 مع LLVM. |
| -DBUILD_LLVM_SUBMODULE= | استخدام أو بناء LLVM الموجود ضمن Submodule الخاص بالمشروع. |
| -DUSE_ALSA= | تفعيل واجهة ALSA الصوتية على Linux. |
| -DUSE_PULSE= | تفعيل PulseAudio. |
| -DUSE_DISCORD_RPC= | تفعيل Discord Rich Presence. |
| -DUSE_VULKAN= | تفعيل دعم Vulkan. |
| -DUSE_SYSTEM_ZLIB= | استخدام ZLIB من النظام بدل النسخة المضمنة. |
| -DUSE_SYSTEM_LIBPNG= | استخدام libpng من النظام؛ قد يساعد في تعارض الإصدارات أو الأيقونات السوداء. |
| -DUSE_SYSTEM_FFMPEG= | استخدام FFmpeg من النظام بدل النسخة المعدلة المضمنة. |
| -DENABLE_AMD_EXTENSIONS= | تفعيل امتدادات AMD الخاصة. |
| -DENABLE_NV_EXTENSIONS= | تفعيل امتدادات Nvidia الخاصة. |
لا تنسخ خيارات من أدلة قديمة بدون مراجعة. الخيار ممكن ينحذف أو يتغير
اسمه أو تتغير قيمته الافتراضية في أي تحديث.
وش وضع macOS وMSYS2؟
أوامر macOS القديمة اللي تعتمد Rosetta وHomebrew x64 وQt 6.6.3،
وتعليمات MSYS2 المبنية على Qt5 وPython 2، تعتبر مسارات قديمة وغير
مدعومة رسميًا حاليًا. لا تستخدمها كدليل رئيسي للبناء.
المشروع يقبل مساهمات تساعد المنصات الثانية على البناء، لكن فريق التطوير
يوضح أن الدعم الرسمي للبناء يتركز على Windows وLinux، والمنصات الثانية
ممكن تنكسر مع تغييرات الكود أو المكتبات.