KDiff3 build fail: fileaccess.cpp - error: 'QT_STAT_LNK' was not declared in this scope

Carl Barnes carltbarnes at gmail.com
Sun Jun 28 23:47:35 BST 2020


Following the directions in
https://invent.kde.org/sdk/kdiff3/-/blob/master/INSTALL

Run:2)C:\CraftRoot\craft\craftenv.ps13)craft png2ico4)craft kdiff3If
you what to build 1.8x than use:4) craft --target 1.8 kdiff3


I was trying step 4:  craft --target 1.8 kdiff3
and got fatal errors below. Also attached text file and pasted screen
captures.

C:/CraftRoot/build/_/5ebfb487/kdiff3/src/fileaccess.cpp:264:59: error:
'QT_STAT_LNK' was not declared in this scope
                 m_bSymLink = (fileType & QT_STAT_MASK) == QT_STAT_LNK;
                                                           ^~~~~~~~~~~
C:/CraftRoot/build/_/5ebfb487/kdiff3/src/fileaccess.cpp:264:59: note:
suggested alternative: 'QT_STAT_REG'
                 m_bSymLink = (fileType & QT_STAT_MASK) == QT_STAT_LNK;
                                                           ^~~~~~~~~~~
                                                           QT_STAT_REG
C:/CraftRoot/build/_/5ebfb487/kdiff3/src/fileaccess.cpp:226:10: warning:
unused variable 'acc' [-Wunused-variable]
     long acc = 0;
          ^~~

I am a software developer but I am completely new to KDE QT and Craft so
it's all blackbox to me. The instructions worked well until this error.  I
was able to build by commenting out the one line of code in fileaccess.cpp.
There are still a bunch of warnings. Maybe there is a better fix or I have
something wrong in my setup?

                m_bFile = (fileType & QT_STAT_MASK) == QT_STAT_REG;
  // Error here      m_bSymLink = (fileType & QT_STAT_MASK) == QT_STAT_LNK;
                m_bExists = fileType != 0

The original KDiff3 was maybe 20mb the new one is 450+ MB. That seems like
a LOT of space for a Diff Program. The bbin/data folder is about 300 MB.
Could there be an install targeting a small footprint?

Thanks,

Carl

[image: image.png]

[image: image.png]
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.kde.org/pipermail/kde-windows/attachments/20200628/7410372a/attachment-0001.htm>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: image.png
Type: image/png
Size: 141596 bytes
Desc: not available
URL: <http://mail.kde.org/pipermail/kde-windows/attachments/20200628/7410372a/attachment-0002.png>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: image.png
Type: image/png
Size: 62098 bytes
Desc: not available
URL: <http://mail.kde.org/pipermail/kde-windows/attachments/20200628/7410372a/attachment-0003.png>
-------------- next part --------------
Please contact kde-windows at kde.org before filing a bug report regarding this process.


1)cd to your craft root
Run:
2)C:\CraftRoot\craft\craftenv.ps1
3)craft png2ico
4)craft kdiff3
If you what to build 1.8x than use:
4) craft --target 1.8 kdiff3



Action: compile for extragear/kdiff3:1.8 FAILED
*** Craft all failed: extragear/kdiff3 after 28 seconds ***
fatal error: package extragear/kdiff3 all failed
Craft stopped with out completing ['extragear/kdiff3']

C:/CraftRoot/build/_/5ebfb487/kdiff3/src/fileaccess.cpp:264:59: error: 'QT_STAT_LNK' was not declared in this scope
                 m_bSymLink = (fileType & QT_STAT_MASK) == QT_STAT_LNK;
                                                           ^~~~~~~~~~~
C:/CraftRoot/build/_/5ebfb487/kdiff3/src/fileaccess.cpp:264:59: note: suggested alternative: 'QT_STAT_REG'
                 m_bSymLink = (fileType & QT_STAT_MASK) == QT_STAT_LNK;
                                                           ^~~~~~~~~~~
                                                           QT_STAT_REG


#####################################

-- Configuring done
-- Generating done
CMake Warning:
  Manually-specified variables were not used by the project:

    CMAKE_INSTALL_SYSTEM_RUNTIME_LIBS_SKIP


