האם אפשרי לגרום לסקריפט שנכתב בפרל לעבוד ללא פרל קומפלייר יעודי בווינדוס? - תכנות - HWzone פורומים
עבור לתוכן
  • צור חשבון

האם אפשרי לגרום לסקריפט שנכתב בפרל לעבוד ללא פרל קומפלייר יעודי בווינדוס?


DXM

Recommended Posts

שלום,

יש לי סקריפט פרל שכתבתי במיוחד עבור מספר אנשים. אני רוצה לגרום לסקריפט לעבוד ללא קומפלייר כלשהו של פרל, אלא ממש על .

כמו שVBS עובד או כל תוכנה אחרת כך שלא צריך להתקין אותה...

האם ישנה איזו שהיא דרך לבצע זאת?

קישור לתוכן
שתף באתרים אחרים

קודם כל זה לא קומפיילר, זה interpeter, וזה הבדל חשוב (:

אפשר לדמות את הסקריפט ל"הוראות", שכמובן לא שוות כלום בלי מישהו שיריץ אותן. אפשר להכניס חלק מה"מנוע" לקובץ ולקבל את מה שאתה רוצה. אני לא יודע מה המונח המקצועי לזה ב-perl אבל בפייתון קוראים לזה "Frozen Binaries" - במובן של "להקפיא" את הסקריפט.

אז חיפוש מהיר בגוגל מצא אחד- http://www.indigostar.com/perl2exe.php.

ד"א, הסיבה שקבצי vbs רצים אוטומטית כשמפעילים אותם זה כי יש להם interpeter מובנה. גם במחשבים עם perl אפשר לגרום להתנהגות כזאת כשעושים דאבל-קליק על קבצי pl.

קישור לתוכן
שתף באתרים אחרים

בנוגע לאינטרפטר צודק, השעה קצת השפיעה עליי.

בכל מקרה אני בד"כ כותב סקריפטים בפרל ללינוקס/יוניקס אז אין לי בעיה...

אני לא יודע למה אבל הלינק לא עובד לי...

קישור לתוכן
שתף באתרים אחרים

גם התכנית שמתקבלת מ- perl2exe צריכה את הruntime של פרל על מנת לרוץ.

האפשרויות שלך:

1. לכתוב את התכנית בשפה מקומפלת ולשלוח להם EXE

2. לתרגם את התכנית לשפה שיש לה אינטרפרטר מובנה בחלונות

3. לבקש מהם להתקין פרל (עם הפנייה לגירסה מדוייקת שאיתה תבדוק)

4. לספק יחד עם הסקריפט שלך, runtime הכרחי של פרל שנחוץ להרצתו

אני הייתי בוחר בשלישית, זו התקנה חד פעמית ואח"כ תוכל להריץ בלי כאבי ראש

קישור לתוכן
שתף באתרים אחרים

http://www.linuxjournal.com/article/2901

זה מדריך לגבי embedding כלומר יצירת קובץ עם אינטרפטר מובנה.

יתכן זה ישקול יותר אבל אין לו דרישות קדם.

רק חלק מהמדריך רלוונטי מכיוון שהוא מנסה לשלב שני תוכנות(את האינטרפטר טספריה ליצירת קבצי אקסל).

בנוסף:

http://www.ibm.com/developerworks/linux/tutorials/l-perlscript/index.html

עוד מדריך שמסביר איך זה עובד.

קישור לתוכן
שתף באתרים אחרים

http://www.linuxjournal.com/article/2901

זה מדריך לגבי embedding כלומר יצירת קובץ עם אינטרפטר מובנה.

יתכן זה ישקול יותר אבל אין לו דרישות קדם.

רק חלק מהמדריך רלוונטי מכיוון שהוא מנסה לשלב שני תוכנות(את האינטרפטר טספריה ליצירת קבצי אקסל).

בנוסף:

http://www.ibm.com/developerworks/linux/tutorials/l-perlscript/index.html

עוד מדריך שמסביר איך זה עובד.

גם אם מכניסים את הקריאות לפרל (לפונקציות פרל) מתוך תכנית C או ++C התכנית תצטרך התקנה מלאה של הRUNTIME של פרל (ספריות, DLL-ים בחלונות, מודולים וכו'). הפתרון סובל בדיוק מאותן בעיות של perl2exe כי התכנית הסופית לא תוכל לרוץ עצמאית לגמרי (אלא אם בנו את פרל באופן סטטי והתכנית ביצעה LINK עם ספריות סטטיות של פרל. עדיין נצטרך מודולים של פרל על מנת לעבוד)

מאחר שפרל איננו מובנה בחלונות, אין ברירה, תצטרך להתקין פרל במכונות שעליהן תרצה להריץ את התכנית (או להתקין ברשת משותפת אבל שכל המכונות יבצעו מיפוי למקום של פרל ויעדכנו את הPATH)

אם התקנה של פרל איננה אופציה, תצטרך לכתוב את התכנית שלך בשפה מקומפלת, או במשהו שמובנה בחלונות (VBS BATCH וכו')

קישור לתוכן
שתף באתרים אחרים

ארכיון

דיון זה הועבר לארכיון ולא ניתן להוסיף בו תגובות חדשות.

×
  • צור חדש...