چگونه کدهای مربوط به ورژن های قدیمی کیوت را در ورژن جدیدتر اجرا کنیم



  • سلام.تو سایت
    qt-app
    پر از برنامه های جالب هست.اما متاسفانه خیلی از اون ها با ورژن های قدیمی نوشته شده.و هنگام کامپایل مدام گیر میده که این تابع در این ورژن جدید تعریف نشده.و در واقع منقرض شده.موضوع اینجاست که برای رفع این مسئله چه کار کنم؟چون به هر حال هر ورژن جدیدی که میاد نباید از ورژن پیشین کم و کاستی داشته باشه.اما نمیدونم با توابعی که در ورژن جدید تعریف نشده چی کار کنم.چه طوری جایگزین کنم.کل سوالم اینه که چه طور بیام برنامه هایی رو که با ورژن ها وتوابع قدیمی نوشته شده رو در ورژن جدیدتر کیوت اپدیت کنم.ایا راهی نیست که در خود کیوت این کار اتوماتیک انجام بشه؟یا باید بشینیم دونه دونه توابع رو جایگزین کنیم.واگر قراره دونه دونه این کار رو بکنیم ایا لااقل تو داکیومنت کیوت ذکر کرده که جای توابع منقرض شده چه چیز جایگزین شده؟ممنون



  • p{direction:rtl;text-align:right}. خوشبختانه کیوت از متد binary compatibility پیروی میکنه. بطور مثال اگر برنامه ای با کیوت 4.0.0 کامپایل شده باشه، استفاده از لایبرری های 4.8.4 هیچگونه مشکلی ایجاد نمیکنه. ولی اگر برنامه ای با کیوت 4 نوشته شده باشه و با کیوت 5 بخواد استفاده بشه، تضمینی توی اجرا شدنش نیست. یعنی با هر تغییر نسخه Major، باینری کامپیتبیلیتی شکسته میشود.



  • محسن جان یعنی روشی نداریم که پروفایل کامپیال رو به ورژن خاصی تغییر بدیم
    حالا بالاخص تو ویندوز با ویژوال استدیو
    چون به خاطر دارم سوالاتی راجع به نگارش کیوتی سوال میشه



  • p{direction:rtl;text-align:right}. چرا پروفایل کامپایل همیشه قابل تغییره. ولی شاید وقتی یک برنامه ای که با کیوت 4 نوشته شده باشه رو بخواید با کیوت 5 کامپایل کنید، بعضی از header ها پیدا نشن. یا بدلیل تغییر اسم یا absolute شدن و یا تغییر کاربرد.



  • مرسی محسن جان
    من مدتیه رو یک پروژه مترکز شدم که خوب بخاطر دارا بودن رابط کاربری و لزوم استفاده از زبان سی پلاس پلاس و همچنین زمان کم ملزم به این شدم که از کیوتی استفاده کنم.
    البته نسخه سی شارپ این برنامه فوق العاده پر دردسر رو نوشتم خودم و اماده دارم بیشتر درگیر تبدیلشم چون توش هم محاسبات پیچیده ریاضی هست مثه اف اف تی هم استفاده از جی پی یو و هم اسنیف کردن شبکه و هم....

    الان که دارم از نسخه 5 و خورده ای استفاده میکنم مثلا 6 بیاد دیگه نمیتونم برم رو 6 نه؟

    و اینکه اگه میشه یه راه ارتباطی مستقیم ازت میخواستم بابت همکاری
    مرسی



  • [quote author="a.jafarabadi" date="1411726400"]
    الان که دارم از نسخه 5 و خورده ای استفاده میکنم مثلا 6 بیاد دیگه نمیتونم برم رو 6 نه؟
    [/quote]

    p{direction:rtl;text-align:right}. از نظر سورس، چرا. این امکان همیشه وجود داره و developer ها تغییرات اساسی ایجاد شده رو معرفی میکنند و برای مهاجرت به نسخه جدید داکیومنت ارائه میدن.
    http://qt-project.org/wiki/Transition_from_Qt_4.x_to_Qt5

    p{direction:rtl;text-align:right}. اگر بخواید از لایبرری های نسخه 6 برای یک برنامه که با کیوت 5 کامپایل شده باشه استفاده کنید، خیر. سورس باید با header های کیوت 6 کامپایل بشه.


Log in to reply
 

Looks like your connection to Qt Forum was lost, please wait while we try to reconnect.