21-11-2015, 17:37
|
|
|
|
חבר מתאריך: 25.04.11
הודעות: 9,931
|
|
CRT = C Run Time library
אני יכול לנסות לעשות לך סדר...
אני לא לגמרי מכיר איך כל השמחה הזאת עובדת עד הסוף, אבל בוא ננסה...
ואני רוצה להזהיר אותך שלהתעסק עם הדברים האלה יותר מידיי באגרסיביות עלול להכניס אותך לכאב ראש רציני...
פה אולי יהיה הסבר יותר טוב:
http://siomsystems.com/mixing-visual-studio-versions/
https://msdn.microsoft.com/en-us/library/abx4dbyh(v=vs.140).aspx
בגדול כשאתה בונה אפליקציה ב C או ב CPP יש כל מיני ספריות שאתה משתמש בהן (לדוגמה stdio בC , או iostream ) הסיפריות האלה צריכות להיות ממומשות איכשהו. המימוש של כל זה הוא לא פשוט, הוא צריך להיות מאוד יעיל, להתאים לאינסוף מקרים, להתאים לפלטפורמות ומערכות הפעלה שונות (windows phone, windows rt, 64, 32 , וכו), והרבה פעמים הוא תלוי במלא דברים ממערכת ההפעלה. מעבר למימוש, יש כל מיני דברים שאתה צריך בשביל שיהיה לך יותר קל לדבג עם הספריות האלה. ויש גם איזה הוקוס פוקוס של לטעון את הגרסה הנכונה של הספריה, לפי מערכת הפעלה וכאלה.
בלינק השני (MSDN) יש הסבר איך אפשר ללנקנג' (זה לא קומפילציה) את הספריות האלה לאפליקציה שלך. אפשר לטעון הכל דינאמית בעליה לפי מה שיש על המחשב בפועל, או לבקש מהVS שישפוך את כל מה שאפשר סטטית לתוך האפליקציה שלך. האפשרות של קימפול סטטי היא יותר פשוטה לכאורה, אבל בתכלס מובילה ליותר בעיות בתוכנות אמיתיות (שמיועדות לפרודקשן)
בגדול השגיאה שאתה מקבל, אומרת שחסרה לך הגרסה של הספריות של CPP שהEXE שאתה מנסה להריץ נבנה מולן. גם אם אפשר לפתור את זה בדרך אחרת, להתקין VS 2015 זה הפתרון הכי טוב. הוא יתקין את כל מה שצריך. לפעמים הDLLים האלה תלויים באחרים וכו' וכד'....
אחרי שתתקין VS2015, כדאי שתעביר את הפרוייקט לשם, ותוודא שהפרוייקט שלך כולו עובד מול הספריות החדשות...
|