الانتقال إلى المحتوى الرئيسي
يدعم ClickHouse معمارية s390x بشكل تجريبي.

بناء ClickHouse لـ s390x

على منصة s390x، كما في المنصات الأخرى، يُبنى OpenSSL كمكتبة ثابتة. وإذا أردت البناء باستخدام OpenSSL الديناميكي، فعليك تمرير -DENABLE_OPENSSL_DYNAMIC=1 إلى CMake. تفترض هذه التعليمات أن الجهاز المضيف يعمل بنظام Linux x86_64/ARM وأن جميع الأدوات اللازمة للبناء الأصلي متوفرة فيه، وذلك استنادًا إلى تعليمات البناء. كما تفترض أيضًا أن النظام المضيف هو Ubuntu 22.04، لكن ينبغي أن تعمل التعليمات التالية أيضًا على Ubuntu 20.04. بالإضافة إلى تثبيت الأدوات المستخدمة للبناء الأصلي، يجب تثبيت الحزم الإضافية التالية:
للبناء لـ s390x:

التشغيل

لإجراء المحاكاة، ستحتاج إلى الملف التنفيذي الثابت الخاص بـ QEMU user لمعمارية s390x. على Ubuntu، يمكن تثبيته باستخدام:
بعد اكتمال البناء، يمكن تشغيل الملف التنفيذي، على سبيل المثال، باستخدام:

تصحيح الأخطاء

ثبّت LLDB:
لتنقيح ملف تنفيذي بمعمارية s390x، شغّل ClickHouse باستخدام QEMU في وضع التنقيح:
في نافذة طرفية أخرى، شغِّل LLDB ونفِّذ الأمر attach، واستبدل <Clickhouse Parent Directory> و<build directory> بالقيم المناسبة لبيئتك.

تكامل Visual Studio Code

  • إضافة CodeLLDB مطلوبة لإجراء التنقيح المرئي.
  • يمكن أن تساعد إضافة Command Variable في التشغيل الديناميكي عند استخدام CMake Variants.
  • تأكد من ضبط الواجهة الخلفية على تثبيت LLVM لديك، على سبيل المثال: "lldb.library": "/usr/lib/x86_64-linux-gnu/liblldb-21.so"
  • تأكد من تشغيل الملف التنفيذي لـ ClickHouse في وضع التنقيح قبل البدء. (ومن الممكن أيضًا إنشاء preLaunchTask لأتمتة ذلك)

أمثلة على الإعدادات

cmake-variants.yaml

launch.json

settings.json

سيؤدي هذا أيضًا إلى وضع نواتج البناء المختلفة في مجلدات فرعية منفصلة داخل المجلد build.

run-debug.sh

tasks.json

يُعرّف مهمة لتشغيل الملف التنفيذي المُجمَّع في وضع server داخل مجلد tmp إلى جانب الملفات الثنائية، باستخدام الإعدادات الموجودة في programs/server/config.xml.
آخر تعديل في ٢٥ يونيو ٢٠٢٦