الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

ما هو الفرق بين النسختين التجارية و المجانية من مكتبة Qt

بدأه asm-soft في 17 سبتمبر 2008 · 11 رد · 3,771 مشاهدة · في قسم Cross Platform GUI Libraries العام
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

السلام عليكم ورحمة الله وبركاتة

قررت أن أنتقل إلى مكتبة QT نظراً لما قرأتة عنها و رأيت بنفسى حجم المكتبة و ما أستطيع أن أستفيدة منها و لكن توقفنى بعض الأسئلة حول الفرق بين النسخة التجارية و النسخة المجانية و هذا بعيداً عن مشكلة إخراج برامج تجارية مغلقة بالنسخة المجانية بل تدور أسئلتى حول الفرق بين النسختين فى التعامل و الإمكانيات لأننى قررت أن أشترى الترخيص ولذك قررت أن أطرح أسئلتى هنا نظراً لوجود أعضاء ملتهبة و عاشقة لهذة المكتبة (و هما عارفين نفسهم ;) ) .

1- هل هناك فرق بين الإثنان عند التعامل معهما فى كتابة السورس(لاحظت أن الشركة المصنعة تقول أن هناك صعوبة فى بناء البرنامج المبنى على النسخة المجانية بواسطة النسخة التجارية ) ؟

2- المكتبة التجارية معها درايفر MySQL و لا أجدها مع النسخة المجانية علماً باننى وجدت ملفات CPP و H الخاصة بالدرايفر فى النسخة المجانية فهل يجب أن أبنيها من جديد حتى أحصل على المكتبة المجانية بدرايفر MySQL ؟

3- لا حظت أن المكتبة التجارية الخاصة بالوندوز تتعامل مع VS فقط فهل من الممكن بنائها من جديد حتى أستطيع أن أتعامل معها من خلال MinGW أم عند بنائها سأجد مشاكل تمنعنى من فعل هذا ؟

4- لو قمت ببناء برنامج على النسخة التجارية بواسطة VS فهل هناك طريقة لتحويل المشروع لبناءة مرة أخرى تحت نظام اللينوكس و الأبل لأن فى النظامين الأخرين يتم التعامل مع GCC و هذا سبب سؤالى الثالث ؟

5- تحتوى المكتبة التجارية على مكتبة خاصة بالتعامل مع ActiveX و ذلك بالنسخة الخاصة بالوندوز فهل النسخة الخاصة باللينوكس و الأبل بها مكتبات أخرى تعويضية أستطيع من خلالها إدراج عناصر خارجية مثل مشغل الفلاش و الريال بلير أم يجب أن أتعامل معهما بنفسى ؟

6- هل هناك فروق أخرى بين النسختين ؟

7- السؤال المهم و الأهم وهو حد يعرف سعر الترخيص كام بالتحديد :D لأنى لم أجد السعر مذكور على الموقع ؟

ملحوظة:

حصلت على النسخة التجارية 4.4.0 بواسطة التورينت حتى أقوم بدراستها جيداً و معرفة الفروق قبل السعى فى الحصول على الترخيص لأن فترة 30 يوم ليست كافية.

اه فى ملحوظة تانية :

لسه عندى أسئلة كتييييير لأن الإنتقال بيبقى صعب شوية بس لسه مجاش دورها :D

forum-signature-01.gif
#2

مرحبا اخي asm-soft

اقتباس
1- هل هناك فرق بين الإثنان عند التعامل معهما فى كتابة السورس(لاحظت أن الشركة المصنعة تقول أن هناك صعوبة فى بناء البرنامج المبنى على النسخة المجانية بواسطة النسخة التجارية ) ؟

المفترض ان لا يكون هناك صعوبة ، لان النسخة Open Source هي نفسها النسخة التجارية .

الكود هو نفسه و الـ API نفسها ولا يوجد اي اختلاف .

الاختلاف فقط في مسالة ترخيص البرنامج ، وكذلك توفر بعض الادوات والـ Adds-ons ، وهذه هي الاختلافات كاملة مقتبسة من trolltech :

اقتباس

Access to support from Trolltech. Our highly responsive support service receives high approval ratings from our customers.

Access to Qt Solutions - customers may purchase access to Qt Solutions. Qt Solutions provides new components and tools to be used with the Qt framework in order to help our customers reduce development time even further.

