CLX tarkoittaa Component Library X (cross) -Platform , tarkoittaa " Cross -platform komponenttikirjasto". Tämä on kehys kirjoitettu Object Pascal vuonna Borland kun kustantaja päätti käyttää Delphi alle Linux luomalla Kylix . Vaikka CLX ei ole täsmälleen VCL on Linux , se on suunniteltu ottamaan suurimman osan toiminnallisuutta huomioon, ja Borland on merkittävästi edistynyt, jotta kaksi kirjastoa on kaksi hyvin samanlaista rajapintoja.
CLX: n tarkoituksena on tuottaa helposti sovelluksia Windowsille tai Linuxille samalla koodilla .
Kuten VCL, CLX koostuu useista moduuleista: NetCLX (Internet-komponentit), VisualCLX (visuaaliset komponentit) ja BaseCLX ( vakioinen ajonaikainen kirjasto). Jossa VCL perustuu API Win32 tai .NET , CLX ensisijaisesti käyttöliittymän versio Linux on vakio C-kirjaston ja ikkuna manageri X kautta komponenttikirjastosta Qt alkaen Trolltechin .
Käyttämällä DisplayCLX , CLX grafiikkaa liitäntää Qt . Tämä viestintä kulkee ensin rajapintatiedoston Qt.pas kautta , joka kuvaa tavallisia "litistettyjä" toimintoja (ts. Menettelyjä, ei luokkatapoja) Qt- widgetien luomiseen ja hallintaan . Toiminnot toteuttaa Borlandin tarjoama kirjasto, joka on kirjoitettu C ++ : iin, libqtintf.so , joka lataa dynaamisesti Qt- kirjaston , libqt.so . Tämä monimutkainen ketjuttaminen, epäilemättä alussa epäilemättä, linkkien päivittämisen helpottamiseksi Trolltech- kirjaston kehittyessä edellyttää kahden tiedoston asentamista työasemalle, joka haluaa suorittaa graafisen sovelluksen. Sama järjestelmä on olemassa
CLX hallitsee myös Linux-objekteja ja -käsitteitä, kuten IPC: itä tai signaaleja Kylixissä .
Alla Windows , hallinta grafiikkaa aina pysyy delegoitu Qt (tällä kertaa asentaa Windowsin version kirjaston), ja toisin kuin VCL ei enää kutsu Windows API for instanssien visuaalisia komponentteja tai piirustus piirustukset näytöllä.
Monet Delphi kehittäjille vain toivoi heidän täytyisi kääntää niiden Windows- sovellus , jossa Kylix todelliseksi Linux sovelluksia . Ilmeisesti näin ei ollut, ja alustojen välisen projektin luominen edellytti välttämättä VCL: n hylkäämistä CLX: n hyväksi (puhumattakaan sellaisen koodin poistamisesta, joka suoraan vetoaa Windows- sovellusliittymään ). Tämä uudelleenkirjoittamisen tarve oli ensimmäinen este tämän kirjaston kehittämiselle.
Lisäksi CLX kärsi puutteesta kokemusta Borland kehittäjien kanssa Linux . Esimerkiksi jotkin prosessien välinen synkronointi tai viestintäobjekti-ilmoitukset olivat virheellisiä, ja virheen korjaaminen (osittain) kesti useita peräkkäisiä versioita. Vielä nykyäänkin monet parannukset ovat itsenäisten kehittäjien ehdottamia ja epävirallisia korjaustiedostoja.
CLX vaati myös useiden Borland-spesifisten kirjastojen jakelua, erityisesti Qt- liitäntää varten . Graafisten sovellusten käyttöönotto Linuxissa ei ollut triviaalia ja usein ongelmallista. Qt- sovelluksen ei-natiivi osa Windows-käyttöjärjestelmässä oli myös jarru tämän kirjaston kehittämiselle.
Kun luopuminen Kylix vuoteen Borland , CLX ei ole ajankohtainen ratkaisu. Se olisi vaatinut jatkuvaa ponnistelua sopeutumisen uusia ohjelmistoversioita libc ja Qt edistymistä sekä todellinen investointeja korjauksen kotimaisten vikoja erityisesti VisualCLX : siksi vain VCL pysyy edelleen puitteet kehityksen alla Delphi ja C ++: Rakentaja .
Koska Qt- työkalupakettia voidaan käyttää joko omalla, maksetulla lisenssillä tai ilmaisella " copyleft " -lisenssillä , sama pätee myös CLX: ään. Todellakin, Kylix tarjottiin maksullisia versioita ( Professional , Enterprise ) kehittämiseen omien sovellusten ja ilmainen versio (melko rajoitettu) nimeltään Open Edition sallii vain kehittämisen vapaan sovellusten vuoksi copyleft lisenssin. Open Edition -versio sisälsi FreeCLX-osajoukon, jonka oli tarkoitus muodostaa avoimen lähdekoodin kirjasto , jonka kehityksen "yhteisön" olisi pitänyt varmistaa. SourceForge.net -sivusto isännöi tätä projektia , mutta se ei ole ollut aktiivinen vuoden 2001 lopusta lähtien.