-- Build files have been written to: C:/CraftRoot/build/_/a4f7a55b/build
executing command: "C:\CraftRoot\dev-utils\bin\ninja.exe"
[1/71] Generating ui_scroller.h
[2/71] Generating kdiff3.1
Note: Writing kdiff3.1
[3/71] Generating index.cache.bz2
[4/71] Automatic MOC for target kdiff3fileitemaction
[5/71] Automatic MOC for target kdiff3part
[6/71] Automatic MOC for target kdiff3
[7/71] Building CXX object src/CMakeFiles/kdiff3part.dir/gnudiff_analyze.cpp.obj
[8/71] Building CXX object src/CMakeFiles/kdiff3part.dir/gnudiff_io.cpp.obj
[9/71] Building CXX object kdiff3fileitemactionplugin/CMakeFiles/kdiff3fileitemaction.dir/kdiff3fileitemaction_autogen/mocs_compilation.cpp.obj
[10/71] Building CXX object src/CMakeFiles/kdiff3part.dir/gnudiff_xmalloc.cpp.obj
[11/71] Building CXX object src/CMakeFiles/kdiff3part.dir/merger.cpp.obj
[12/71] Building CXX object src/CMakeFiles/kdiff3part.dir/fileaccess.cpp.obj
FAILED: src/CMakeFiles/kdiff3part.dir/fileaccess.cpp.obj
C:\CraftRoot\mingw64\bin\g++.exe  -DENABLE_AUTO -DKCOREADDONS_LIB -DKDIFF3_PART -DKF_DEPRECATED_WARNINGS_SINCE=0x051A00 -DQT_CONCURRENT_LIB -DQT_CORE_LIB -DQT_DBUS_LIB -DQT_DEPRECATED_WARNINGS -DQT_DISABLE_DEPRECATED_BEFORE=0x050600 -DQT_GUI_LIB -DQT_NETWORK_LIB -DQT_NO_CAST_TO_ASCII -DQT_NO_DEBUG -DQT_NO_URL_CAST_FROM_STRING -DQT_PRINTSUPPORT_LIB -DQT_RESTRICTED_CAST_FROM_ASCII -DQT_WIDGETS_LIB -DQT_XML_LIB -DTRANSLATION_DOMAIN=\"kdiff3\" -DUNICODE -DWIN32_LEAN_AND_MEAN -DWINVER=0x0600 -D_CRT_NONSTDC_NO_DEPRECATE -D_CRT_SECURE_NO_DEPRECATE -D_CRT_SECURE_NO_WARNINGS -D_SCL_SECURE_NO_WARNINGS -D_UNICODE -D_USE_MATH_DEFINES -D_WIN32_IE=0x0600 -D_WIN32_WINNT=0x0600 -Isrc -IC:/CraftRoot/build/_/5ebfb487/kdiff3/src -Isrc/kdiff3part_autogen/include -isystem C:/CraftRoot/include/qt5 -isystem C:/CraftRoot/include/qt5/QtPrintSupport -isystem C:/CraftRoot/include/qt5/QtWidgets -isystem C:/CraftRoot/include/qt5/QtGui -isystem C:/CraftRoot/include/qt5/QtANGLE -isystem C:/CraftRoot/include/qt5/QtCore -isystem C:/CraftRoot/./mkspecs/win32-g++ -isystem C:/CraftRoot/include/KF5/KI18n -isystem C:/CraftRoot/include/KF5 -isystem C:/CraftRoot/include/KF5/KCoreAddons -isystem C:/CraftRoot/include/KF5/KCrash -isystem C:/CraftRoot/include/KF5/KIconThemes -isystem C:/CraftRoot/include/KF5/KParts -isystem C:/CraftRoot/include/KF5/KIOWidgets -isystem C:/CraftRoot/include/KF5/KIOGui -isystem C:/CraftRoot/include/KF5/KIOCore -isystem C:/CraftRoot/include/KF5/KService -isystem C:/CraftRoot/include/KF5/KConfigCore -isystem C:/CraftRoot/include/qt5/QtNetwork -isystem C:/CraftRoot/include/qt5/QtConcurrent -isystem C:/CraftRoot/include/qt5/QtDBus -isystem C:/CraftRoot/include/KF5/KWindowSystem -isystem C:/CraftRoot/include/KF5/KJobWidgets -isystem C:/CraftRoot/include/KF5/KCompletion -isystem C:/CraftRoot/include/KF5/KWidgetsAddons -isystem C:/CraftRoot/include/KF5/KXmlGui -isystem C:/CraftRoot/include/qt5/QtXml -isystem C:/CraftRoot/include/KF5/KConfigWidgets -isystem C:/CraftRoot/include/KF5/KCodecs -isystem C:/CraftRoot/include/KF5/KConfigGui -isystem C:/CraftRoot/include/KF5/KAuth -isystem C:/CraftRoot/include/KF5/KTextWidgets -isystem C:/CraftRoot/include/KF5/SonnetUi -fdiagnostics-color=always -fno-operator-names -fno-exceptions -Wall -Wextra -Wcast-align -Wchar-subscripts -Wformat-security -Wno-long-long -Wpointer-arith -Wundef -Wnon-virtual-dtor -Woverloaded-virtual -Werror=return-type -Wvla -Wdate-time -Wsuggest-override -Wlogical-op -fdiagnostics-color=always -Wall -Wno-trigraphs -Wduplicated-cond -Wduplicated-branches -Wshadow -O2 -g -DNDEBUG -fvisibility=hidden -fno-keep-inline-dllexport   -std=gnu++11 -MD -MT src/CMakeFiles/kdiff3part.dir/fileaccess.cpp.obj -MF src\CMakeFiles\kdiff3part.dir\fileaccess.cpp.obj.d -o src/CMakeFiles/kdiff3part.dir/fileaccess.cpp.obj -c C:/CraftRoot/build/_/5ebfb487/kdiff3/src/fileaccess.cpp
C:/CraftRoot/build/_/5ebfb487/kdiff3/src/fileaccess.cpp: In member function 'void FileAccess::setFromUdsEntry(const KIO::UDSEntry&, FileAccess*)':
C:/CraftRoot/build/_/5ebfb487/kdiff3/src/fileaccess.cpp:264:59: error: 'QT_STAT_LNK' was not declared in this scope
                 m_bSymLink = (fileType & QT_STAT_MASK) == QT_STAT_LNK;
                                                           ^~~~~~~~~~~