Commercial compiler support - the tools shipped with the GPL version support the popular GNU CC compiler. The C++ compilers from Microsoft, Intel and Borland are not supported by the tools in the GPL version.

Binaries availability: Commercial Windows and Mac customers will have access to a package containing a prebuilt Qt library supporting commercial compilers such as Visual Studio .NET.

Commercial database drivers

http://trolltech.com/developer/knowledgebase/121/

لكن الشركة حذرت من عملية برمجة برنامج باستخدام النسخة Open Source ثم توزيعه كـ Commercial Product وذلك بعد شراء الترخيص :

http://trolltech.com/developer/knowledgebase/182/

+++++++++++++++++++++++++++++++++++++

اقتباس
2- المكتبة التجارية معها درايفر MySQL و لا أجدها مع النسخة المجانية علماً باننى وجدت ملفات CPP و H الخاصة بالدرايفر فى النسخة المجانية فهل يجب أن أبنيها من جديد حتى أحصل على المكتبة المجانية بدرايفر MySQL ؟

الداريفر ياتي مع النسخة Open Source في لينوكس ولا تحتاج لبنائه ، لكن مع ويندوز يجب ان تقوم ببنائه .

+++++++++++++++++++++++++++++++++++

اقتباس
3- لا حظت أن المكتبة التجارية الخاصة بالوندوز تتعامل مع VS فقط فهل من الممكن بنائها من جديد حتى أستطيع أن أتعامل معها من خلال MinGW أم عند بنائها سأجد مشاكل تمنعنى من فعل هذا ؟

تقريبا لا ،، النسخة التجارية تتعامل مع اغلب المترجمات ، وهذا ما ورد لديهم .

++++++++++++++++++++++++++++++++++

اقتباس
4- لو قمت ببناء برنامج على النسخة التجارية بواسطة VS فهل هناك طريقة لتحويل المشروع لبناءة مرة أخرى تحت نظام اللينوكس و الأبل لأن فى النظامين الأخرين يتم التعامل مع GCC و هذا سبب سؤالى الثالث ؟

لم افهم السؤال جيدا ، لكن Qt هي Cross Platform يعني ان المشروع سيعمل على كل الانظمة الا في حالة استخدام مكونات خاصة بالنظام .

المشروع سواءا برمجته على VS او gcc فانه سيعمل على المترجم الاخر بشكل طبيعي ، لانهما لا يتدخلان في Qt .

فقط هما يترجمان كود سي++ قياسي .

+++++++++++++++++++++++++++++++

اقتباس
5- تحتوى المكتبة التجارية على مكتبة خاصة بالتعامل مع ActiveX و ذلك بالنسخة الخاصة بالوندوز فهل النسخة الخاصة باللينوكس و الأبل بها مكتبات أخرى تعويضية أستطيع من خلالها إدراج عناصر خارجية مثل مشغل الفلاش و الريال بلير أم يجب أن أتعامل معهما بنفسى ؟

اعتقد يجب التعامل معها بنفسك :wink: ، لكن في لينوكس استطيع استخدام مثلا مشغل MPlayer عن طريق الفئةQProcess ، و تستطيع استخدام اي مكتبة تريدها مع Qt ، مثلا مكتبة لـ image processing او sound lib

او...الخ.

+++++++++++++++++++++++++++++

اقتباس
6- هل هناك فروق أخرى بين النسختين ؟

لا يوجد فروق اخرى. لكن مثلا لا يوجد درايفر لكل قواعد البيانات ، مثلا لا تستطيع استخدام oracle مع النسخة OpenSource.

+++++++++++++++++++++++++

اقتباس
7- السؤال المهم و الأهم وهو حد يعرف سعر الترخيص كام بالتحديد لأنى لم أجد السعر مذكور على الموقع ؟

السعر مرتفع قليلا ، لا يقل عن 2000 دولار :lol:

النسخة التجارية فيها 3 اصدارات ، وكل اصدار لديه سعر معين حسب استخدام معين ..

يوجد الاصدار Qt Console، و Qt Desktop Light و Qt Desktop

http://doc.trolltech.com/4.4/commercialeditions.html

