Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Compilation on Ubuntu 18.04 failed when trying to build scintilla #486

Closed
fiddleyuan opened this issue Nov 9, 2023 · 3 comments
Closed

Comments

@fiddleyuan
Copy link

fiddleyuan commented Nov 9, 2023

I'm trying to compile textadept on Ubuntu 18.04 with Qt version 5.9.5, got some warnings during cmake configuration stage, and failed when trying to build dependent scintilla.
Could someone help me figure out what might go wrong? I'm completely new to either textadept or QT and scintilla, thanks

cmake -S . -B build -DCMAKE_EXPORT_COMPILE_COMMANDS=ON

-- The C compiler identification is GNU 8.4.0
-- The CXX compiler identification is GNU 8.4.0
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Check for working C compiler: /usr/bin/cc - skipped
-- Detecting C compile features
-- Detecting C compile features - done
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Check for working CXX compiler: /usr/bin/c++ - skipped
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- Found PkgConfig: /usr/bin/pkg-config (found version "0.29.1")
-- Checking for module 'gtk+-3.0'
-- Found gtk+-3.0, version 3.22.30
-- Checking for module 'gtk+-2.0'
-- Found gtk+-2.0, version 2.24.32
-- Checking for one of the modules 'ncursesw;ncurses;curses'
-- Checking for one of the modules 'gtk+-3.0;gtk+-2.0'
-- Performing Test CMAKE_HAVE_LIBC_PTHREAD
-- Performing Test CMAKE_HAVE_LIBC_PTHREAD - Failed
-- Looking for pthread_create in pthreads
-- Looking for pthread_create in pthreads - not found
-- Looking for pthread_create in pthread
-- Looking for pthread_create in pthread - found
-- Found Threads: TRUE
CMake Warning (dev) at /usr/local/share/cmake-3.26/Modules/FetchContent.cmake:1282 (message):
The DOWNLOAD_EXTRACT_TIMESTAMP option was not given and policy CMP0135 is
not set. The policy's OLD behavior will be used. When using a URL
download, the timestamps of extracted files should preferably be that of
the time of extraction, otherwise code that depends on the extracted
contents might not be rebuilt if the URL changes. The OLD behavior
preserves the timestamps from the archive instead, but this is usually not
what you want. Update your project to the NEW behavior or specify the
DOWNLOAD_EXTRACT_TIMESTAMP option with a value of true to avoid this
robustness issue.
Call Stack (most recent call first):
CMakeLists.txt:77 (FetchContent_Declare)
This warning is for project developers. Use -Wno-dev to suppress it.

-- Populating scintilla
-- Configuring done (0.0s)
-- Generating done (0.0s)
-- Build files have been written to: /local/mnt/workspace/project/textadept/build/_deps/scintilla-subbuild
[ 11%] Creating directories for 'scintilla-populate'
[ 22%] Performing download step (download, verify and extract) for 'scintilla-populate'
-- Downloading...
dst='/local/mnt/workspace/project/textadept/build/_deps/scintilla-subbuild/scintilla-populate-prefix/src/scintilla537.tgz'
timeout='none'
inactivity timeout='none'
-- Using src='https://www.scintilla.org/scintilla537.tgz'
-- [download 0% complete]
-- [download 1% complete]
-- [download 2% complete]
-- [download 3% complete]
-- [download 4% complete]
-- [download 5% complete]
-- [download 6% complete]
-- [download 7% complete]
-- [download 8% complete]
-- [download 10% complete]
-- [download 11% complete]
-- [download 12% complete]
-- [download 13% complete]
-- [download 15% complete]
-- [download 16% complete]
-- [download 17% complete]
-- [download 18% complete]
-- [download 19% complete]
-- [download 20% complete]
-- [download 21% complete]
-- [download 22% complete]
-- [download 23% complete]
-- [download 24% complete]
-- [download 25% complete]
-- [download 26% complete]
-- [download 27% complete]
-- [download 28% complete]
-- [download 30% complete]
-- [download 31% complete]
-- [download 32% complete]
-- [download 33% complete]
-- [download 34% complete]
-- [download 35% complete]
-- [download 36% complete]
-- [download 37% complete]
-- [download 38% complete]
-- [download 39% complete]
-- [download 40% complete]
-- [download 41% complete]
-- [download 42% complete]
-- [download 43% complete]
-- [download 44% complete]
-- [download 45% complete]
-- [download 46% complete]
-- [download 47% complete]
-- [download 48% complete]
-- [download 49% complete]
-- [download 50% complete]
-- [download 51% complete]
-- [download 52% complete]
-- [download 53% complete]
-- [download 54% complete]
-- [download 55% complete]
-- [download 56% complete]
-- [download 58% complete]
-- [download 59% complete]
-- [download 60% complete]
-- [download 61% complete]
-- [download 62% complete]
-- [download 63% complete]
-- [download 64% complete]
-- [download 65% complete]
-- [download 66% complete]
-- [download 67% complete]
-- [download 69% complete]
-- [download 70% complete]
-- [download 71% complete]
-- [download 72% complete]
-- [download 73% complete]
-- [download 74% complete]
-- [download 75% complete]
-- [download 76% complete]
-- [download 78% complete]
-- [download 79% complete]
-- [download 80% complete]
-- [download 81% complete]
-- [download 82% complete]
-- [download 83% complete]
-- [download 84% complete]
-- [download 86% complete]
-- [download 87% complete]
-- [download 91% complete]
-- [download 92% complete]
-- [download 93% complete]
-- [download 96% complete]
-- [download 97% complete]
-- [download 98% complete]
-- [download 100% complete]
-- Downloading... done
-- extracting...
src='/local/mnt/workspace/project/textadept/build/_deps/scintilla-subbuild/scintilla-populate-prefix/src/scintilla537.tgz'
dst='/local/mnt/workspace/project/textadept/build/_deps/scintilla-src'
-- extracting... [tar xfz]
-- extracting... [analysis]
-- extracting... [rename]
-- extracting... [clean up]
-- extracting... done
[ 33%] No update step for 'scintilla-populate'
[ 44%] Performing patch step for 'scintilla-populate'
patching file src/XPM.cxx
Hunk #1 succeeded at 96 (offset 4 lines).
patching file src/CellBuffer.cxx
patching file qt/ScintillaEditBase/ScintillaEditBase.h
[ 55%] No configure step for 'scintilla-populate'
[ 66%] No build step for 'scintilla-populate'
[ 77%] No install step for 'scintilla-populate'
[ 88%] No test step for 'scintilla-populate'
[100%] Completed 'scintilla-populate'
[100%] Built target scintilla-populate
CMake Warning (dev) at /usr/local/share/cmake-3.26/Modules/FetchContent.cmake:1282 (message):
The DOWNLOAD_EXTRACT_TIMESTAMP option was not given and policy CMP0135 is
not set. The policy's OLD behavior will be used. When using a URL
download, the timestamps of extracted files should preferably be that of
the time of extraction, otherwise code that depends on the extracted
contents might not be rebuilt if the URL changes. The OLD behavior
preserves the timestamps from the archive instead, but this is usually not
what you want. Update your project to the NEW behavior or specify the
DOWNLOAD_EXTRACT_TIMESTAMP option with a value of true to avoid this
robustness issue.
Call Stack (most recent call first):
CMakeLists.txt:87 (FetchContent_Declare)
This warning is for project developers. Use -Wno-dev to suppress it.

