Difference between revisions of "He/תלויות"

From GnuCash
Jump to: navigation, search
(כללי)
(GnuCash Library Dependency Policy)
Line 20: Line 20:
 
למידע מפורט אודות בניית גנוקאש ראו  [[He/בניה |בניה]].
 
למידע מפורט אודות בניית גנוקאש ראו  [[He/בניה |בניה]].
  
== GnuCash Library Dependency Policy ==  
+
== מדיניות גנוקאש לתלויות בספריות ==  
  
GnuCash desires to only depend on library versions and packages that are
+
גנוקאש מעוניינת להיות תלויה רק בגרסאות הספרייה ובחבילות זמינות למעשה. באופן ספציפי, אנו בוחרים להיות תלויים רק בגרסאות שנמצאים בהפצות העקריות לפחות במשך 6 חודשים. המניע לכך נובע בחלקו ממהדורת 1.6, שדרשה ערכה גדולה  של תלויות עדכניות יחסית. במיוחד משום שלרוב המשתמשים (ההפצות) לא היו את הגרסאות הנדרשות ארוזות בהפצה שלהם, מצב די לא נוח ומכאיב שדורש משתמשי הקצה לשדרג למהדורה הצפויה. אי נוחות שהובילה למוניטין (לא חיובי) שגנוקאש עדיין מתמודדת איתו.
practically available. Specifically, we choose to depend only on versions
 
that have been in the major distributions for 6 months. This is motivated in
 
part by the 1.6 release, which required a large set of relatively-recent
 
dependencies. Specifically, as most user's (distributions) did not have the
 
required versions packaged, it was exceedingly painful for end users to
 
upgrade to the anticipated release, leading to a reputation that gnucash
 
still has.
 
  
 
<!--This document serves to keep track of the major distributions, the date of
 
<!--This document serves to keep track of the major distributions, the date of

Revision as of 14:17, 19 March 2021

שפות אנגלית גרמנית ספרדית עִברִית פורטוגזית צרפתית

כללי

עמוד זה נועד לרכז מידע על תלויות ובנית ספריות שונות הדרושים לבנית גנוקאש ונגזרותיה. המטרה היא לספק מקור דינמי יותר מזה המופיע ב- maint/README.dependencies/master/README.dependencies.

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

מדיניות גנוקאש לתלויות בספריות

גנוקאש מעוניינת להיות תלויה רק בגרסאות הספרייה ובחבילות זמינות למעשה. באופן ספציפי, אנו בוחרים להיות תלויים רק בגרסאות שנמצאים בהפצות העקריות לפחות במשך 6 חודשים. המניע לכך נובע בחלקו ממהדורת 1.6, שדרשה ערכה גדולה של תלויות עדכניות יחסית. במיוחד משום שלרוב המשתמשים (ההפצות) לא היו את הגרסאות הנדרשות ארוזות בהפצה שלהם, מצב די לא נוח ומכאיב שדורש משתמשי הקצה לשדרג למהדורה הצפויה. אי נוחות שהובילה למוניטין (לא חיובי) שגנוקאש עדיין מתמודדת איתו.


ספריות/תלויות

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

