README
1KTechLab 0.50.0
2=============
3
4KTechLab is an IDE for microcontrollers and electronics.
5It supports circuit simulation,
6program development for microcontrollers and
7simulating the programmed microcontroller together with its application circuit.
8
9Introduction
10-------------
11
12Resources
13-------------
14- KTechLab is joining KDE, all of its assets will be available there.
15 https://community.kde.org/Incubator/Projects/KTechLab
16
17 - current webpage:
18 https://userbase.kde.org/KTechlab
19 TODO better webpage at KDE
20
21 - repository browser at KDE (web based):
22 https://commits.kde.org/ktechlab
23 https://invent.kde.org/sdk/ktechlab
24
25 - source code repository at KDE (to be used with git):
26 git@invent.kde.org:sdk/ktechlab.git
27
28 - bugtracker at KDE:
29 https://bugs.kde.org/describecomponents.cgi?product=KTechLab
30
31 - mailing list at KDE:
32 ktechlab-devel at KDE
33 https://mail.kde.org/mailman/listinfo/ktechlab-devel
34 Archives contain the messages from the old list, too
35
36- on IRC, KTechLab developers regularly join the channel
37 `#ktechlab`, on FreeNode
38
39- source code repositories: see Getting the source section, below
40
41- KTechLab on github (will become deprecated)
42 https://github.com/ktechlab
43
44 https://github.com/ktechlab/ktechlab/wiki
45
46 https://github.com/ktechlab/ktechlab
47 https://github.com/ktechlab/ktechlab-0.3 (archive only; merged into the above repoistory)
48 - new commits will be always pushed to KDE Git, github will be a mirror only
49
50- KTechLab on sourceforge (mostly deprecated; source code downloads are available)
51 - wiki:
52 http://ktechlab.sourceforge.net
53 - project page:
54 http://sourceforge.net/projects/ktechlab
55 - project page for developers:
56 http://sourceforge.net/projects/ktechlab/develop
57
58- the official communucation channel is hosted at KDE; the mailing list on sourceforge will become deprecated;
59 it is called ktechlab-devel
60 - link to archives of the list:
61 http://sourceforge.net/mailarchive/forum.php?forum_name=ktechlab-devel
62
63
64
65Getting the source
66------------------
67
68KTechLab's source code is located in a GIT repository.
69
70Official repository is hosted at KDE; its location is at
71
72 git@invent.kde.org:sdk/ktechlab.git
73
74 - repository browser
75 https://invent.kde.org/sdk/ktechlab
76
77 - for write access, see section Write access to KTechLab repository at KDE, below.
78
79
80Deprecated official repositories located on github; they mirror code from KDE,
81and also have branches named github/* for historical reference.
82For new code use the KDE Git.
83
84- https://github.com/ktechlab/ktechlab
85 - the master branch contains the latest tested development code,
86 while other branches might contain untested/unstable code
87
88- https://github.com/ktechlab/ktechlab-0.3
89 - the port-0.3.8-kde4-v1 branch contains currently the latest code
90 (at the time of origina writing; this branch has become master branch in KDE repositories)
91
92
93Other notable deprecated GIT repositories are located on sourceforge:
94
95- main KTechLab repository (deprecated, use KDE Git):
96 - `git://ktechlab.git.sourceforge.net/gitroot/ktechlab/ktechlab`
97 - contains the contents of the previously used SVN repository
98
99- developers' own repositories (deprecated, use KDE Git):
100 - `git://ktechlab.git.sourceforge.net/gitroot/ktechlab/ktl-alonzotg`
101 - `git://ktechlab.git.sourceforge.net/gitroot/ktechlab/ktl-j_ohny_b`
102 - `git://ktechlab.git.sourceforge.net/gitroot/ktechlab/ktl-zoltan_p`
103 - the master branch should have the same content as the
104 official master branch from github
105 - these repositories contain work-in-progress code,
106 which is supposed to be merged in the master branch on github
107
108Checking out from GIT can be performed with the following commands:
109
110 git clone git://github.com/ktechlab/ktechlab.git
111 cd ktechlab
112
113
114Building and Running
115--------------------
116
117Required dependencies
118
119- Qt5 -dev
120- cmake
121- glib -dev
122- Extra Cmake Modules (ECM)
123- KDE Frameworks 5 libraries -dev (at the time of writing:
124 Config CoreAddons DocTools IconThemes I18n KDELibs4Support
125 KHtml KIO Parts TextEditor TextWidgets Solid WidgetsAddons
126 WindowSystem XmlGui)
127
128Optional dependencies
129
130- GPSim -dev, for microcontroller support
131
132
133
134In KDE Frameworks 5, all Makefiles in KDE projects are generated using CMake.
135After checking out the source (see Getting the source),
136here is how to compile and install KTechLab.
137CMkake is not a run-time dependency of KTechLab.
138
139
1401. By using a terminal, navigate to the top-level source-directory
141
1422. Run the shell script `build-simple.sh`.
143 This command compiles KTechLab into the directory `build-simple`,
144 installs it into the directory `inst-simple` and
145 sets up the user-specific settings (syscoca, mime database) for the
146 current user.
147
148 sh build-simple.sh
149
1503. Launch KTechLab by running the script `run-simple.sh`
151
152 sh run-simple.sh
153
154KTechLab should start running at this point.
155If this simple method of launching KTechLab does not work,
156please contact the developers, because you have found a bug.
157
158## Running a build when the source/build/install directory has been moved
159
160It the source directory has been moved, then the setup procedure has
161to be rerun. This is due to the fact that in the launch scripts of
162KTechLab, absolute directory paths are generated.
163The compilation step should be a lot faster than previously, because
164the source files have not been changed, so the existing build is
165just verified, not recreated.
166
167 sh build-simple.sh
168 sh run-simple.sh
169
170Developing with KDevelop 4 / 5
171--------------------------
172
173Just open/import the CMakeLists.txt project file.
174
175
176Write access to KTechLab repository at KDE
177------------------------------------------
178
179Please read the KDE Git manual:
180
181 https://community.kde.org/Sysadmin/GitKdeOrgManual
182
183You need:
184
1851. KDE developer account; should be usable at `identity.kde.org` ; see
186 https://community.kde.org/Infrastructure
187 https://community.kde.org/Infrastructure/Get_a_Developer_Account
188
189 An SSH key should be registered at KDE and usable on your computer.
190
1912. Set up git for usage with KDE Git Infrastructure
192 https://community.kde.org/Infrastructure/Git
193 https://techbase.kde.org/Development/Git/Configuration
194 git config --global user.name <Your Real Name>
195 git config --global user.email <Your identity.kde.org email>
196
197 cat ~/.gitconfig
198
199 [url "git://anongit.kde.org/"]
200 insteadOf = kde:
201 [url "git@git.kde.org:"]
202 pushInsteadOf = kde:
203
2043. Clone KTechLab repository; current location is temporary:
205 git clone kde:scratch/padrah/ktechlab
206
207Pushing should work with the URL rewrite rules from step 2.
208
209
210Porting to KF5 / Qt5
211--------------------
212
213See
2141. https://techbase.kde.org/ECM5/IncompatibleChangesKDELibs4ToECM
2152. https://community.kde.org/Frameworks/Porting_Notes
2163. https://api.kde.org/frameworks/index.html
217
218Have fun with KTechLab!
219