-- Populating lexilla
-- Configuring done (0.0s)
-- Generating done (0.0s)
-- Build files have been written to: /local/mnt/workspace/project/textadept/build/_deps/lexilla-subbuild
[ 11%] Creating directories for 'lexilla-populate'
[ 22%] Performing download step (download, verify and extract) for 'lexilla-populate'
-- Downloading...
dst='/local/mnt/workspace/project/textadept/build/_deps/lexilla-subbuild/lexilla-populate-prefix/src/lexilla510.tgz'
timeout='none'
inactivity timeout='none'
-- Using src='https://www.scintilla.org/lexilla510.tgz'
-- [download 1% complete]
-- [download 3% complete]
-- [download 4% complete]
-- [download 7% complete]
-- [download 9% complete]
-- [download 10% complete]
-- [download 11% complete]
-- [download 13% complete]
-- [download 14% complete]
-- [download 16% complete]
-- [download 17% complete]
-- [download 18% complete]
-- [download 19% complete]
-- [download 20% complete]
-- [download 21% complete]
-- [download 22% complete]
-- [download 23% complete]
-- [download 24% complete]
-- [download 25% complete]
-- [download 27% complete]
-- [download 32% complete]
-- [download 33% complete]
-- [download 34% complete]
-- [download 35% complete]
-- [download 36% complete]
-- [download 38% complete]
-- [download 41% complete]
-- [download 42% complete]
-- [download 43% complete]
-- [download 44% complete]
-- [download 46% complete]
-- [download 47% complete]
-- [download 48% complete]
-- [download 49% complete]
-- [download 50% complete]
-- [download 51% complete]
-- [download 53% complete]
-- [download 54% complete]
-- [download 55% complete]
-- [download 56% complete]
-- [download 59% complete]
-- [download 60% complete]
-- [download 61% complete]
-- [download 62% complete]
-- [download 63% complete]
-- [download 64% complete]
-- [download 65% complete]
-- [download 67% complete]
-- [download 69% complete]
-- [download 71% complete]
-- [download 72% complete]
-- [download 77% complete]
-- [download 78% complete]
-- [download 80% complete]
-- [download 82% complete]
-- [download 88% complete]
-- [download 89% complete]
-- [download 92% complete]
-- [download 98% complete]
-- [download 100% complete]
-- Downloading... done
-- extracting...
src='/local/mnt/workspace/project/textadept/build/_deps/lexilla-subbuild/lexilla-populate-prefix/src/lexilla510.tgz'
dst='/local/mnt/workspace/project/textadept/build/_deps/lexilla-src'
-- extracting... [tar xfz]
-- extracting... [analysis]
-- extracting... [rename]
-- extracting... [clean up]
-- extracting... done
[ 33%] No update step for 'lexilla-populate'
[ 44%] No patch step for 'lexilla-populate'
[ 55%] No configure step for 'lexilla-populate'
[ 66%] No build step for 'lexilla-populate'
[ 77%] No install step for 'lexilla-populate'
[ 88%] No test step for 'lexilla-populate'
[100%] Completed 'lexilla-populate'
[100%] Built target lexilla-populate
CMake Warning (dev) at /usr/local/share/cmake-3.26/Modules/FetchContent.cmake:1282 (message):
The DOWNLOAD_EXTRACT_TIMESTAMP option was not given and policy CMP0135 is
not set. The policy's OLD behavior will be used. When using a URL
download, the timestamps of extracted files should preferably be that of
the time of extraction, otherwise code that depends on the extracted
contents might not be rebuilt if the URL changes. The OLD behavior
preserves the timestamps from the archive instead, but this is usually not
what you want. Update your project to the NEW behavior or specify the
DOWNLOAD_EXTRACT_TIMESTAMP option with a value of true to avoid this
robustness issue.
Call Stack (most recent call first):
CMakeLists.txt:98 (FetchContent_Declare)
This warning is for project developers. Use -Wno-dev to suppress it.

