[Solved] QtBase (Qt6) SymlinkProgram issue?

Hello

I’m working on Qt6 and something weird is happening after I run SymlinkProgram QtBase 6.1.2 in the file …/lib/cmake/Qt6BuildInternals/QtBuildInternalsExtra.cmake which contain these lines before the symlinking:

set(QT_SOURCE_TREE "/Data/Compile/Sources/qtbase-v6.1.2" CACHE PATH
"A path to the source tree of the previously configured QtBase project." FORCE)

and after SymlinkProgram it’s look like that:

set(QT_SOURCE_TREE " CACHE PATH
"A path to the source tree of the previously configured QtBase project." FORCE)

which is bad and create an error when I want to build another Qt6 Software.

CMake Error at /System/Index/lib64/cmake/Qt6BuildInternals/QtBuildInternalsExtra.cmake:108:
Parse error. Function missing ending “)”. Instead found unterminated
string with text " FORCE)

I don’t know how important this variable is for later, I can fix it manually but obviously something is wrong. Do you have an answer to this problem ?

I am also worried that could affect other files that I am not currently aware of.

Thx

This is odd. Let me make sure I understand it. You do have a program under /Programs/QtBase/6.2.1, with a good-looking file at lib/cmake/Qt6BuildInternals/QtBuildInternalsExtra.cmake. However, when you call SymlinkProgram to “activate” that program, the cmake file is somehow processed and ends up corrupted?

Hi lucasvr

That right. I run the build like that:
Compile QtBase 6.1.2 --symlink no

The file /Programs/QtBase/6.1.2/lib/cmake/Qt6BuildInternals/QtBuildInternalsExtra.cmake
look good.

After that I run:
SymlinkProgram QtBase 6.1.2

and the file ends up corrupted.

EDIT: Link to the Recipe QtBase 6.1.2

Ok, I was able to reproduce it. Let me see how this one goes…

Our FixDirReferences script, called by SymlinkProgram, was processing the cmake file to adjust references to the /Programs tree. However, that same script was removing references to /Data/Compile, which resulted in the error you reported. The decision to remove such references looks bogus to me, so I have removed that part from the script and pushed the fix to Git.

Please pull the most recent version of the code with cd /Programs/Scripts/Current; git pull.

And thanks for reporting this issue!

Thx and it’s a pleasure to help. This distribution is fantastic, everything is so well thought and designed.

1 Like