طبعا الافضل هي Qt Desktop لانها تدعم كل الخصائص وهي تطابق النسخة Open Source

ولا ادري اين ذهبت صفحة السعر ! كانت هنا تقريبا ..

http://trolltech.com/products/qt/learnmore...pricing/pricing

وانا افضل انك تستخدم الـ Open Source كبداية ، وبعدها تشوف مشكلة ال 2000 و 3000 دولار .

رابط قد يفيد :

http://trolltech.com/developer/faqs/Licensing

وتقبل تحياتي ..

تم تعديل هذه المشاركة بواسطة SudaNix في 17 سبتمبر 2008 في 21:17

#4

هل احد منكم عنده فكره اذا كان ال Application لازم يكون Free

بمعنى عندما قرأت فى موقع ال Trolltech كان مطلب استخدام ال OpenSource Edition هو ان يكون البرنامج OpenSource فقط ولم يشطرطوا ان يكون Free فهل هذا الكلام صحيح أم خاطىء ؟

#5

@ ASDen : يجب أن يكون Free و مفتوح المصدر لأنهم قالو إذا كنت ناوى على إخراج برنامجك تجارياً يعنى بمقابل مادى فيجب شراء الترخيص و يمكنك بعدها إصدارة مغلق المصدر أو مفتوح المصدر و أنت حر فى الإختيار.

@ SudaNix : بخصوص السؤال الرابع فأقصد أن المشروع يتم إنشاءة على VS و هنا هتكون كل ملفاتة تخص VS فقد قمت بتصميم برنامج على VS ثم كنت أريد أن أترجمة بالـ GCC وفشل و هذا ليس بسبب الكود الخاص بى و لكن بسبب أن مترجم VS ليس مثل GCC فمترجم GCC قياسى إلى حد ما عن مترجم VS (و هذا ما أعتقدة) و لهذا قمت بتعديل ملفات كثيرة و سؤالى حول وجود أدوات مخصصة تعمل على تحويل و تهيئة المشروع من VS إلى تهيئة تصلح لـ GCC أم لا فإذا لم يوجد أدوات فسأستخدم GCC على الوندوز أيضاً .

تم تعديل هذه المشاركة بواسطة asm-soft في 18 سبتمبر 2008 في 01:54

forum-signature-01.gif
#6

@asm : راجع مصدر الاخ عمر جيدا ستجد انهم يقولون يجب ان يتم طرحة لل Open Source Community للاستفاده العامة وشوية طلبات منها ان ال Source Available on demand to Trolltech وتكون ال License من ال GPL Compatables واعتقد ان هذا كله لا يمنع ان البرنامج نفسة - وليس ال Source - مش Free وانما بمقابل مادى ... ولا اية ؟

#7

@ ASDen : بخصوص هذا الموضوع فيجب مراجعة ترخيص GPL حتى نعرف هل صانع البرنامج من حقة بيعة أم لا فكل إللى أعرفة إن ترخيص GPL يمنعك من بيع برنامج حصلت عليه تحت هذا الترخيص و لكنهم قالو يجب عدم إستخدام أجزاء من مكتباتنا فى صناعة برنامج تجارى .

شكلك كده عاوز تشتغل محامى Open Source :D

نسيت حاجة و هى خاصة بترخيص GPL فهذا الترخيص يمنعك من إنتاج برنامج تجارى على مكتبة تعمل تحت هذا الترخيص و لذلك GNU تنصح بعدم إخراج المكتبات تحت ترخيص LGPL

forum-signature-01.gif
#8
اقتباس
@ SudaNix : بخصوص السؤال الرابع فأقصد أن المشروع يتم إنشاءة على VS و هنا هتكون كل ملفاتة تخص VS فقد قمت بتصميم برنامج على VS ثم كنت أريد أن أترجمة بالـ GCC وفشل و هذا ليس بسبب الكود الخاص بى و لكن بسبب أن مترجم VS ليس مثل GCC فمترجم GCC قياسى إلى حد ما عن مترجم VS (و هذا ما أعتقدة) و لهذا قمت بتعديل ملفات كثيرة و سؤالى حول وجود أدوات مخصصة تعمل على تحويل و تهيئة المشروع من VS إلى تهيئة تصلح لـ GCC أم لا فإذا لم يوجد أدوات فسأستخدم GCC على الوندوز أيضاً .