-- Populating scinterm
-- Configuring done (0.0s)
-- Generating done (0.0s)
-- Build files have been written to: /local/mnt/workspace/project/textadept/build/_deps/scinterm-subbuild
[ 11%] Creating directories for 'scinterm-populate'
[ 22%] Performing download step (download, verify and extract) for 'scinterm-populate'
-- Downloading...
dst='/local/mnt/workspace/project/textadept/build/_deps/scinterm-subbuild/scinterm-populate-prefix/src/scinterm_5.0.zip'
timeout='none'
inactivity timeout='none'
-- Using src='https://github.com/orbitalquark/scinterm/archive/scinterm_5.0.zip'
-- Downloading... done
-- extracting...
src='/local/mnt/workspace/project/textadept/build/_deps/scinterm-subbuild/scinterm-populate-prefix/src/scinterm_5.0.zip'
dst='/local/mnt/workspace/project/textadept/build/_deps/scinterm-src'
-- extracting... [tar xfz]
-- extracting... [analysis]
-- extracting... [rename]
-- extracting... [clean up]
-- extracting... done
[ 33%] No update step for 'scinterm-populate'
[ 44%] No patch step for 'scinterm-populate'
[ 55%] No configure step for 'scinterm-populate'
[ 66%] No build step for 'scinterm-populate'
[ 77%] No install step for 'scinterm-populate'
[ 88%] No test step for 'scinterm-populate'
[100%] Completed 'scinterm-populate'
[100%] Built target scinterm-populate
CMake Warning (dev) at /usr/local/share/cmake-3.26/Modules/FetchContent.cmake:1282 (message):
The DOWNLOAD_EXTRACT_TIMESTAMP option was not given and policy CMP0135 is
not set. The policy's OLD behavior will be used. When using a URL
download, the timestamps of extracted files should preferably be that of
the time of extraction, otherwise code that depends on the extracted
contents might not be rebuilt if the URL changes. The OLD behavior
preserves the timestamps from the archive instead, but this is usually not
what you want. Update your project to the NEW behavior or specify the
DOWNLOAD_EXTRACT_TIMESTAMP option with a value of true to avoid this
robustness issue.
Call Stack (most recent call first):
CMakeLists.txt:109 (FetchContent_Declare)
This warning is for project developers. Use -Wno-dev to suppress it.

-- Populating scintillua
-- Configuring done (0.0s)
-- Generating done (0.0s)
-- Build files have been written to: /local/mnt/workspace/project/textadept/build/_deps/scintillua-subbuild
[ 11%] Creating directories for 'scintillua-populate'
[ 22%] Performing download step (download, verify and extract) for 'scintillua-populate'
-- Downloading...
dst='/local/mnt/workspace/project/textadept/build/_deps/scintillua-subbuild/scintillua-populate-prefix/src/48a6fc9511ec67993e43ac7f5a33efc616b7ea32.zip'
timeout='none'
inactivity timeout='none'
-- Using src='https://github.com/orbitalquark/scintillua/archive/48a6fc9511ec67993e43ac7f5a33efc616b7ea32.zip'
-- Downloading... done
-- extracting...
src='/local/mnt/workspace/project/textadept/build/_deps/scintillua-subbuild/scintillua-populate-prefix/src/48a6fc9511ec67993e43ac7f5a33efc616b7ea32.zip'
dst='/local/mnt/workspace/project/textadept/build/_deps/scintillua-src'
-- extracting... [tar xfz]
-- extracting... [analysis]
-- extracting... [rename]
-- extracting... [clean up]
-- extracting... done
[ 33%] No update step for 'scintillua-populate'
[ 44%] No patch step for 'scintillua-populate'
[ 55%] No configure step for 'scintillua-populate'
[ 66%] No build step for 'scintillua-populate'
[ 77%] No install step for 'scintillua-populate'
[ 88%] No test step for 'scintillua-populate'
[100%] Completed 'scintillua-populate'
[100%] Built target scintillua-populate
CMake Warning (dev) at /usr/local/share/cmake-3.26/Modules/FetchContent.cmake:1282 (message):
The DOWNLOAD_EXTRACT_TIMESTAMP option was not given and policy CMP0135 is
not set. The policy's OLD behavior will be used. When using a URL
download, the timestamps of extracted files should preferably be that of
the time of extraction, otherwise code that depends on the extracted
contents might not be rebuilt if the URL changes. The OLD behavior
preserves the timestamps from the archive instead, but this is usually not
what you want. Update your project to the NEW behavior or specify the
DOWNLOAD_EXTRACT_TIMESTAMP option with a value of true to avoid this
robustness issue.
Call Stack (most recent call first):
CMakeLists.txt:117 (FetchContent_Declare)
This warning is for project developers. Use -Wno-dev to suppress it.

