Main Menu
Menu

Show posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.

Show posts Menu

Topics - gradgrind

#1
Suggestions / CMake
January 15, 2026, 11:44:44 AM
Hello Liviu,

I wanted to send this to your mail address, but it refused to accept it.

I have been trying to make the CMake files for FET produce results like your binary packages directly, picking up the version automatically from a VERSION file. Maybe this can simplify the build process?

I also wanted to make it easy to build just the command-line version, and of course (for fetrunner) to build the command-line binary without console window (fet-clw) on Windows.

There may be better ways of doing it, but I now have something that has been working well in my tests so far (I can't test MacOS). The modifications are attached.

There is (I think) just one change from your Windows package: I have put the Qt plugins in their own directory. It seemed neater to me.


I have been using the following build commands, always from a "build" directory in the FET root directory.


Linux, to configure, full build:

$HOME/Qt/Tools/CMake/bin/cmake .. -DCMAKE_PREFIX_PATH=$HOME/Qt/6.10.1/gcc_64 -DCMAKE_INSTALL_PREFIX=
The empty CMAKE_INSTALL_PREFIX causes the install directory to be named fet-x.y.z, where x.y.z is the version from the VERSION file.

Linux, to configure, cl-only:

$HOME/Qt/Tools/CMake/bin/cmake .. -DCMAKE_PREFIX_PATH=$HOME/Qt/6.10.1/gcc_64 -DCMAKE_INSTALL_PREFIX= -DCL_ONLY=on

Linux, to build and install:

$HOME/Qt/Tools/CMake/bin/cmake --build . --target install -j 4

Windows, to configure, full build:

C:\Qt\Tools\CMake_64\bin\cmake.exe .. -DCMAKE_PREFIX_PATH=C:\Qt\6.10.1\mingw_64 -DCMAKE_GENERATOR="MinGW Makefiles" -DCMAKE_INSTALL_PREFIX=
Windows, to configure, cl-only:

C:\Qt\Tools\CMake_64\bin\cmake.exe .. -DCMAKE_PREFIX_PATH=C:\Qt\6.10.1\mingw_64 -DCMAKE_GENERATOR="MinGW Makefiles" -DCMAKE_INSTALL_PREFIX=install -DCL_ONLY=on
Windows, to configure for fet-clw:

C:\Qt\Tools\CMake_64\bin\cmake.exe .. -DCMAKE_PREFIX_PATH=C:\Qt\6.10.1\mingw_64 -DCMAKE_GENERATOR="MinGW Makefiles" -DCMAKE_INSTALL_PREFIX=install -DCL_ONLY=on -DNO_WIN_CONSOLE=on

Windows, to build and install:

C:\Qt\Tools\CMake_64\bin\cmake.exe --build . --target install -j 4

What do you think?

#2
Suggestions / FET as program library
November 16, 2025, 06:39:30 AM
OK, while I'm making suggestions ...

I guess this one might be quite a bit more work (so I could understand you wanting sponsorship for something like this), but I think it might be a good idea for those cold, dark winter days ...

My suggestion is to make a library version of FET, rather like the command-line version, but interfacing via some communication mechanism (callbacks, messaging, whatever, ...). Or it could be an HTML server, using JSON messages for example ...

Anyway, this FET version would create no files, but pass all generated data and progress information back to the client, which could do with it whatever it wanted. Control of the processes, setting of options, etc., would be done by messages from the client.
#3
Suggestions / Code and Comments fields for more elements
November 16, 2025, 06:18:43 AM
Hello Liviu,

Having done some work on interfacing FET with other software, it seems to me that it might be useful in some cases to have Code and Comments fields on more elements.

The current state seems to be:

Day and Hour elements have neither Comments nor Code.

Activity elements have no Code.

Constraint elements have no Code – and also no unique identifier like Id or Name.

You probably had reasons for your choices, but if it is not too much work, perhaps it might be helpful to some people if these fields were also available on these elements (I may have missed something ...).

Best regards,
Michael
#4
I have been working on a tool to help in finding problems with FET-files, basically by automatically running multiple instances of fet-cl on source files which have been derived from the input file by systematically disabling/enabling various subsets of its constraints.

By starting with no constraints and gradually adding single-type groups of constraints, it should be possible to determine which of the constraints in the source file are "difficult". The results are returned as a JSON file. A somewhat lengthier description of this tool is available at the github repo.

It is not yet "finished", and is at present "only" a command-line utility, but it already works quite well. If anyone is interested in trying it out, I would be very glad to receive feedback, bug reports, suggestions for improvements, etc.

Here are links to executable binaries of the first release:

For Linux – https://github.com/gradgrind/fetrunner/releases/download/v0.0.1/fetrunner

For Windows (untested) – https://github.com/gradgrind/fetrunner/releases/download/v0.0.1/fetrunner.exe
#5
Suggestions / Linux binaries
September 17, 2025, 09:13:06 AM
Hello Liviu,

I noticed that with the latest version of FET the binary wouldn't work on my slightly old system, because of glibc being too old. I have Qt installed anyway, so it's no big problem for me to compile from source, it's just a little inconvenient.

However, I did see there was someone who was not as willing or able to go this way. Perhaps there are others, too? Not every Linux user will be using such a recent system as you. So I wonder whether it would be possible for you to compile the Linux binaries that you distribute on an older system – perhaps in a container or virtual machine?
#6
Report a Bug / Missing Labels in Qt Dialogs
December 05, 2024, 03:42:12 PM
In some dialogs the Filter labels are missing in the latest release, 6.28.3 (I am using the Linux binary release). In 6.27.0 they were there. For example the dialog "Constraints min days between activities".


You cannot view this attachment.

Hope that helps,

Michael