KDE Software Compilation

Ban đầu

KDE được thành lập năm 1996 bởi Matthias Ettrich, khi đó đang là sinh viên của University of Tübingen. Vào thời điểm đó, ông gặp rắc rối bởi một số khía cạnh của desktop Unix. Một trong những điều quan trọng của ông là không có ứng dụng nào nhìn, cảm thấy hoặc hoạt động giống nhau. Ông đã đề xuất sự hình thành không chỉ một bộ ứng dụng, mà, thay vào đó, một môi trường desktop, trong đó người dùng có thể mong đợi mọi thứ sẽ nhìn, cảm nhận và hoạt động ổn định. Ông cũng muốn làm cho desktop này dễ sử dụng; một trong những phàn nàn của ông với các ứng dụng desktop thời đó là bạn gái ông không thể sử dụng chúng. Bài đăng trên Usenet ban đầu của ông đã thu hút rất nhiều sự quan tâm và dự án KDE đã ra đời.
Ettrich đã chọn Qt framework của Trolltechcho dự án KDE. Các lập trình viên khác nhanh chóng bắt đầu phát triển các ứng dụng KDE/Qt và đến đầu năm 1997, một vài ứng dụng đã được phát hành.

Series 1.x

Ngày 12/7/1998, K Desktop Environment 1.0 được phát hành. Tháng 11/1998, bộ công cụ Qt đã được cấp phép kép theo giấy phép tự do nguồn mở Q Public License (QPL) và giấy phép độc quyền cho các nhà phát triển phần mềm độc quyền. Cuộc tranh luận tiếp tục về khả năng tương thích với GNU General Public License (GPL), vì vậy vào tháng 9 năm 2000, Trolltech đã tạo ra phiên bản Unix của các thư viện Qt có sẵn theo GPL, ngoài QPL. Trolltech tiếp tục yêu cầu giấy phép phát triển phần mềm độc quyền với Qt. Các thư viện cốt lõi của KDE được cấp phép chung theo GNU LGPL, nhưng cách duy nhất để phần mềm độc quyền sử dụng chúng là được phát triển theo các điều khoản của giấy phép độc quyền Qt.

Series 2.x

Bắt đầu từ ngày 23 tháng 10 năm 2000, Series thứ hai, K Desktop Environment 2, đã giới thiệu những cải tiến công nghệ quan trọng. Chúng bao gồm DCOP (Desktop COmmunication Protocol), KIO (một thư viện ứng dụng nhập xuất), KParts (một mô hình đối tượng thành phần, cho phép một ứng dụng nhúng một thứ khác vào trong chính nó) và KHTML (một công cụ render và dựng HTML).

Series 3.x

Series 3.x có nhiều thay đổi lớn hơn các series trước, bao gồm sáu bản phát hành chính bắt đầu vào ngày 3 tháng 4 năm 2002. API thay đổi giữa K Desktop Environment 2 và K Desktop Environment 3 tương đối nhỏ, có nghĩa là KDE 3 có thể được xem như là phần tiếp theo của series K Desktop Environment 2. Tất cả các bản phát hành của K Desktop Environment 3 được built dựa trên Qt 3, chỉ được phát hành theo GPL cho các hệ điều hành Linux và tương tự Unix, bao gồm Mac OS X. ó được đánh dấu ổn định chạy trên Mac OS X  từ năm 2008. Không giống KDE SC 4, nó yêu cầu  X11 server để hoạt động.  Năm 2002, các thành viên của dự án KDE on Cygwin bắt đầu porting codebase Qt/X11  được cấp phép GPL sang Windows.

Series 4.x

KDE Software Compilation 4, phát hành lần đầu ngày 11/1/2008, nó dựa trên Qt 4, vốn đựoc phát hành dưới giấy phép GPL cho Windows và Mac OS X. Bởi vậy, các ứng dụng KDE SC 4 có thể biên dịch và chạy tốt trên các hệ điều hành này. KDE Software Compilation 4 trên Mac OS X hiện đang là beta, trong khi trên Windows nó không ở trạng thái final, vì vậy các ứng dụng có thể không phù hợp để sử dụng hàng ngày.
KDE SC 4 bao gồm nhiều công nghệ mới, được thay đổi. Trung tâm là một desktop được thiết kế lại và các panel được gọi là Plasma, thay thế Kicker, KDesktop, và SuperKaramba bằng cách tích hợp chức năng của chúng vào một phần công nghệ; Plasmađược dự định là cấu hình nhiều hơn cho những người muốn cập nhật desktop metaphor hàng thập kỷ. Có một số frameworks mới, bao gồm Phonon (giao diện đa phương tiện mới làm cho KDE độc lập với bất kỳ một phụ trợ phương tiện cụ thể nào) Solid (API cho mạng và thiết bị di động), và Decibel (framework giao tiếp mới để tích hợp tất cả các giao thức truyền thông vào desktop). Ngoài ra còn có một framework metadata và tìm kiếm, kết hợp Strigi như một dịch vụ lập chỉ mục file toàn văn, and NEPOMUK với tích hợp KDE.
Bắt đầu với Qt 4.5, Qt đã có sẵn dưới LGPL v2.1, hiện cho phép các ứng dụng độc quyền sử dụng hợp pháp phiên bản Qt nguồn mở.

Triển khai

Hầu hết các phần mềm KDE sử dụng Qt chạy trên hầu hết các hệ thống Unix và Tương tự Unix (bao gồm Mac OS X), Android và Microsoft Windows. 
Tính đến  năm 2011 CMake đóng vai trò là công cụ build. Điều này cho phép KDE hỗ trợ nhiều nền tảng hơn, bao gồm cả  Windows.GNU gettext được sử dụng để dịch. Doxygen được sử dụng để tạo tài liệu api.

Cấp phép

Vào tháng 11 năm 1998, Qt framework đã được cấp phép kép theo giấy phép tự do nguồn mở Q Public License (QPL) và một giấy phép thương mại cho các nhà phát triển phần mềm độc quyền. Cùng năm,Quỹ KDE Free Qt được thành lập để đảm bảo rằng Qt sẽ thuộc một biến thể của giấy phép BSD tự do nếu Trolltech ngừng tồn tại hoặc không có phiên bản Qt miễn phí nào được phát hành trong 12 tháng.
Cuộc tranh luận tiếp tục về khả năng tương thích với GNU General Public License (GPL), do đó vào tháng 9 năm 2000, Trolltech đã tạo ra phiên bản Unix của các thư viện Qt có sẵn theo GPL bên cạnh QPL giúp loại bỏ các mối quan tâm của Free Software Foundation. Trolltech tiếp tục yêu cầu giấy phép cho việc phát triển phần mềm độc quyền với Qt. Các thư viện cốt lõi của KDE được cấp phép chung theo GNU LGPL nhưng cách duy nhất để phần mềm độc quyền sử dụng chúng là được phát triển theo các điều khoản của giấy phép độc quyền Qt.