-- Populating lua
-- Configuring done (0.0s)
-- Generating done (0.0s)
-- Build files have been written to: /local/mnt/workspace/project/textadept/build/_deps/lua-subbuild
[ 11%] Creating directories for 'lua-populate'
[ 22%] Performing download step (download, verify and extract) for 'lua-populate'
-- Downloading...
dst='/local/mnt/workspace/project/textadept/build/_deps/lua-subbuild/lua-populate-prefix/src/lua-5.4.6.tar.gz'
timeout='none'
inactivity timeout='none'
-- Using src='https://www.lua.org/ftp/lua-5.4.6.tar.gz'
-- [download 0% complete]
-- [download 9% complete]
-- [download 14% complete]
-- [download 18% complete]
-- [download 23% complete]
-- [download 27% complete]
-- [download 32% complete]
-- [download 36% complete]
-- [download 41% complete]
-- [download 45% complete]
-- [download 50% complete]
-- [download 54% complete]
-- [download 59% complete]
-- [download 63% complete]
-- [download 68% complete]
-- [download 72% complete]
-- [download 77% complete]
-- [download 81% complete]
-- [download 86% complete]
-- [download 90% complete]
-- [download 95% complete]
-- [download 100% complete]
-- Downloading... done
-- extracting...
src='/local/mnt/workspace/project/textadept/build/_deps/lua-subbuild/lua-populate-prefix/src/lua-5.4.6.tar.gz'
dst='/local/mnt/workspace/project/textadept/build/_deps/lua-src'
-- extracting... [tar xfz]
-- extracting... [analysis]
-- extracting... [rename]
-- extracting... [clean up]
-- extracting... done
[ 33%] No update step for 'lua-populate'
[ 44%] Performing patch step for 'lua-populate'
patching file src/luaconf.h
Hunk #1 succeeded at 210 (offset 44 lines).
[ 55%] No configure step for 'lua-populate'
[ 66%] No build step for 'lua-populate'
[ 77%] No install step for 'lua-populate'
[ 88%] No test step for 'lua-populate'
[100%] Completed 'lua-populate'
[100%] Built target lua-populate
CMake Warning (dev) at /usr/local/share/cmake-3.26/Modules/FetchContent.cmake:1282 (message):
The DOWNLOAD_EXTRACT_TIMESTAMP option was not given and policy CMP0135 is
not set. The policy's OLD behavior will be used. When using a URL
download, the timestamps of extracted files should preferably be that of
the time of extraction, otherwise code that depends on the extracted
contents might not be rebuilt if the URL changes. The OLD behavior
preserves the timestamps from the archive instead, but this is usually not
what you want. Update your project to the NEW behavior or specify the
DOWNLOAD_EXTRACT_TIMESTAMP option with a value of true to avoid this
robustness issue.
Call Stack (most recent call first):
CMakeLists.txt:125 (FetchContent_Declare)
This warning is for project developers. Use -Wno-dev to suppress it.

-- Populating lpeg
-- Configuring done (0.0s)
-- Generating done (0.0s)
-- Build files have been written to: /local/mnt/workspace/project/textadept/build/_deps/lpeg-subbuild
[ 11%] Creating directories for 'lpeg-populate'
[ 22%] Performing download step (download, verify and extract) for 'lpeg-populate'
-- Downloading...
dst='/local/mnt/workspace/project/textadept/build/_deps/lpeg-subbuild/lpeg-populate-prefix/src/lpeg-1.1.0.tar.gz'
timeout='none'
inactivity timeout='none'
-- Using src='https://www.inf.puc-rio.br/~roberto/lpeg/lpeg-1.1.0.tar.gz'
-- [download 0% complete]
-- [download 21% complete]
-- [download 42% complete]
-- [download 63% complete]
-- [download 84% complete]
-- [download 100% complete]
-- Downloading... done
-- extracting...
src='/local/mnt/workspace/project/textadept/build/_deps/lpeg-subbuild/lpeg-populate-prefix/src/lpeg-1.1.0.tar.gz'
dst='/local/mnt/workspace/project/textadept/build/_deps/lpeg-src'
-- extracting... [tar xfz]
-- extracting... [analysis]
-- extracting... [rename]
-- extracting... [clean up]
-- extracting... done
[ 33%] No update step for 'lpeg-populate'
[ 44%] No patch step for 'lpeg-populate'
[ 55%] No configure step for 'lpeg-populate'
[ 66%] No build step for 'lpeg-populate'
[ 77%] No install step for 'lpeg-populate'
[ 88%] No test step for 'lpeg-populate'
[100%] Completed 'lpeg-populate'
[100%] Built target lpeg-populate
CMake Warning (dev) at /usr/local/share/cmake-3.26/Modules/FetchContent.cmake:1282 (message):
The DOWNLOAD_EXTRACT_TIMESTAMP option was not given and policy CMP0135 is
not set. The policy's OLD behavior will be used. When using a URL
download, the timestamps of extracted files should preferably be that of
the time of extraction, otherwise code that depends on the extracted
contents might not be rebuilt if the URL changes. The OLD behavior
preserves the timestamps from the archive instead, but this is usually not
what you want. Update your project to the NEW behavior or specify the
DOWNLOAD_EXTRACT_TIMESTAMP option with a value of true to avoid this
robustness issue.
Call Stack (most recent call first):
CMakeLists.txt:133 (FetchContent_Declare)
This warning is for project developers. Use -Wno-dev to suppress it.