C:/CraftRoot/build/_/5ebfb487/kdiff3/src/fileaccess.cpp:264:59: note: suggested alternative: 'QT_STAT_REG'
                 m_bSymLink = (fileType & QT_STAT_MASK) == QT_STAT_LNK;
                                                           ^~~~~~~~~~~
                                                           QT_STAT_REG
C:/CraftRoot/build/_/5ebfb487/kdiff3/src/fileaccess.cpp:226:10: warning: unused variable 'acc' [-Wunused-variable]
     long acc = 0;
          ^~~
[13/71] Building CXX object src/CMakeFiles/kdiff3part.dir/common.cpp.obj
[14/71] Building CXX object kdiff3fileitemactionplugin/CMakeFiles/kdiff3fileitemaction.dir/kdiff3fileitemaction.cpp.obj
[15/71] Building CXX object src/CMakeFiles/kdiff3part.dir/ProgressProxyExtender.cpp.obj
[16/71] Building CXX object src/CMakeFiles/kdiff3part.dir/diff.cpp.obj
[17/71] Building CXX object src/CMakeFiles/kdiff3part.dir/kdiff3_part.cpp.obj
C:/CraftRoot/build/_/5ebfb487/kdiff3/src/kdiff3_part.cpp: In member function 'virtual bool KDiff3Part::openFile()':
C:/CraftRoot/build/_/5ebfb487/kdiff3/src/kdiff3_part.cpp:197:26: warning: 'void QProcess::start(const QString&, QIODevice::OpenMode)' is deprecated: Use QProcess::start(const QString &program, const QStringList &arguments,OpenMode mode = ReadWrite) instead [-Wdeprecated-declarations]
         process.start(cmd);
                          ^
In file included from C:/CraftRoot/include/qt5/QtCore/QProcess:1,
                 from C:/CraftRoot/build/_/5ebfb487/kdiff3/src/kdiff3_part.cpp:26:
C:/CraftRoot/include/qt5/QtCore/qprocess.h:168:10: note: declared here
     void start(const QString &command, OpenMode mode = ReadWrite);
          ^~~~~
C:/CraftRoot/build/_/5ebfb487/kdiff3/src/kdiff3_part.cpp:214:26: warning: 'void QProcess::start(const QString&, QIODevice::OpenMode)' is deprecated: Use QProcess::start(const QString &program, const QStringList &arguments,OpenMode mode = ReadWrite) instead [-Wdeprecated-declarations]
         process.start(cmd);
                          ^
In file included from C:/CraftRoot/include/qt5/QtCore/QProcess:1,
                 from C:/CraftRoot/build/_/5ebfb487/kdiff3/src/kdiff3_part.cpp:26:
C:/CraftRoot/include/qt5/QtCore/qprocess.h:168:10: note: declared here
     void start(const QString &command, OpenMode mode = ReadWrite);
          ^~~~~
C:/CraftRoot/build/_/5ebfb487/kdiff3/src/kdiff3_part.cpp:234:28: warning: 'void QProcess::start(const QString&, QIODevice::OpenMode)' is deprecated: Use QProcess::start(const QString &program, const QStringList &arguments,OpenMode mode = ReadWrite) instead [-Wdeprecated-declarations]
         process1.start(cmd1);
                            ^
In file included from C:/CraftRoot/include/qt5/QtCore/QProcess:1,
                 from C:/CraftRoot/build/_/5ebfb487/kdiff3/src/kdiff3_part.cpp:26:
C:/CraftRoot/include/qt5/QtCore/qprocess.h:168:10: note: declared here
     void start(const QString &command, OpenMode mode = ReadWrite);
          ^~~~~
C:/CraftRoot/build/_/5ebfb487/kdiff3/src/kdiff3_part.cpp:242:28: warning: 'void QProcess::start(const QString&, QIODevice::OpenMode)' is deprecated: Use QProcess::start(const QString &program, const QStringList &arguments,OpenMode mode = ReadWrite) instead [-Wdeprecated-declarations]
         process2.start(cmd2);
                            ^
In file included from C:/CraftRoot/include/qt5/QtCore/QProcess:1,
                 from C:/CraftRoot/build/_/5ebfb487/kdiff3/src/kdiff3_part.cpp:26:
C:/CraftRoot/include/qt5/QtCore/qprocess.h:168:10: note: declared here
     void start(const QString &command, OpenMode mode = ReadWrite);
          ^~~~~
[18/71] Building CXX object src/CMakeFiles/kdiff3part.dir/PixMapUtils.cpp.obj
[19/71] Building CXX object src/CMakeFiles/kdiff3part.dir/kdiff3part_autogen/mocs_compilation.cpp.obj
[20/71] Building CXX object src/CMakeFiles/kdiff3part.dir/smalldialogs.cpp.obj
[21/71] Building CXX object src/CMakeFiles/kdiff3part.dir/progress.cpp.obj
[22/71] Building CXX object src/CMakeFiles/kdiff3part.dir/MergeFileInfos.cpp.obj
[23/71] Building CXX object src/CMakeFiles/kdiff3part.dir/cvsignorelist.cpp.obj
[24/71] Building CXX object src/CMakeFiles/kdiff3part.dir/difftextwindow.cpp.obj
[25/71] Building CXX object src/CMakeFiles/kdiff3part.dir/pdiff.cpp.obj
[26/71] Building CXX object src/CMakeFiles/kdiff3part.dir/optiondialog.cpp.obj
[27/71] Building CXX object src/CMakeFiles/kdiff3part.dir/kdiff3.cpp.obj
[28/71] Building CXX object src/CMakeFiles/kdiff3part.dir/mergeresultwindow.cpp.obj
[29/71] Building CXX object src/CMakeFiles/kdiff3part.dir/directorymergewindow.cpp.obj
ninja: build stopped: subcommand failed.
Action: compile for extragear/kdiff3:1.8 FAILED
*** Craft all failed: extragear/kdiff3 after 28 seconds ***
fatal error: package extragear/kdiff3 all failed
Craft stopped with out completing ['extragear/kdiff3']


More information about the Kde-windows mailing list