تجميع بلدي PHP التمديد على ويندوز مع Visual Studio 2008
-
10-07-2019 - |
سؤال
وكتبت تمديد PHP ويمكن تجميعها وتعمل تحت لينكس بنجاح. ولكن على النوافذ، التقيت بعض المشاكل.
وفعلت تجميع على النوافذ وفقا ل http://blog.slickedit.com/؟p = 128 مع مصدر PHP الإصدار 5.2.10، وبعد تجميع أنها ولدت ملف DLL. ولكن عندما حاولت استخدام ملف DLL، وذكرت لي مشاكل في الذاكرة عند بدء أباتشي (خادم امب). وبعد ذلك بدأت عملية التصحيح، يبدو أن REGISTER_INI_ENTRIES () لديه مشاكل.
وهنا هو PHP تمديد شفرة المصدر، http://www.bluefly.cn/xsplit .tar.gz ، وأنه يعمل بشكل جيد على لينكس. ولكن أريد أيضا أن تجعل من العمل على ويندوز.
وآسف لأنني لست مؤيد لدرجة أنني آمل شخص يمكن أن تساعدني.
وهو محل تقدير أي مساعدة وشكرا مقدما ~
المحلول
والسبب كنت لا ترى مشكلة في لينكس هو الأكثر احتمالا أن كنت تفعل safebuild موضوع على النوافذ، ولكن ليس على لينكس. حاول إضافة --enable-maintainer-zts
على لينكس ثم تحقق باستخدام valgrind (USE_ZEND_ALLOC=0 valgrind /usr/bin/php script.php
)
ومن سريع glanceover التعليمات البرمجية رأيت أنك لم تحدد php_xsplit_init_globals
الخاصة بك والتي تهيئة المتغيرات الموضوع. وظيفة تيس أن تكون مسجلة من MINIT
بإضافة
ZEND_INIT_MODULE_GLOBALS(xsplit, php_yplist_init_globals, NULL);
والدعوة. ربما شيء آخر هو خطأ، ولكن هذا هو أول شيء رأيته.
نصائح أخرى
وامب باستخدام VC6 ويتطلب وحدة ليتم تجميعها مع VC6.
والتقارير رومان بوردون (مؤلف WampServer) كلمات: لأن يتم ترجمة أباتشي مع VC6، إذا كنت ترغب في تشغيل PHP وحدة نمطية (كما هو الحال في WampServer) يجب ترجمة وحدة مع VC6
إذا كنت ترغب في تجميع وحدة مع منصة أكثر حداثة، لديك لتجميع كامل توزيع PHP-CGI وتشغيله كما (نحو سريع) على CGI.
إذا كنت تستطيع قراءة الفرنسية (أو إذا كنت لا تعرف كيفية استخدام مترجم) يمكنك أن تقرأ <لأ href = "http://blog.wampserver.com/index.php/2009/11/04/php5- 3-سو نوافذ زائد دي nouveautes-قون لو croit / "يختلط =" نوفولو noreferrer "> هذا المنصب .