Error when building GroundControl on Rocky Linux 9:': No such file or directory

I get this error during the linking stage. QT 6.6.1 was installed using the QT Online installer. The build was actually built using the linux mock utility. I do not see any QT 6 module that would satisfy the requirement for the missing file. I am I missing something?

Have you ever deleted the previous build and then tried to build?
(I don’t know if it had already been compiled before updating)
If anything, please send me more information so I can help.

This is a new build from source code. I had followed the directions for building from source to build with qmake. It was a little tricky to get it working, but everything compiled… There is even a copy of QGroundControl in the …/build/staging directory.

Is there a Qt module that I need to install?

Did you follow this guide here?

Maybe some library was not installed.

Yes, for Fedora. I installed all the qt modules on the list and rpm packages… I had to add a few more steps… Such as setting the LD_LIBRARY_PATH to point to qt6 libraries and setting the PATH to point to qt binaries… And add a few other development rpm packages… I tried searching for the Qt QuickControl2 modules, but i could not locate any…

I initially tried using the native qt 6.5 rpm packages, but that didn’t work.

Dude, try rerun all pass, like install again the QT and config the varieables

I´m here to help you.

Which variables are you referring to? Are you familiar with cmake?

Ignore it, I got ahead of myself with the variables.
If you installed CMake everything ok, it should automatically be working? Did you check the “projects” in QT if everything is OK? (Just so I can understand and discard this error, or as a last resort, send me the error.

cmake is installed… What is proper cmake command line options? I’ve tried: "cmake -B_build -DCMAKE_INSTALL_PREFIX=_build/staging -DCMAKE_PREFIX_PATH=/builddir/Qt/6.6.1/gcc_64 -H. " and then cmake --build _build --target install. The latter fails with gmake error “No rule to make target ‘Makefile’”. Ideas?

Whoops! I may have forgotten to add the source directory… I’ll check when I get back home…

So, if you created a new build from source code, the error should are in the QT, no in Makefile. And the erro just happens whey you build the project, right ?

I think I sorted put the Makefile issue. See attached.

1 Like

The build completed without any major errors. Now to figure out which pieces and parts I need to actually install.

I´m here to help you if needed

There is a copy of the QGroundControl executable in the build directory and in AppDir/usr/bin. There appears to be a lot of support files also under AppDir. There are also three *.AppImage files. So the question is what do I need to install for QGroundControl to run?

What is the Vulkan package used for?

Success! I finally have built a Rocky Linux 9/RHEL 9 rpm package. The rpm package includes the QGroundControl executable file plus a slew of libraries, images, translation files and plugins. I have yet to figure out how to use the extra files. There are a few runtime errors/warnings that I’m working through, but it does launch. As soon as I rebuild my hexacopter, I’ll give it whirl.

The instructions for building QGroundControl missed a few steps when following the CLI method.

Prior to Step 1, run: export LD_LIBRARY_PATH=/opt/Qt/6.1.1/gcc_64/lib I tried using qmake, but could not get it resolve the issue noted in the summary line above. I used cmake instead. See attached screenshots for steps and build requirements.

The above steps with create three AppImage executable files in the build directory and the QGroundControl executable will be in the build/AppDir/usr/bin directory and all of the supporting files will be located in the build/AppDir/usr directory.

It would appear that several features are missing when I built QGC locally for Rocky Linux 9. The attitude and compass “meters” are missing as well as the submenus for Actuators. Which library or Qt module am I missing? However, the daily QGC download are working now.