-- Populating lfs
-- Configuring done (0.0s)
-- Generating done (0.0s)
-- Build files have been written to: /local/mnt/workspace/project/textadept/build/_deps/lfs-subbuild
[ 11%] Creating directories for 'lfs-populate'
[ 22%] Performing download step (download, verify and extract) for 'lfs-populate'
-- Downloading...
dst='/local/mnt/workspace/project/textadept/build/_deps/lfs-subbuild/lfs-populate-prefix/src/v1_8_0.zip'
timeout='none'
inactivity timeout='none'
-- Using src='https://github.com/keplerproject/luafilesystem/archive/v1_8_0.zip'
-- Downloading... done
-- extracting...
src='/local/mnt/workspace/project/textadept/build/_deps/lfs-subbuild/lfs-populate-prefix/src/v1_8_0.zip'
dst='/local/mnt/workspace/project/textadept/build/_deps/lfs-src'
-- extracting... [tar xfz]
-- extracting... [analysis]
-- extracting... [rename]
-- extracting... [clean up]
-- extracting... done
[ 33%] No update step for 'lfs-populate'
[ 44%] No patch step for 'lfs-populate'
[ 55%] No configure step for 'lfs-populate'
[ 66%] No build step for 'lfs-populate'
[ 77%] No install step for 'lfs-populate'
[ 88%] No test step for 'lfs-populate'
[100%] Completed 'lfs-populate'
[100%] Built target lfs-populate
CMake Warning (dev) at /usr/local/share/cmake-3.26/Modules/FetchContent.cmake:1282 (message):
The DOWNLOAD_EXTRACT_TIMESTAMP option was not given and policy CMP0135 is
not set. The policy's OLD behavior will be used. When using a URL
download, the timestamps of extracted files should preferably be that of
the time of extraction, otherwise code that depends on the extracted
contents might not be rebuilt if the URL changes. The OLD behavior
preserves the timestamps from the archive instead, but this is usually not
what you want. Update your project to the NEW behavior or specify the
DOWNLOAD_EXTRACT_TIMESTAMP option with a value of true to avoid this
robustness issue.
Call Stack (most recent call first):
CMakeLists.txt:144 (FetchContent_Declare)
This warning is for project developers. Use -Wno-dev to suppress it.

-- Populating regex
-- Configuring done (0.0s)
-- Generating done (0.0s)
-- Build files have been written to: /local/mnt/workspace/project/textadept/build/_deps/regex-subbuild
[ 11%] Creating directories for 'regex-populate'
[ 22%] Performing download step (download, verify and extract) for 'regex-populate'
-- Downloading...
dst='/local/mnt/workspace/project/textadept/build/_deps/regex-subbuild/regex-populate-prefix/src/1.0.zip'
timeout='none'
inactivity timeout='none'
-- Using src='https://github.com/orbitalquark/lua-std-regex/archive/1.0.zip'
-- Downloading... done
-- extracting...
src='/local/mnt/workspace/project/textadept/build/_deps/regex-subbuild/regex-populate-prefix/src/1.0.zip'
dst='/local/mnt/workspace/project/textadept/build/_deps/regex-src'
-- extracting... [tar xfz]
-- extracting... [analysis]
-- extracting... [rename]
-- extracting... [clean up]
-- extracting... done
[ 33%] No update step for 'regex-populate'
[ 44%] No patch step for 'regex-populate'
[ 55%] No configure step for 'regex-populate'
[ 66%] No build step for 'regex-populate'
[ 77%] No install step for 'regex-populate'
[ 88%] No test step for 'regex-populate'
[100%] Completed 'regex-populate'
[100%] Built target regex-populate
CMake Warning (dev) at /usr/local/share/cmake-3.26/Modules/FetchContent.cmake:1282 (message):
The DOWNLOAD_EXTRACT_TIMESTAMP option was not given and policy CMP0135 is
not set. The policy's OLD behavior will be used. When using a URL
download, the timestamps of extracted files should preferably be that of
the time of extraction, otherwise code that depends on the extracted
contents might not be rebuilt if the URL changes. The OLD behavior
preserves the timestamps from the archive instead, but this is usually not
what you want. Update your project to the NEW behavior or specify the
DOWNLOAD_EXTRACT_TIMESTAMP option with a value of true to avoid this
robustness issue.
Call Stack (most recent call first):
CMakeLists.txt:152 (FetchContent_Declare)
This warning is for project developers. Use -Wno-dev to suppress it.

