Users Guide

Once t hi s change i s made i n a gi ven copy, i t i s i r r ever si bl e f or t hat copy, so t he or di nar y GNU Gener al
Publ i c Li cense appl i es t o al l subsequent copi es and der i vat i ve wor ks made f r om t hat copy.
Thi s opt i on i s usef ul when you wi sh t o copy par t of t he code of t he Li br ar y i nt o a pr ogr am t hat i s not a
l i br ar y.
4. You may copy and di st r i but e t he Li br ar y ( or a por t i on or der i vat i ve of i t , under Sect i on 2) i n obj ect code
or execut abl e f or m under t he t er ms of Sect i ons 1 and 2 above pr ovi ded t hat you accompany i t wi t h t he compl et e
cor respondi ng machi ne- readabl e sour ce code, whi ch must be di st r i but ed under t he t er ms of Sect i ons 1 and 2
above on a medi um cust omar i l y used f or sof t war e i nt er change.
I f di st r i but i on of obj ect code i s made by of f er i ng access t o copy f r om a desi gnat ed pl ace, t hen of f er i ng
equi val ent access t o copy t he sour ce code f r om t he same pl ace sat i sf i es t he r equi r ement t o di st r i but e t he
sour ce code, even t hough t hi r d par t i es ar e not compel l ed t o copy t he sour ce al ong wi t h t he obj ect code.
5. A pr ogr am t hat cont ai ns no der i vat i ve of any por t i on of t he Li br ar y, but i s desi gned t o wor k wi t h t he
Li br ar y by bei ng compi l ed or l i nked wi t h i t , i s cal l ed a "wor k t hat uses t he Li br ar y". Such a wor k, i n
i sol at i on, i s not a der i vat i ve wor k of t he Li br ar y, and t her ef or e f al l s out si de t he scope of t hi s Li cense.
However , l i nki ng a "wor k t hat uses t he Li br ar y" wi t h t he Li br ar y cr eat es an execut abl e t hat i s a der i vat i ve
of t he Li br ar y (because i t cont ai ns por t i ons of t he Li br ar y), r at her t han a "wor k t hat uses t he l i br ar y". The
execut abl e i s t her ef or e cover ed by t hi s Li cense. Sect i on 6 st at es t er ms f or di st r i but i on of such execut abl es.
When a "wor k t hat uses t he Li br ar y" uses mat er i al f r om a header f i l e t hat i s par t of t he Li br ar y, t he obj ect
code f or t he wor k may be a der i vat i ve wor k of t he Li br ar y even t hough t he sour ce code i s not . Whet her t hi s i s
t r ue i s especi al l y si gni f i cant i f t he wor k can be l i nked wi t hout t he Li br ar y, or i f t he wor k i s i t sel f a
l i br ar y. The t hr eshol d f or t hi s t o be t r ue i s not pr eci sel y def i ned by l aw.
I f such an obj ect f i l e uses onl y numer i cal par amet er s, dat a st r uct ur e l ayout s and accessor s, and smal l macr os
and smal l i nl i ne f unct i ons ( t en l i nes or l ess i n l engt h) , t hen t he use of t he obj ect f i l e i s unr est r i ct ed,
r egar dl ess of whet her i t i s l egal l y a der i vat i ve wor k. (Execut abl es cont ai ni ng t hi s obj ect code pl us por t i ons
of t he Li br ar y wi l l st i l l f al l under Sect i on 6. )
Ot her wi se, i f t he wor k i s a der i vat i ve of t he Li br ar y, you may di st r i but e t he obj ect code f or t he wor k under
t he t er ms of Sect i on 6. Any execut abl es cont ai ni ng t hat wor k al so f al l under Sect i on 6, whet her or not t hey
ar e l i nked di r ect l y wi t h t he Li br ar y i t sel f .
6. As an except i on t o t he Sect i ons above, you may al so combi ne or l i nk a " wor k t hat uses t he Li br ar y" wi t h
t he Li br ar y t o pr oduce a wor k cont ai ni ng por t i ons of t he Li br ar y, and di st r i but e t hat wor k under t er ms of
your choi ce, pr ovi ded t hat t he t er ms per mi t modi f i cat i on of t he wor k f or t he cust omer ' s own use and r ever se
engi neer i ng f or debuggi ng such modi f i cat i ons.
You must gi ve pr omi nent not i ce wi t h each copy of t he wor k t hat t he Li br ar y i s used i n i t and t hat t he Li br ar y
and i t s use ar e cover ed by t hi s Li cense. You must suppl y a copy of t hi s Li cense. I f t he wor k dur i ng execut i on
di spl ays copyr i ght not i ces, you must i ncl ude t he copyr i ght not i ce f or t he Li br ar y among t hem, as wel l as a
r ef er ence di r ect i ng t he user t o t he copy of t hi s Li cense. Al so, you must do one of t hese t hi ngs:
a. Accompany t he wor k wi t h t he compl et e cor r espondi ng machi ne- readabl e sour ce code f or t he Li br ar y i ncl udi ng
what ever changes wer e used i n t he wor k ( whi ch must be di st r i but ed under Sect i ons 1 and 2 above) ; and, i f t he
wor k i s an execut abl e l i nked wi t h t he Li br ar y, wi t h t he compl et e machi ne- readabl e "wor k t hat uses t he
Li br ar y" , as obj ect code and/ or sour ce code, so t hat t he user can modi f y t he Li br ar y and t hen r el i nk t o
pr oduce a modi f i ed execut abl e cont ai ni ng t he modi f i ed Li br ar y. ( I t i s under st ood t hat t he user who changes
t he cont ent s of def i ni t i ons f i l es i n t he Li br ar y wi l l not necessar i l y be abl e t o r ecompi l e t he appl i cat i on t o
use t he modi f i ed def i ni t i ons. )
b. Use a sui t abl e shar ed l i br ar y mechani sm f or l i nki ng wi t h t he Li br ar y. A sui t abl e mechani sm i s one t hat ( 1)
uses at r un t i me a copy of t he l i br ar y al r eady pr esent on t he user ' s comput er syst em, r at her t han copyi ng
l i br ar y f unct i ons i nt o t he execut abl e, and ( 2) wi l l oper at e pr oper l y wi t h a modi f i ed ver si on of t he l i br ar y,
i f t he user i nst al l s one, as l ong as t he modi f i ed ver si on i s i nt er f ace- compat i bl e wi t h t he ver si on t hat t he