"Fossies" - the Fresh Open Source Software Archive

Member "fet-5.45.1/README" (29 Jun 2020, 30521 Bytes) of package /linux/privat/fet-5.45.1.tar.bz2:


As a special service "Fossies" has tried to format the requested text file into HTML format (style: standard) with prefixed line numbers. Alternatively you can here view or download the uninterpreted source code file. See also the latest Fossies "Diffs" side-by-side code changes report for "README": 5.45.0_vs_5.45.1.

    1 This is FET version 5.45.1
    2 
    3 
    4 Program description:
    5 
    6 	FET is free timetabling software (licensed under the GNU Affero General Public License version 3 or later).
    7 	This program aims to automatically generate the timetable of a school, high-school or university.
    8 	It may be used for other timetabling purposes.
    9 
   10 	FET can mean "Free Educational Timetabling" (the "E" in the middle may also stand for other words, based on your personal preference).
   11 
   12 	FET homepage: https://lalescu.ro/liviu/fet/
   13 
   14 
   15 Requirements:
   16 
   17 	FET is created in the following environment: openSUSE Tumbleweed GNU/Linux distribution, Linux 5.7.5, Xfce 4.14,
   18 	Xfce Terminal Emulator 0.8.9.2, Midnight Commander 4.8.24, Kate 20.04.1, KDiff3 0.9.98, grep 3.4, sed 4.8,
   19 	Qt 5.15.0, Qt Creator 4.12.1, gcc 10.1.1, g++ 10.1.1, make 4.3, gdb 8.3.1, Valgrind 3.15.0, Coverity Scan 2019.03,
   20 	Cppcheck 2.1, SpeedCrunch 0.12, Inkscape 1.0, GIMP 2.10.18, ImageMagick 7.0.10, tar 1.32, gzip 1.10, bzip2 1.0.8,
   21 	other great software (most of them are free software, in the sense defined by The Free Software Foundation).
   22 
   23 	The executable version of FET for Windows is obtained in the following environment: Windows 10 operating system,
   24 	Command Prompt, Total Commander 9.51, Notepad, Python 2.7.18, Qt 5.15.0, Qt Creator 4.12.1, MinGW 8.1.0, 7-Zip 19.00.
   25 
   26 	FET is a C++ application and uses Qt, a C++ toolkit for cross-platform application development.
   27 	FET can be run on any platform supported by Qt (GNU/Linux, Windows, Mac OS X, and maybe others).
   28 
   29 	You will need a C++11 compliant C++ compiler to compile FET.
   30 
   31 	GNU/Linux, Mac OS X:
   32 	For running, you need only the archive of FET compiled for your operating system (which contains the necessary libraries).
   33 	For compiling, you will need this software:
   34 		make 4.2.1 or similar (GNU Make).
   35 		gcc 10.1.1 or similar.
   36 		g++ 10.1.1 or similar (or gcc-g++, or gcc-c++, the name may vary. This program may be included in the gcc package).
   37 		Qt 5.15.0 or compatible (The authors also tried to maintain backwards source compatibility with Qt 4.v.v).
   38 
   39 		Note: You need a C++11 compliant C++ compiler. You might be able to use the Clang C++ compiler or other C++ compiler instead of gcc and g++.
   40 
   41 	Windows:
   42 	For running, you need only the archive of FET compiled for Windows (which contains the necessary dll-s).
   43 	For compiling, you need Qt and a compatible C++ compiler complying with the C++11 standard (MinGW is a possibility).
   44 
   45 
   46 Download:
   47 
   48 	You can download the latest version from the FET homepage, https://lalescu.ro/liviu/fet/
   49 
   50 
   51 Getting - compiling - installing the GNU tools: make, gcc and g++ (or gcc-g++, or gcc-c++):
   52 
   53 	GNU/Linux, maybe Mac OS X: Most probably, your platform has these installed by default or available on the internet
   54 	as precompiled packages. If you don't have them, please install them using YaST (on openSUSE), Adept Manager
   55 	(on Ubuntu) or other package manager.
   56 	To verify that you have the correct packages, write "make --version", "gcc --version" and
   57 	"g++ --version".
   58 	Advice from a user on Ubuntu: "sudo apt-get install build-essential" installs build libraries commonly used.
   59 
   60 	Maybe Mac OS X from a user: Install Xcode (current version is 7.3.1) from the Mac App Store.
   61 	(Once installed, I think you'll need to open the Xcode app to finish the installation.)
   62 
   63 	Windows: you need a Qt compatible C++ compiler.
   64 	Maybe an easy option is the MinGW compiler, available optionally with the Qt distribution or on the Qt download page.
   65 	(You might also download MinGW from the internet. There might be more variants. One of them is on: http://mingw-w64.org/)
   66 
   67 
   68 Getting - compiling - installing Qt:
   69 
   70 	Qt homepage: https://www.qt.io/
   71 
   72 	You will need Qt 5.15.0 or compatible to compile FET (The authors also tried to maintain backwards source compatibility with Qt 4.v.v).
   73 	You can get the corresponding version of Qt with your package manager or from the internet (preferably from the Qt homepage).
   74 	Qt can be used with the GNU (L)GPL or commercial license (The authors chose the GNU (L)GPL license).
   75 
   76 	GNU/Linux: It is possible to use YaST (or Adept Manager) or other package managers to get your version of Qt, pre-compiled.
   77 	Or you can download, (possibly) compile and install Qt from the internet (preferably from its homepage).
   78 	A possible name for the precompiled package is libqt5.
   79 	A user reported that on Ubuntu "sudo apt-get install qt5-default" without quotes should work.
   80 
   81 	Windows - Download latest Qt from the internet (preferably from its homepage). There are available precompiled packages, but the authors chose
   82 	to compile Qt from the sources using the additional configure option "-schannel". This is done to ensure that SSL will work in FET using the
   83 	available SSL dll-s from Windows. For a faster Qt configuration, the authors download/compile/install only the qtbase component,
   84 	with a configure command which might look like:
   85 	"configure.bat -opensource -confirm-license -platform win32-g++ -schannel -opengl desktop -release -nomake examples -nomake tests".
   86 	(When we tried to use the recommended option "-opengl dynamic" we got a compiler error.)
   87 	Note that to be able to open ui files with Qt Designer or ts files with Qt Linguist you need to install the Qt component qttools
   88 	(or the whole Qt package).
   89 
   90 	Mac OS X:
   91 	Maybe you can get pre-compiled Qt packages for Mac OS X. If not, get Qt from the internet (preferably from its homepage).
   92 
   93 	Note about the Qt "QMAKESPEC" variable: advanced topic, read this if you get Qt errors about the environment not being set, or environment
   94 	variable QMAKESPEC not being set, or if the Qt environment is not set correctly: Qt needs to know the environment you are using. It is usually
   95 	something like: linux-g++, macx-g++ or win32-g++ (platform-compiler). You can find all the supported platforms in the directory "mkspecs" of Qt
   96 	(some usual locations are /usr/share/qt5/mkspecs or /usr/lib/qt5/mkspecs on GNU/Linux or C:\Qt\5.15.0\mkspecs on Windows).
   97 	It seems that Qt automatically finds the platform (there is a default configuration in the "default" subdirectory of the "mkspecs" directory,
   98 	which is created automatically when you install Qt). If the default configuration is not working or is wrong, you may need to set the
   99 	correct QMAKESPEC variable for your platform. Under Windows, you can create an environment variable QMAKESPEC equal to win32-g++
  100 	(if you are using MinGW), under other platforms create an environment variable named QMAKESPEC equal with the correct platform-compiler
  101 	you are working on (for instance macx-g++ or linux-g++).
  102 
  103 
  104 Compiling FET:
  105 
  106 	You will need a C++11 compliant C++ compiler to compile FET.
  107 
  108 	Note: if after unpacking the tar.bz2 sources archive you obtain some files with incomplete/truncated file names in the sources directories,
  109 	you might need to use a better (un)packer (probably a recent version of the official tar and bzip2 should be fine).
  110 	For GNU/Linux and maybe Mac OS X, "tar -jxvf fet-v.v.v.tar.bz2" should work correctly.
  111 	For Windows, either use a modern good (un)packer, or, advice from a user:
  112 		1. download mingw-get-setup.exe from https://sourceforge.net/projects/mingw/files/
  113 		2. run mingw-get-setup.exe
  114 		3. check msys-base to be installed, Apply Changes from Installation menu and close MinGW Installation Manager
  115 		4. run C:\MinGW\msys\1.0\msys.bat
  116 		5. $ cd to the directory where the .tar.bz2 file is
  117 		6. $ tar -jxvf fet-v.v.v.bz2
  118 
  119 	Note2: compilation takes long (maybe even 1 hour, if you are using an older computer). The file
  120 	rules.cpp takes the longest time to compile, maybe even 1 minute or more.
  121 
  122 	Note3: the following situation may appear under GNU/Linux, but it could be met also on other platforms.
  123 	Depending on your Qt installation, it may happen that the FET intermediary files and executables are very large (~100 MB for the fet executable
  124 	instead of ~10 MB). It is not sure if this affects the FET speed and performance, but anyway it is unpleasant. In this case, you may want to
  125 	modify some files in your system (Qt files) to improve this. You need to change some Qt configuration files and recompile FET from the beginning
  126 	(remove any temporary files with make distclean or unpack FET sources again, in an empty location).
  127 	Notations: mkspecs is a directory and QMAKE_CFLAGS_RELEASE and QMAKE_CXXFLAGS_RELEASE are two sections (text on two lines) contained in a file
  128 	in a subdirectory of mkspecs (some possible location for these are given in this paragraph, shortly below).
  129 	If mkspecs files for your platform contain the -g flag (text) in the QMAKE_CFLAGS_RELEASE or QMAKE_CXXFLAGS_RELEASE sections, you need to remove
  130 	this flag. If they do not contain -g flag in these sections, then you don't need to remove anything (and most probably the intermediary files and fet
  131 	executable will have normal size).
  132 	More details about where can you find the mkspecs files: under openSUSE GNU/Linux, it seems that for newer versions of Qt (>=4.7.1), the problem
  133 	is no longer present. In the past, the location of this minor problem was in the file /usr/share/qt5/mkspecs/common/g++.conf, at lines 10 and 25,
  134 	you needed to remove the "-g" flag from the QMAKE_CFLAGS_RELEASE and QMAKE_CXXFLAGS_RELEASE sections (root access needed to make this change).
  135 	Under Fedora GNU/Linux for the same problem, a user reported that you need to modify /usr/lib/qt4/mkspecs/common/g++.conf
  136 	and /usr/lib/qt4/mkspecs/linux-g++/qmake.conf (remove the -g flag from QMAKE_CFLAGS_RELEASE and QMAKE_CXXFLAGS_RELEASE sections).
  137 	(The mkspecs directory contains more subdirectories, in the form platform-compiler, you need to search for your corresponding directories/files.
  138 	For instance, GNU/Linux with gcc compiler is named "linux-g++", and you may also need to modify the "common" section).
  139 	Another solution, by another user: the addition of the lines
  140 	 "linux-g++*: QMAKE_CXXFLAGS_RELEASE -= -g"
  141 	 and
  142 	 "linux-g++*: QMAKE_CFLAGS_RELEASE -= -g"
  143 	 (without quotes) in the files src/src.pro and src/src-cl.pro (you can add them at the end of these files, or in another proper location).
  144 	
  145 	Note NMkJobs: advice from a user: if you have a multiple core computer, you may be able to split the compilation into more threads, with the -j option for the
  146 	make command, so that the compilation is faster. This option creates a number of compilation threads equal with the number specified along with the -j option.
  147 	Under GNU/Linux or Mac OS X, just write "make -j 2" if you have dual core or "make -j 4" if you have quad core (in case you have quad core and you want
  148 	to keep a core free for other tasks, write "make -j 3"). This is proven to work under GNU/Linux and Mac OS X. Under Windows it depends on the C++ compiler (you
  149 	may try it to see if it works).
  150 
  151 	Currently FET can be compiled with a C++ compiler, using Qt version 5.15.0 or compatible.
  152 
  153 	Note NUseSystemLocale: If you want FET to autodetect the system locale language, type <<qmake fet.pro "DEFINES+=USE_SYSTEM_LOCALE">>
  154 	or simply <<qmake "DEFINES+=USE_SYSTEM_LOCALE">>. This will work if you recompile from the beginning all the FET package (remove
  155 	all the intermediary files and recompile), and also if you did not use FET on this machine or if you remove the settings file/registry entry for FET
  156 	(otherwise FET will retain the language which was already saved in its settings).
  157 	
  158 	Note4: If you get an error like this:
  159 	In file included from ../../Qt5.3.2/5.3/gcc_64/include/QtGui/qopenglcontext.h:62:0,
  160 		from ../../Qt5.3.2/5.3/gcc_64/include/QtGui/QtGui:32,
  161 		from ../../Qt5.3.2/5.3/gcc_64/include/QtWidgets/QtWidgetsDepends:3,
  162 		from ../../Qt5.3.2/5.3/gcc_64/include/QtWidgets/QtWidgets:3,
  163 		from engine/import.cpp:35:
  164 	../../Qt5.3.2/5.3/gcc_64/include/QtGui/qopengl.h:110:21: fatal error: GL/gl.h: No such file or directory
  165 	 #  include <GL/gl.h>
  166 					^
  167 	compilation terminated.
  168 	you may need to install additional packages before compiling FET. For instance, under openSUSE GNU/Linux you may need to install Mesa-devel.
  169 	As reported by a user, on Mint GNU/Linux he needed to install mesa-common-dev and libgl1-mesa-dev.
  170 
  171 	Note 5: If you only want to compile the command-line version, open the file fet.pro with a text editor and from the second line remove the
  172 	text "src/src.pro ".
  173 
  174 
  175 	GNU/Linux:
  176 	- You will need Qt 5.15.0 or compatible to compile this program.
  177 	- type "qmake fet.pro" or simply "qmake". You have to use qmake from Qt 5 series, which on some systems
  178 	might be named qmake-qt5 (this command is executed very fast, so don't worry if you get immediate return from it)
  179 	See also notes NUseSystemLocale and Note4 above.
  180 	- type "make" (this takes a long time, maybe even 1 hour). See also note NMkJobs above.
  181 	To remove the compiled objects/executable: "make clean" and/or "make distclean".
  182 
  183 
  184 	Mac OS X:
  185 	3 Variants:
  186 
  187 	1. First variant, if you use the gcc compiler:
  188 	- You will need Qt 5.15.0 or compatible to compile this program.
  189 	- type "qmake fet.pro" or simply "qmake". You have to use qmake from Qt 5 series.
  190 	(this command is executed very fast, so don't worry if you get immediate return from it)
  191 	- IMPORTANT: you might need to write: "qmake -spec macx-g++ fet.pro", if "qmake fet.pro"
  192 	does not produce a correct makefile.
  193 	See also notes NUseSystemLocale and Note4 above.
  194 	- type "make" (this takes a long time, maybe even 1 hour). See also note NMkJobs above.
  195 	To remove the compiled objects/executable: "make clean" and/or "make distclean".
  196 
  197 	2. Another variant:
  198 	- Type "qmake fet.pro" and then "xcodebuild".
  199 
  200 	3. Another variant, if you use the Clang C++ compiler (which seems to be the default for Qt 5.15.0 on Mac):
  201 	It seems that you need to type:
  202 	"/Users/Yourname/Qt5.15.0/5.15.0/clang_64/bin/qmake -r -spec /Users/Yourname/Qt5.15.0/5.15.0/clang_64/mkspecs/macx-clang", then "make"
  203 	(the -r parameter might not be necessary.)
  204 	Please see: https://lalescu.ro/liviu/fet/forum/index.php?topic=2488.msg13425#msg13425 (and also see the whole topic there.)
  205 
  206 
  207 	Windows: MinGW C++ compiler: you need Qt 5.15.0 or compatible, and MinGW.
  208 	You might use other C++ compilers if you want, please see the Qt documentation.
  209 	for other variants. Any C++ compiler that supports Qt should be good.
  210 	You need to run "qmake fet.pro" or "qmake" (this command is executed very fast, so don't worry if you get
  211 	immediate return from it) and then, if you are using MinGW, "mingw32-make" (this takes a long time, maybe even 1 hour)
  212 	in a command line in the FET directory.
  213 	See also note NUseSystemLocale above.
  214 	See also Note4 above.
  215 	See also note NMkJobs above.
  216 	(You can use the command line prompt of Windows or the Qt command line prompt shortcut in the Qt shortcuts menu.)
  217 	Then, you can remove the directories "src" and "tmp", to save up space, if you want.
  218 	You will need to copy the dll-s in the same directories as in the official FET archive for Windows.
  219 
  220 
  221 Installing FET:
  222 
  223 	GNU/Linux, and maybe Mac OS X:
  224 	Type "make install" with root permissions.
  225 	
  226 	Mac OS X: A user reported that one can obtain a universal Mac OS X executable with:
  227 	$ cd /"pathto"/Qt/5.5/clang_64/bin/
  228 	$ ./macdeployqt /"pathto"/fet.app
  229 	(with Qt 5.5)
  230 
  231 	Windows:
  232 	Move the FET directory to a place of your choice.
  233 
  234 
  235 Running FET:
  236 	Note: The FET main window contains a menu with the items: File, Data, Statistics, Advanced,
  237 	Timetable, Settings, Help. Everything is right if you have that. Optionally, on the main window there may be a toolbox
  238 	containing shortcuts (if selected by the user in the settings. By default it is selected).
  239 	
  240 	To run FET in interface mode, you just need to run the executable named fet or fet.exe.
  241 
  242 	GNU/Linux, and maybe Mac OS X:
  243 	chdir to the directory where the fet executable is (for instance, "cd ~/fet-v.v.v/") and run it with "./fet" or with the suitable command
  244 	for your platform. Alternatively, you may run the executable named fet from the fet-v.v.v directory, using another method. The fet executable
  245 	will be located inside the fet-v.v.v directory after a successful compilation.
  246 	
  247 	Note for Mac OS X about using translations (if you want to run FET into other language): it seems that you need to copy the contents
  248 	of the "translations/" directory into the directory fet-v.v.v/fet.app/Contents/MacOS/translations/ or into the directory /usr/share/fet/translations/
  249 	(if you compiled/installed FET by yourself). Or copy the whole directory translations/ into fet-v.v.v/fet.app/Contents/MacOS/ or into usr/share/fet/
  250 	More notes for the Mac OS X platform, from a user: copying the translations/ directory into the directory fet.app/Contents/MacOS/ is
  251 	possible from the command line in X11 xterm (but it is not possible with the finder program, because the file extension ".app" is
  252 	exclusive for applications, so the program finder interprets a directory with the extension ".app" as an application).
  253 
  254 	Windows:
  255 	Run the executable fet.exe (its location is inside the fet-v.v.v directory, you can find it there if you have FET precompiled for Windows or after you compiled it).
  256 
  257 	Command line version usage: fet-cl --inputfile=FILE [other options]
  258 		FILE is the input file, for instance "data.fet"
  259 
  260 	Other options are:
  261 
  262 		--outputdir=DIR
  263 			DIR is the path to results directory, without trailing slash or backslash (default is current working path). Make sure you have write
  264 			permissions there.
  265 
  266 		--timelimitseconds=TLS
  267 			TLS is an integer representing the time limit, in seconds, after which the program will stop the generation (default 2000000000, which is
  268 			practically infinite).
  269 
  270 		--htmllevel=LEVEL
  271 			LEVEL is an integer from 0 to 7 and represents the detail level for the generated HTML timetables (default 2, larger values have more
  272 			details/facilities and larger file sizes).
  273 
  274 		--language=LANG
  275 			LANG is one of: ar, ca, cs, da, de, el, en_GB, en_US, es, eu, fa, fr, gl, he, hu, id, it, ja, lt, mk, ms, nl, pl, pt_BR, ro, ru, si, sk,
  276 			sq, sr, tr, uk, uz, vi, zh_CN, zh_TW (default en_US).
  277 
  278 		--writetimetableconflicts=WT1
  279 		--writetimetablesstatistics=WT2
  280 		--writetimetablesxml=WT3
  281 		--writetimetablesdayshorizontal=WT4
  282 		--writetimetablesdaysvertical=WT5
  283 		--writetimetablestimehorizontal=WT6
  284 		--writetimetablestimevertical=WT7
  285 		--writetimetablessubgroups=WT8
  286 		--writetimetablesgroups=WT9
  287 		--writetimetablesyears=WT10
  288 		--writetimetablesteachers=WT11
  289 		--writetimetablesteachersfreeperiods=WT12
  290 		--writetimetablesrooms=WT13
  291 		--writetimetablessubjects=WT14
  292 		--writetimetablesactivitytags=WT15
  293 		--writetimetablesactivities=WT16
  294 			WT1 to WT16 are either true or false and represent whether you want the corresponding timetables to be written on the disk (default true).
  295 
  296 		--printactivitytags=PAT
  297 			PAT is either true or false and represets if you want activity tags to be present in the final HTML timetables (default true).
  298 
  299 		--printnotavailable=PNA
  300 			PNA is either true or false and represents if you want -x- (for true) or --- (for false) in the generated timetables for the not available
  301 			slots (default true).
  302 
  303 		--printbreak=PB
  304 			PB is either true or false and represents if you want -X- (for true) or --- (for false) in the generated timetables for the break slots
  305 			(default true).
  306 
  307 		--dividetimeaxisbydays=DTAD
  308 			DTAD is either true or false, represents if you want the HTML timetables with time-axis divided by days (default false).
  309 
  310 		--duplicateverticalheaders=DVH
  311 			DVH is either true or false, represents if you want the HTML timetables to duplicate vertical headers to the right of the tables, for
  312 			easier reading (default false).
  313 
  314 		--printsimultaneousactivities=PSA
  315 			PSA is either true or false, represents if you want the HTML timetables to show related activities which have constraints with same
  316 			starting time (default false). (for instance, if A1 (T1, G1) and A2 (T2, G2) have constraint activities same starting time, then in T1's
  317 			timetable will appear also A2, at the same slot as A1).
  318 
  319 		--randomseeds10=s10 --randomseeds11=s11 --randomseeds12=s12 --randomseeds20=s20 --randomseeds21=s21 --randomseeds22=s22
  320 			where you need to specify all the 6 random seed components, and s10, s11, and s12 are integers from minimum 0 to maximum 4294967086,
  321 			not all 3 zero, and s20, s21, and s22 are integers from minimum 0 to maximum 4294944442, not all 3 zero (you can get the same timetable
  322 			if the input file is identical, if the FET version is the same (or if the generation algorithm did not change), and if all the 6 random seed
  323 			components are respectively equal).
  324 
  325 		--warnifusingnotperfectconstraints=WNP
  326 			WNP is either true or false, represents whether you want a message box to be shown, with a warning, if the input file contains not perfect
  327 			constraints (activity tag max hours daily or students max gaps per day) (default true).
  328 
  329 		--warnifusingstudentsminhoursdailywithallowemptydays=WSMHDAED
  330 			SMHDAEDP is either true or false, represents whether you want a message box to be shown, with a warning, if the input file contains nonstandard
  331 			constraints students min hours daily with allow empty days (default true).
  332 
  333 		--warnifusinggroupactivitiesininitialorder=WGA
  334 			WGA is either true or false, represents whether you want a message box to be shown, with a warning, if the input file contains nonstandard
  335 			timetable generation options to group activities in the initial order (default true).
  336 
  337 		--warnsubgroupswiththesameactivities=WSSA
  338 			WSSA is either true or false, represents whether you want a message box to be show, with a warning, if your input file contains subgroups
  339 			which have the same activities (default true).
  340 
  341 		--printdetailedtimetables=PDT
  342 			PDT is either true or false, represents whether you want to show the detailed (true) or less detailed (false) years and groups timetables (default true).
  343 
  344 		--printdetailedteachersfreeperiodstimetables=PDTFP
  345 			PDTFP is either true or false, represents whether you want to show the detailed (true) or less detailed (false) teachers free periods
  346 			timetables (default true).
  347 
  348 		--exportcsv=ECSV
  349 			ECSV is either true or false, represents whether you want to export the CSV file and timetables (default false).
  350 
  351 		--overwritecsv=OCSV
  352 			OCSV is either true or false, represents whether you want to overwrite old CSV files, if they exist (default false).
  353 
  354 		--firstlineisheadingcsv=FLHCSV
  355 			FLHCSV is either true or false, represents whether you want the heading of the CSV files to be header (true) or data (false). The default
  356 			value is true.
  357 
  358 		--quotescsv=QCSV
  359 			QCSV is one value from the set [doublequotes|singlequotes|none] (write a single value from these three exactly as it is written here).
  360 			The default value is doublequotes.
  361 
  362 		--fieldseparatorcsv=FSCSV
  363 			FSCSV is one value from the set [comma|semicolon|verticalbar] (write a single value from these three exactly as it is written here).
  364 			The default value is comma.
  365 
  366 		--showvirtualrooms=SVR
  367 			SVR is either true or false, represents whether you want to show virtual rooms in the timetables (default false).
  368 
  369 		--warnifusingactivitiesnotfixedtimefixedspacevirtualroomsrealrooms=WANFTFS
  370 			WANFTFS is either true or false, represents whether you want the program to issue a warning if you are using activites which are not
  371 			fixed in time, but are fixed in space in a virtual room, specifying also the real rooms (which is not recommended) (default true).
  372 
  373 		--verbose=VBS
  374 			VBS is either true or false, represents whether you want additional generation messages and other messages to be shown on the command
  375 			line (default false).
  376 
  377 	Run "fet-cl --help" to get usage information.
  378 
  379 	Run "fet-cl --version" to get version information.
  380 
  381 	You can ask the FET command line process to stop the timetable generation, by sending it the SIGTERM (or SIGBREAK, on Windows) signal. FET will then
  382 	write the current timetable and the highest stage timetable and exit. (If you send the FET command line the SIGINT signal it will stop immediately,
  383 	without writing the timetable.)
  384 
  385 	The result of the operation is logged in the file outputdir/logs/result.txt.
  386 
  387 	Also, you have in logs the initial order of activities and a list of maximum placed number of activities. If your timetable is impossible, say it stops
  388 	at maximum n placed activities, look at the n+1-st activity in the initial order, for it or its students/teachers may be the problem.
  389 
  390 	For the command line version, probably the most useful output to use internally in an application might be the activities_timetable.xml.
  391 	You have of course also the xml timetables for students and teachers and the nicely formatted HTML timetables to present directly.
  392 
  393 	You'll get a console output to help you with data, along with the files in the directory outputdir/logs/.
  394 	
  395 	If you are a programmer, in the file src/engine/messageboxes.cpp you'll find the implementation of the various messages. You
  396 	can modify these functions, catching them in your program. Also, you can catch the end of the program (successful or unsuccessful) in
  397 	the file src/interface/fet.cpp, in the command-line code part.
  398 	
  399 	If you want to be completely independent from Qt, using only standard C++, you can remove all the Qt includes and
  400 	reimplement the used Qt classes QString, QList, QSet, QHash, and maybe others (only the member functions which are necessary). Or just get
  401 	the corresponding code from Qt (Please review the Qt licensing options, in this case. Currently, they include GNU (L)GPL and commercial).
  402 	The program should have independence of a particular implementation of QSet and QHash so, if you reimplement these two containers,
  403 	any order of elements should lead to the same generation results. Contrary behavior should be reported as a bug.
  404 
  405 
  406 Languages (translations):
  407 
  408 	The translation files which the FET executable needs in order to be able to run in other languages are ending in .qm (like fet_**.qm)
  409 	and they are located in the "translations" directory in the FET distribution.
  410 
  411 	FET will search for translations (fet_**.qm files) in the following order:
  412 	1) directly in the directory where the fet executable is,
  413 	2) the directory "translations" in the directory where fet executable is,
  414 	3) the directory /usr/share/fet/translations (under GNU/Linux or Mac OS X).
  415 
  416 	So, on:
  417 	Windows: if fet.exe is in C:\fet-v.v.v, fet will search for the file fet_**.qm in
  418 		C:\fet-v.v.v and then in C:\fet-v.v.v\translations
  419 	GNU/Linux: if the fet executable is in ~/fet-v.v.v, fet will search for the file fet_**.qm in
  420 		~/fet-v.v.v, then in ~/fet-v.v.v/translations and then in /usr/share/fet/translations
  421 	Mac OS X: the operation is approximately similar to the one for GNU/Linux.
  422 		The difference is that it seems that the fet application on Mac OS X contains in turn other directories (application directories),
  423 		so FET will search for the translations inside these application directories, not in the fet-v.v.v directory. The GNU/Linux style fet executable
  424 		seems to be located in fet-v.v.v/fet.app/Contents/MacOS, so FET will search for the file fet_**.qm in the directory
  425 		fet-v.v.v/fet.app/Contents/MacOS, then in the directory fet-v.v.v/fet.app/Contents/MacOS/translations,
  426 		then in the directory /usr/share/fet/translations.
  427 		Please see also the Mac OS X note from the section "Running FET".
  428 		More notes for the Mac OS X platform, from a user: copying the translations/ directory into the directory fet.app/Contents/MacOS/ is
  429 		possible from the command line in X11 xterm (but it is not possible with the finder program, because the file extension ".app" is
  430 		exclusive for applications, so the program finder interprets a directory with the extension ".app" as an application).
  431 
  432 	What to do if you get stuck with an unknown language: in each language, the submenu (Settings->)Language is translated also in English
  433 		(like: Limba/Language in Romanian). You can select the US English language (en_US abbreviation) and then close and restart FET (press the middle button
  434 		from the dialog that appears after trying to close FET, so that FET will exit without saving the current file).
  435 	Another solution: modify the FET settings on your operating system:
  436 		- Under GNU/Linux, and maybe Mac OS X, usually in your $HOME/.config directory you'll find a directory "fet",
  437 		containing file "fettimetabling.conf". Edit that file - the line beginning with language, instead of language=... (for instance, language=ro),
  438 		make it language=en_US (case sensitive).
  439 		- Under Windows: run regedit.exe (Registry Editor), search key "fet". You will find a section "fet" with sub-section "fettimetabling".
  440 		Modify the value name language (from, for instance, ro, or other language) to have the value data en_US (5 characters, case sensitive).
  441 	Another solution: simply remove the translation files (or move them so they are not available to the fet executable) and start FET. It will report
  442 		that the custom language is not found and it will revert to en_US.
  443 
  444 
  445 Documentation:
  446 
  447 	Some hints in the directory "fet-v.v.v/doc/" (under GNU/Linux or Mac OS X, they may be found in usr/share/doc/fet/ directory).
  448 	Some other hints in the program Help menu.
  449 	You may find more documentation on the FET homepage.
  450 
  451 
  452 Input files:
  453 
  454 	You can open a few sample input files in "fet-v.v.v/examples/" directory
  455 	(under GNU/Linux or Mac OS X, they may be found in /usr/share/fet/examples/)
  456 
  457 
  458 Uninstalling FET:
  459 
  460 	GNU/Linux, and maybe Mac OS X: type "make uninstall" with root permissions. Then,
  461 
  462 	GNU/Linux and Windows:
  463 	Remove the directory fet-v.v.v. Also, you may want to remove the directory with the fet results (default: $HOME/fet-results).
  464 	This will leave the settings of FET on your system. FET stores its settings in your operating system's dedicated section.
  465 	If you really want to get rid of everything FET created, read below.
  466 
  467 	To completely remove stored FET settings from your operating system:
  468 
  469 	GNU/Linux:
  470 	Usually, in your $HOME/.config directory you will find a directory "fet" containing the file "fettimetabling.conf".
  471 	Remove the directory "fet" and its contents.
  472 
  473 	Mac OS X: It seems that the configuration file might be: $HOME/Library/Preferences/com.fet.fettimetabling.plist
  474 
  475 	Windows:
  476 	Run regedit.exe (Registry Editor), search for the key "fet". You will find a section "fet" with the subsection "fettimetabling".
  477 	Remove the "fet" section and its contents.
  478 
  479 
  480 Feed-back / help:
  481 
  482 	You are encouraged to express your opinion about this program, to send your data files, for the purpose of testing or
  483 	for inclusion into examples, and also to report possible bugs and suggestions. See the FET homepage for contact information.
  484 
  485 
  486 Copyright (C) 2002-2020 Liviu Lalescu, Volker Dirr.