-- Populating cdk
-- Configuring done (0.0s)
-- Generating done (0.0s)
-- Build files have been written to: /local/mnt/workspace/project/textadept/build/_deps/cdk-subbuild
[ 11%] Creating directories for 'cdk-populate'
[ 22%] Performing download step (download, verify and extract) for 'cdk-populate'
-- Downloading...
dst='/local/mnt/workspace/project/textadept/build/_deps/cdk-subbuild/cdk-populate-prefix/src/t20200923.tar.gz'
timeout='none'
inactivity timeout='none'
-- Using src='https://github.com/ThomasDickey/cdk-snapshots/archive/refs/tags/t20200923.tar.gz'
-- Downloading... done
-- extracting...
src='/local/mnt/workspace/project/textadept/build/_deps/cdk-subbuild/cdk-populate-prefix/src/t20200923.tar.gz'
dst='/local/mnt/workspace/project/textadept/build/_deps/cdk-src'
-- extracting... [tar xfz]
-- extracting... [analysis]
-- extracting... [rename]
-- extracting... [clean up]
-- extracting... done
[ 33%] No update step for 'cdk-populate'
[ 44%] Performing patch step for 'cdk-populate'
patching file binding.c
patching file cdk.c
Hunk #1 succeeded at 454 (offset 1 line).
Hunk #2 succeeded at 492 (offset -7 lines).
Hunk #3 succeeded at 798 (offset 7 lines).
Hunk #4 succeeded at 1255 (offset -28 lines).
Hunk #5 succeeded at 1281 (offset -29 lines).
Hunk #6 succeeded at 1403 (offset 25 lines).
Hunk #7 succeeded at 1429 (offset 24 lines).
patching file include/cdk.h
patching file include/cdk_config.h
patching file include/cdk_util.h
patching file include/cdk_version.h
patching file cdkscreen.c
patching file draw.c
Hunk #1 succeeded at 349 (offset 11 lines).
patching file entry.c
Hunk #1 succeeded at 222 (offset -1 lines).
Hunk #2 succeeded at 244 (offset -1 lines).
Hunk #3 succeeded at 283 (offset -3 lines).
Hunk #4 succeeded at 331 (offset -3 lines).
Hunk #5 succeeded at 350 (offset -3 lines).
Hunk #6 succeeded at 365 (offset -3 lines).
Hunk #7 succeeded at 559 (offset -1 lines).
Hunk #8 succeeded at 582 with fuzz 1 (offset -2 lines).
Hunk #9 succeeded at 687 with fuzz 2 (offset -3 lines).
Hunk #11 succeeded at 712 (offset 1 line).
patching file fselect.c
Hunk #2 succeeded at 1110 (offset 6 lines).
Hunk #3 succeeded at 1323 (offset 7 lines).
Hunk #4 succeeded at 1382 (offset 7 lines).
patching file gen-scale.c
patching file include/gen-scale.h
patching file itemlist.c
patching file matrix.c
patching file view_info.c
patching file viewer.c
patching file include/slider.h
patching file slider.c
[ 55%] No configure step for 'cdk-populate'
[ 66%] No build step for 'cdk-populate'
[ 77%] No install step for 'cdk-populate'
[ 88%] No test step for 'cdk-populate'
[100%] Completed 'cdk-populate'
[100%] Built target cdk-populate
CMake Warning (dev) at /usr/local/share/cmake-3.26/Modules/FetchContent.cmake:1282 (message):
The DOWNLOAD_EXTRACT_TIMESTAMP option was not given and policy CMP0135 is
not set. The policy's OLD behavior will be used. When using a URL
download, the timestamps of extracted files should preferably be that of
the time of extraction, otherwise code that depends on the extracted
contents might not be rebuilt if the URL changes. The OLD behavior
preserves the timestamps from the archive instead, but this is usually not
what you want. Update your project to the NEW behavior or specify the
DOWNLOAD_EXTRACT_TIMESTAMP option with a value of true to avoid this
robustness issue.
Call Stack (most recent call first):
CMakeLists.txt:160 (FetchContent_Declare)
This warning is for project developers. Use -Wno-dev to suppress it.

-- Populating termkey
-- Configuring done (0.0s)
-- Generating done (0.0s)
-- Build files have been written to: /local/mnt/workspace/project/textadept/build/_deps/termkey-subbuild
[ 11%] Creating directories for 'termkey-populate'
[ 22%] Performing download step (download, verify and extract) for 'termkey-populate'
-- Downloading...
dst='/local/mnt/workspace/project/textadept/build/_deps/termkey-subbuild/termkey-populate-prefix/src/libtermkey-0.22.tar.gz'
timeout='none'
inactivity timeout='none'
-- Using src='https://www.leonerd.org.uk/code/libtermkey/libtermkey-0.22.tar.gz'
-- [download 35% complete]
-- [download 71% complete]
-- [download 100% complete]
-- Downloading... done
-- extracting...
src='/local/mnt/workspace/project/textadept/build/_deps/termkey-subbuild/termkey-populate-prefix/src/libtermkey-0.22.tar.gz'
dst='/local/mnt/workspace/project/textadept/build/_deps/termkey-src'
-- extracting... [tar xfz]
-- extracting... [analysis]
-- extracting... [rename]
-- extracting... [clean up]
-- extracting... done
[ 33%] No update step for 'termkey-populate'
[ 44%] Performing patch step for 'termkey-populate'
patching file driver-win-pdcurses.c
patching file termkey-internal.h
patching file termkey.c
Hunk #7 succeeded at 520 (offset -6 lines).
File termkey.h is read-only; trying to patch anyway
patching file termkey.h
[ 55%] No configure step for 'termkey-populate'
[ 66%] No build step for 'termkey-populate'
[ 77%] No install step for 'termkey-populate'
[ 88%] No test step for 'termkey-populate'
[100%] Completed 'termkey-populate'
[100%] Built target termkey-populate
CMake Warning (dev) at /usr/local/share/cmake-3.26/Modules/FetchContent.cmake:1282 (message):
The DOWNLOAD_EXTRACT_TIMESTAMP option was not given and policy CMP0135 is
not set. The policy's OLD behavior will be used. When using a URL
download, the timestamps of extracted files should preferably be that of
the time of extraction, otherwise code that depends on the extracted
contents might not be rebuilt if the URL changes. The OLD behavior
preserves the timestamps from the archive instead, but this is usually not
what you want. Update your project to the NEW behavior or specify the
DOWNLOAD_EXTRACT_TIMESTAMP option with a value of true to avoid this
robustness issue.
Call Stack (most recent call first):
CMakeLists.txt:191 (FetchContent_Declare)
This warning is for project developers. Use -Wno-dev to suppress it.