טבלת שינויי תלויות החל מגרסת גנוקאש 2.4.0
גרסת גנוקאש
ספריה נדרשת 2.4.0 2.4.1 2.5.8 2.6.2 3.0 3.1 3.5 3.9
gconf2 נדרש נדרש
glib2 ≥ 2.6.0 ≥ 2.6.4 ≥ 2.28.0 ≥ 2.28.0 ≥ 2.40.0 ≥ 2.40.0 ≥ 2.40.0
(2.46.0 עדיף)
≥ 2.56.1
gtk2 ≥ 2.6.0 ≥ 2.6.0 ≥ 2.24.0 ≥ 2.24.0
gtk3 ≥ 3.14.0 ≥ 3.14.0 ≥ 3.14.0 ≥ 3.22.30
guile 1.6.4 1.6.4 1.8.5 or
2.0.0
1.8.5 or
2.0.0
1.8.5 or
2.0.0
2.2.0 or
2.0.0
2.2.0 or
2.0.0
2.2.0 or
2.0.9
libgnomecanvas 2.0 2.0
libart2 ≥ 2.3.11 ≥ 2.3.11
libglade2 ≥ 2.3.6 ≥ 2.3.6
libgnomeprint2.2 ≥ 2.8.2 ≥ 2.8.2
libgnomeui2 ≥ 2.0.0 ≥ 2.0.0
libgoffice ≥ 0.4.0 ≥ 0.4.0 ≥ 0.7.0 ≥ 0.7.0
libgsf1 ≥ 1.12.2 ≥ 1.12.2
libxml2 ≥ 2.4.12 ≥ 2.4.12 ≥ 2.5.10 ≥ 2.5.10 ≥ 2.5.10 ≥ 2.5.10 ≥ 2.5.10 ≥ 2.9.4
gettext ≥ 0.19.6 [1][2] ≥ 0.20
libxslt נדרש נדרש נדרש נדרש
ICU נדרש נדרש נדרש נדרש
boost ≥ 1.50.0 ≥ 1.50.0 ≥ 1.53.0 ≥ 1.67.0
pango ≥ 1.8.1 ≥ 1.8.1
swig [3] ≥ 1.6.7 ≥ 1.6.7 ≥ 2.0.10 ≥ 2.0.10 ≥ 2.0.10 ≥ 2.0.10 ≥ 2.0.10 ≥ 3.0.12
libgtkhtml3 אחד מאלה אחד מאלה
webkit אחד מאלה אחד מאלה 1.0 1.0 2.4.1 (2.4.11 וינדוס)
webkit2gtk3.0 / webkitgtk-3.0(וינדוס) נדרש נדרש נדרש נדרש
googletest/gtest/gmock 1.7.0 ≥ 1.7.0 ≥ 1.8.0
zlib ≥ 2.1.1
ספריות לרכיבים אופציונאליים
ייבוא ובנקאות מקוונת
aqbanking נדרש נדרש 4.0.0 - 5.7.8 4.0.0 - 5.7.8 4.0.0 - 5.7.8 4.0.0 - 5.7.8 5.3.5 5.7.8
gwenhywfar נדרש נדרש נדרש נדרש נדרש נדרש נדרש ≥ 4.20.0
ktoblzcheck נדרש נדרש נדרש נדרש נדרש נדרש
תמיכה במסדי נתונים
libdbi נדרש + נדרש + 0.8.3 + 0.8.3 + 0.8.3 + 0.8.3 + 0.8.3 + 0.8.3 +
libdbd-mysql [4] אחד מאלה אחד מאלה אחד מאלה אחד מאלה אחד מאלה אחד מאלה אחד מאלה אחד מאלה
libdbd-pgsql [4] אחד מאלה אחד מאלה אחד מאלה אחד מאלה אחד מאלה אחד מאלה אחד מאלה אחד מאלה
libdbd-sqlite3 [4] אחד מאלה אחד מאלה אחד מאלה אחד מאלה אחד מאלה אחד מאלה אחד מאלה אחד מאלה
ייבוא קובצי OFX
libofx R R 0.9.0 0.9.0 0.9.0 0.9.0 0.9.0 0.9.12
אוגדני פייטון
python R 2.4.0 2.4.0 2.4.0 2.4.0 ≥ 3.2.0 ≥ 3.6.0
ספריות זמן ריצה
isocodes ממולץ ממולץ ממולץ ממולץ ממולץ ממולץ ממולץ ממולץ
gsettings[5] Linux: dconf/Windows: registry/MacOSX: plists נדרש נדרש נדרש נדרש נדרש
ספריות אחרות,
cairo ≥ 0.5.0 ≥ 0.5.0
libsecret 0.18
gtk-mac-integration (MacOS only)
makeinfo נדרש נדרש נדרש
doxygen נדרש נדרש

הערות

  1. ≥ 0.20 since 3.9
  2. ניתן למעקף על ידיד "cmake ... -DALLOW_OLD_GETTEXT=ON"
  3. swig נדרש רק במקרה שקוד המקור התקבל מגיט, לא נדרש עם קוד המקור מ- tarballs.
  4. 4.0 4.1 4.2 בפדורה ספריות אלה נקראות libdbi-dbd-mysql, libdbi-dbd-postgresql, libdbi-dbd-sqlite
  5. Global preferences storage. Note that the osx and windows backends are built-in in gio for their respective platforms. On linux and similar systems, the dconf package should be installed.

חיפוש גרסאות חבילה לפי הפצנ

.deb based
debian
ubuntu
.rpm based
Fedora / RHEL / CentOS / EPEL
opensuse

מה עושים אם ספריות או תלויות לא קיימות עבור ההפצה שלי?

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

For example, OpenSuSE is believed at the time of writing to not provide GoogleTest. That happens to be the simplest of all because GnuCash only needs the sources, which can be cloned from [Github]. Just put it somewhere convenient and add

 -DGTEST_ROOT=/path/to/googletest/googletest
 -DGMOCK_ROOT=/path/to/googletest/googlemock

to your CMake arguments when building GnuCash.

In other cases you may have a dependency but not at the required version. First look at the available repositories for your distro's package manager. For Debian based distros there's [GetDeb], for RPM based ones try [RPMFind]. Failing that you may have to download and build the dependency from source. If it's a system dependency as well, for example glib or gtk+, you'll want to install it into a prefix not on the built-in search paths and then add the prefix to PKG_CONFIG_PATH and the library path to LD_LIBRARY_PATH so that CMake and GnuCash can find the updated versions.

חזרה לעמוד:

Installing Dependencies

Building On Linux

בניית גנוקאש