اخى asm-soft @

فى Qt انت تترجم المشروع بوضع كل ملفات المشروع فى مجلد واحد ثم تكتب

C:\MyFolder > qmake -project

C:\MyFolder >qmake MyFolder

C:\MyFolder > make

هناك طرق اسهل لعمل compile من واجهة مرئية عن طريق بيئتى QDevelop و Eclipse

دليل تنصيب اطار عمل Qt ، حزمة MinGW ، بيئة التطوير Eclipse

دليل تنصيب اطار عمل Qt ، حزمة MinGW ، بيئة التطوير QDevelop

تم تعديل هذه المشاركة بواسطة Omar Eladel في 18 سبتمبر 2008 في 02:20

#9

@ Omar Eladel : بالفعل أعرف طريقة الترجمة لأنها أول حاجة مذكورة فى الكتب و لكن هل هى نفس الطريقة المستخدمة مع VS لأن الكتب مذكور فيها التعامل مع MinGW فقط.

و شكراً على مساهمتك :)

تم تعديل هذه المشاركة بواسطة asm-soft في 18 سبتمبر 2008 في 02:36

forum-signature-01.gif
#10

If you are using Microsoft Visual C++ with a commercial version of Qt, you will need to run nmake instead of make. Alternatively, you can create a Visual Studio project file from hello.pro by typing

qmake -tp vc hello.pro

هذا من كتاب C++ GUI Programming with Qt 4, Second Edition

هل هذا ما تقصده ؟؟

تم تعديل هذه المشاركة بواسطة Omar Eladel في 18 سبتمبر 2008 في 02:44

#11

هذا من ضمن ما أقصدة و هناك أشياء أخرى فمثلاً namespace ليس مدعم فى GCC على حد علمى فكنت أستخدمة فى برنامج لى و عند محاولة ترجمتة على GCC فشل بسبب namespace

تم تعديل هذه المشاركة بواسطة asm-soft في 18 سبتمبر 2008 في 03:08

forum-signature-01.gif
#12

اهلا اخواني ..

ASDen::

اقتباس
هل احد منكم عنده فكره اذا كان ال Application لازم يكون Free

بمعنى عندما قرأت فى موقع ال Trolltech كان مطلب استخدام ال OpenSource Edition هو ان يكون البرنامج OpenSource فقط ولم يشطرطوا ان يكون Free فهل هذا الكلام صحيح أم خاطىء ؟

تستطيع ان تستخدم النسخة Open Source وتبيع برنامج Hello World بالسعر الذي تحلم به .

لكن الشرط الوحيد هو توفر ال Source Code كاملا.

رخصة GPL عندما تتكلم عن Free فهي تقصد الحرية "توزيع البرنامج واعادة توزيعه ، قرائة الكود ، حرية التعديل...الخ" ، ولك الحق في ان تبيع برامجك المرخصة تحتها بالسعر الذي تشاء .

asm-soft::

اقتباس
@ ASDen : يجب أن يكون Free و مفتوح المصدر لأنهم قالو إذا كنت ناوى على إخراج برنامجك تجارياً يعنى بمقابل مادى فيجب شراء الترخيص و يمكنك بعدها إصدارة مغلق المصدر أو مفتوح المصدر و أنت حر فى الإختيار.

المقصود هنا ببرنامج تجاري هو الذي عليه حقوق معينة .

عندما تشتري الترخيص ، فانك تستطيع عمل برامج مغلقة او مفتوحة المصدر او باي رخصة تحددها انت.

وفي كلا الحالتين "سواءا تملك ترخيص او لا" فانك تستطيع ان تبيع برامجك للزبائن على حسب ما تريد.

اقتباس
@ SudaNix : بخصوص السؤال الرابع فأقصد أن المشروع يتم إنشاءة على VS و هنا هتكون كل ملفاتة تخص VS فقد قمت بتصميم برنامج على VS ثم كنت أريد أن أترجمة بالـ GCC وفشل و هذا ليس بسبب الكود الخاص بى و لكن بسبب أن مترجم VS ليس مثل GCC فمترجم GCC قياسى إلى حد ما عن مترجم VS (و هذا ما أعتقدة) و لهذا قمت بتعديل ملفات كثيرة و سؤالى حول وجود أدوات مخصصة تعمل على تحويل و تهيئة المشروع من VS إلى تهيئة تصلح لـ GCC أم لا فإذا لم يوجد أدوات فسأستخدم GCC على الوندوز أيضاً