-- Populating singleapp
-- Configuring done (0.0s)
-- Generating done (0.0s)
-- Build files have been written to: /local/mnt/workspace/project/textadept/build/_deps/singleapp-subbuild
[ 11%] Creating directories for 'singleapp-populate'
[ 22%] Performing download step (download, verify and extract) for 'singleapp-populate'
-- Downloading...
dst='/local/mnt/workspace/project/textadept/build/_deps/singleapp-subbuild/singleapp-populate-prefix/src/v3.4.0.zip'
timeout='none'
inactivity timeout='none'
-- Using src='https://github.com/itay-grudev/SingleApplication/archive/refs/tags/v3.4.0.zip'
-- Downloading... done
-- extracting...
src='/local/mnt/workspace/project/textadept/build/_deps/singleapp-subbuild/singleapp-populate-prefix/src/v3.4.0.zip'
dst='/local/mnt/workspace/project/textadept/build/_deps/singleapp-src'
-- extracting... [tar xfz]
-- extracting... [analysis]
-- extracting... [rename]
-- extracting... [clean up]
-- extracting... done
[ 33%] No update step for 'singleapp-populate'
[ 44%] No patch step for 'singleapp-populate'
[ 55%] No configure step for 'singleapp-populate'
[ 66%] No build step for 'singleapp-populate'
[ 77%] No install step for 'singleapp-populate'
[ 88%] No test step for 'singleapp-populate'
[100%] Completed 'singleapp-populate'
[100%] Built target singleapp-populate
-- Configuring done (54.4s)
-- Generating done (0.0s)
-- Build files have been written to: /local/mnt/workspace/project/textadept/build

cmake --build build