بالنسبة لفيجوال سي ، فمشكلتك هذه بسبب انه يتهاون بالمقاييس ، يعني مثلا تستطيع تعريف متغير i داخل حلقة ما وتستخدمه خارجها ، وهنا سيصدر خطأ في حالة ترجمة البرنامج بـ gcc .

هذه الاخطاء "الطفيفة" حلها يكون بكتابة البرامج بطرق اكثر قياسية.

ولا اذكر ان كان يوجد اختلافات اخرى بين المترجمين ، لكن ان شاء الله لن تواجه مشاكل من هذه الناحية.

اقتباس
نسيت حاجة و هى خاصة بترخيص GPL فهذا الترخيص يمنعك من إنتاج برنامج تجارى على مكتبة تعمل تحت هذا الترخيص و لذلك GNU تنصح بعدم إخراج المكتبات تحت ترخيص LGPL

كما ذكرت في الاعلى ، GPL تمنعك من كتابة برنامج مغلق المصدر فقط ، ولا دخل لها بالمادة $$ .

حاليا ممكن ناخذ مترجم gcc نغير كم سطر فيه "مع حفظ الحقوق للكاتب" ونقوم ببيع البرنامج "مع الكود" في عرب تيم :wink:

اقتباس
هذا من ضمن ما أقصدة و هناك أشياء أخرى فمثلاً namespace ليس مدعم فى GCC على حد علمى فكنت أستخدمة فى برنامج لى و عند محاولة ترجمتة على GCC فشل بسبب namespace

يمكن تكون هذه نسخة قديمة ، او لديك مشكلة في المترجم نفسه ،، مترجم gcc هو الاكثر التزاما بمقاييس سي++.

ويدعم ال namespace و STL و...كله .

++++++++++++++++++++

وبالنسبة لترجمة البرنامج بفيجوال سي ، فحاليا يوجد Integration من ترولتك للمترجم ، يعني الترجمة حتتم من الفيجوال نفسه ، وبرنامج الـ Designer ايضا حتستخدمه من داخل الفيجوال ، وايضا تتوفر ميزات مثل التلوين والازاحة التلقائية والاكمال و...الخ.

ولكن هذا ال Integration فقط للناس المرخصة . :blush:

لكن قبل سنة تقريبا ، استطعت استخدام VC لترجمة برامج Qt بشكل عادي جدا،، والترجمة كانت بنفس الطريقة التي ذكرها اخي عمر :

qmake -project

qmake

nmake

لكن لم استطع استخدام الفيجوال سي كـ IDE ، يعني كنت اكتب البرنامج في المفكرة ، واترجم من cmd ، واستخدم الامر namke لترجمة البرامج.

وفي الحقيقة تستطيع استخدام اي مترجم ، حتى بورلاند العتيق :) ، لكن الامر ليس سهلا ، حيث يتطلب اعادة ترجمة Qt من المصدر وتهئيتها للمترجم الذي تريده ، ايضا يجب عمل بعض الاعدادت في المترجم نفسه "تقريبا" .

لذا لو بحثت على النت ، قد تجد ملفات patch تساعدك على استخدام Qt مع بورلاند او فيجوال سي ، لكن لن تستفيد منها شيء لانك في الاخر ستترجم برنامجك عبر ال cmd .

ولو اردت استخدام بيئة مناسبة ، ف Eclipse رائع جدا ، ويوجد Integration رسمي له من ترولتك ، يعني ممكن نعتبره البيئة الرسمية لمطوري Qt Open Source edition

وايضا يوجد QDevelop و Code::Block والكثير ايضا ، وكلها تشترك في انها تستخدم الحزمة MinGW .

وتحياتي للجميع.

مواضيع مشابهة

عدد الزوار حالياً

المتواجدون خلال آخر دقيقتين · يتحدّث كل ٣٠ ثانية

—الإجمالي—أعضاء مسجّلون—زوار بدون تسجيل

جارٍ التحقق من المتواجدين…