[ 1%] Automatic MOC and UIC for target scintilla
[ 1%] Built target scintilla_autogen
[ 1%] Building CXX object CMakeFiles/scintilla.dir/scintilla_autogen/mocs_compilation.cpp.o
[ 2%] Building CXX object CMakeFiles/scintilla.dir/_deps/scintilla-src/src/AutoComplete.cxx.o
[ 3%] Building CXX object CMakeFiles/scintilla.dir/_deps/scintilla-src/src/CallTip.cxx.o
[ 3%] Building CXX object CMakeFiles/scintilla.dir/_deps/scintilla-src/src/CaseConvert.cxx.o
[ 4%] Building CXX object CMakeFiles/scintilla.dir/_deps/scintilla-src/src/CaseFolder.cxx.o
[ 4%] Building CXX object CMakeFiles/scintilla.dir/_deps/scintilla-src/src/CellBuffer.cxx.o
[ 5%] Building CXX object CMakeFiles/scintilla.dir/_deps/scintilla-src/src/ChangeHistory.cxx.o
[ 5%] Building CXX object CMakeFiles/scintilla.dir/_deps/scintilla-src/src/CharClassify.cxx.o
[ 6%] Building CXX object CMakeFiles/scintilla.dir/_deps/scintilla-src/src/CharacterCategoryMap.cxx.o
[ 7%] Building CXX object CMakeFiles/scintilla.dir/_deps/scintilla-src/src/CharacterType.cxx.o
[ 7%] Building CXX object CMakeFiles/scintilla.dir/_deps/scintilla-src/src/ContractionState.cxx.o
[ 8%] Building CXX object CMakeFiles/scintilla.dir/_deps/scintilla-src/src/DBCS.cxx.o
[ 8%] Building CXX object CMakeFiles/scintilla.dir/_deps/scintilla-src/src/Decoration.cxx.o
[ 9%] Building CXX object CMakeFiles/scintilla.dir/_deps/scintilla-src/src/Document.cxx.o
[ 9%] Building CXX object CMakeFiles/scintilla.dir/_deps/scintilla-src/src/EditModel.cxx.o
[ 10%] Building CXX object CMakeFiles/scintilla.dir/_deps/scintilla-src/src/EditView.cxx.o
[ 11%] Building CXX object CMakeFiles/scintilla.dir/_deps/scintilla-src/src/Editor.cxx.o
[ 11%] Building CXX object CMakeFiles/scintilla.dir/_deps/scintilla-src/src/Geometry.cxx.o
[ 12%] Building CXX object CMakeFiles/scintilla.dir/_deps/scintilla-src/src/Indicator.cxx.o
[ 12%] Building CXX object CMakeFiles/scintilla.dir/_deps/scintilla-src/src/KeyMap.cxx.o
[ 13%] Building CXX object CMakeFiles/scintilla.dir/_deps/scintilla-src/src/LineMarker.cxx.o
[ 13%] Building CXX object CMakeFiles/scintilla.dir/_deps/scintilla-src/src/MarginView.cxx.o
[ 14%] Building CXX object CMakeFiles/scintilla.dir/_deps/scintilla-src/src/PerLine.cxx.o
[ 15%] Building CXX object CMakeFiles/scintilla.dir/_deps/scintilla-src/src/PositionCache.cxx.o
[ 15%] Building CXX object CMakeFiles/scintilla.dir/_deps/scintilla-src/src/RESearch.cxx.o
[ 16%] Building CXX object CMakeFiles/scintilla.dir/_deps/scintilla-src/src/RunStyles.cxx.o
[ 16%] Building CXX object CMakeFiles/scintilla.dir/_deps/scintilla-src/src/ScintillaBase.cxx.o
[ 17%] Building CXX object CMakeFiles/scintilla.dir/_deps/scintilla-src/src/Selection.cxx.o
[ 17%] Building CXX object CMakeFiles/scintilla.dir/_deps/scintilla-src/src/Style.cxx.o
[ 18%] Building CXX object CMakeFiles/scintilla.dir/_deps/scintilla-src/src/UniConversion.cxx.o
[ 19%] Building CXX object CMakeFiles/scintilla.dir/_deps/scintilla-src/src/UniqueString.cxx.o
[ 19%] Building CXX object CMakeFiles/scintilla.dir/_deps/scintilla-src/src/ViewStyle.cxx.o
[ 20%] Building CXX object CMakeFiles/scintilla.dir/_deps/scintilla-src/src/XPM.cxx.o
[ 20%] Linking CXX static library libscintilla.a
[ 20%] Built target scintilla
[ 20%] Automatic MOC and UIC for target scintilla_qt
[ 20%] Built target scintilla_qt_autogen
[ 20%] Building CXX object CMakeFiles/scintilla_qt.dir/scintilla_qt_autogen/mocs_compilation.cpp.o
[ 21%] Building CXX object CMakeFiles/scintilla_qt.dir/_deps/scintilla-src/qt/ScintillaEditBase/PlatQt.cpp.o
/local/mnt/workspace/project/textadept/build/_deps/scintilla-src/qt/ScintillaEditBase/PlatQt.cpp: In function ‘QRect Scintilla::Internal::{anonymous}::ScreenRectangleForPoint(QPoint)’:
/local/mnt/workspace/project/textadept/build/_deps/scintilla-src/qt/ScintillaEditBase/PlatQt.cpp:800:16: error: invalid use of incomplete type ‘const class QDesktopWidget’
return desktop->availableGeometry(posGlobal);
^~
In file included from /usr/include/x86_64-linux-gnu/qt5/QtWidgets/QApplication:1,
from /local/mnt/workspace/project/textadept/build/_deps/scintilla-src/qt/ScintillaEditBase/PlatQt.cpp:19:
/usr/include/x86_64-linux-gnu/qt5/QtWidgets/qapplication.h:57:7: note: forward declaration of ‘class QDesktopWidget’
class QDesktopWidget;
^~~~~~~~~~~~~~
CMakeFiles/scintilla_qt.dir/build.make:89: recipe for target 'CMakeFiles/scintilla_qt.dir/_deps/scintilla-src/qt/ScintillaEditBase/PlatQt.cpp.o' failed
make[2]: *** [CMakeFiles/scintilla_qt.dir/_deps/scintilla-src/qt/ScintillaEditBase/PlatQt.cpp.o] Error 1
CMakeFiles/Makefile2:176: recipe for target 'CMakeFiles/scintilla_qt.dir/all' failed
make[1]: *** [CMakeFiles/scintilla_qt.dir/all] Error 2
Makefile:135: recipe for target 'all' failed
make: *** [all] Error 2

@fiddleyuan
Copy link
Author

The issue fixed by explicitly put #include <QDesktopWidget> in build/_deps/scintilla-src/qt/ScintillaEditBase/PlatQt.cpp

Then I came across second compile issue where filter.setFilterRegularExpression was incomplete in src/textadept_qt.cpp
and I found this was caused by 8b19c29
Now the workaround is to revert this change.

So both compilation issue was caused by QT version. Maybe my Ubuntu 18.04 is way obsolete.

@orbitalquark
Copy link
Owner

Yes, unfortunately the version of Qt provided by Ubuntu 18.04 is not high enough. The undocumented floor for Textadept is Qt 5.12 (Ubuntu 20.04). Once 20.04 becomes unsupported, the floor will probably go up to Qt 5.15 (Ubuntu 22.04) in order to simplify some code -- the code you linked to has comments that Qt 5.15 provides some things that Qt 5.12 does not have.

Also, the author of Scintilla works really hard to make sure Scintilla compiles and runs on a wide array of supported platforms. Since Ubuntu 18.04 is not supported anymore, I doubt compatibility with legacy platforms is a priority.

It's good that you found a workaround, but while Textadept may work with older versions of Qt, it may not do so indefinitely.

@fiddleyuan
Copy link
Author

Yes, unfortunately the version of Qt provided by Ubuntu 18.04 is not high enough. The undocumented floor for Textadept is Qt 5.12 (Ubuntu 20.04). Once 20.04 becomes unsupported, the floor will probably go up to Qt 5.15 (Ubuntu 22.04) in order to simplify some code -- the code you linked to has comments that Qt 5.15 provides some things that Qt 5.12 does not have.

Also, the author of Scintilla works really hard to make sure Scintilla compiles and runs on a wide array of supported platforms. Since Ubuntu 18.04 is not supported anymore, I doubt compatibility with legacy platforms is a priority.

It's good that you found a workaround, but while Textadept may work with older versions of Qt, it may not do so indefinitely.

Thanks @orbitalquark for the clarification. I'll close the issue now.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants