Closed marcie1000 closed 3 months ago
There is now a github action https://github.com/eranif/codelite/blob/master/.github/workflows/msys2.yml which follows these instructions (and does work).
WXWIN is set to C:/msys64/home/Mélodie/root
Can you try path without non-ascii characters (no accents). I suspect that wxWidgets is not found because of that :-/ leading to errors you encounter.
I am still unable to build Codelite from sources on Windows 10 22h2 19045.4717 see build output below. Any suggestions, Noel Diviney.
$ cmake .. -DCMAKE_BUILD_TYPE=Release -G"MinGW Makefiles" -DWXWIN="$HOME/root" -Wno-dev
-- The C compiler identification is Clang 18.1.8
-- The CXX compiler identification is Clang 18.1.8
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Check for working C compiler: C:/msys64/clang64/bin/cc.exe - 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: C:/msys64/clang64/bin/c++.exe - skipped
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- CMAKE_INSTALL_PREFIX is set to C:/msys64/home/esdev/esdevsw/codelite/build-release/install
-- Found SQLite3: C:/msys64/mingw64/include (found version "3.46.0")
-- Found BISON: C:/msys64/usr/bin/bison.exe (found version "3.8.2")
-- Found FLEX: C:/msys64/usr/bin/flex.exe (found version "2.6.4")
-- BUILD_DIRECTORY is set to C:/msys64/home/esdev/esdevsw/codelite/build-release
-- OS name WIN
-- CL_INSTALL_BIN is set to C:/msys64/home/esdev/esdevsw/codelite/build-release/install
-- PLUGINS_DIR is set to C:/msys64/home/esdev/esdevsw/codelite/build-release/install/plugins
-- LIBSSH_LIB is set to C:/msys64/clang64/lib/libssh.dll.a
-- WXWIN is set to C:/msys64/home/esdev/root
-- WXCFG is set to clang_x64_dll/mswu
could not open configuration file: C:/msys64/home/esdev/root/lib/clang_x64_dll/mswu/build.cfg
-- wxWidgets_USE_FILE is set to:
-- PLUGINS_DIR is set to C:/msys64/home/esdev/esdevsw/codelite/build-release/install/plugins
-- Using custom Notebook
-- Building in Release mode
-- CMAKE_INSTALL_DO_STRIP is TRUE
-- Executables will be written into C:/msys64/home/esdev/esdevsw/codelite/build-release/bin
-- Shared Objects will be written into C:/msys64/home/esdev/esdevsw/codelite/build-release/lib
-- Adding -DNDEBUG to definitions
-- OS_CODENAME is set to unknown
-- ARCH 64
-- ARCH_NAME AMD64
-- USE_SFTP is set to 1
-- Found Git: C:/msys64/usr/bin/git.exe (found version "2.45.2")
-- Performing Test CMAKE_HAVE_LIBC_PTHREAD
-- Performing Test CMAKE_HAVE_LIBC_PTHREAD - Failed
-- Check if compiler accepts -pthread
-- Check if compiler accepts -pthread - yes
-- Found Threads: TRUE
-- Found OpenMP_C: -fopenmp=libomp (found version "5.1")
-- Found OpenMP_CXX: -fopenmp=libomp (found version "5.1")
-- Found OpenMP: TRUE (found version "5.1")
-- OpenMP found
-- Using llamafile
-- Warning: ccache not found - consider installing it for faster compilation or disable this warning with GGML_CCACHE=OFF
-- CMAKE_SYSTEM_PROCESSOR: AMD64
-- x86 detected
-- 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
-- CMAKE_CURRENT_LIST_DIR=C:/msys64/home/esdev/esdevsw/codelite/wx-config-msys2/src
-- INSTALL_PATH => C:/msys64/home/esdev/esdevsw/codelite/build-release/install/bin
-- Found libhunspell: C:/msys64/mingw64/lib/libhunspell.dll.a, C:/msys64/mingw64/include/hunspell
-- WXWIN is set to C:/msys64/home/esdev/root
-- WXCFG is set to clang_x64_dll/mswu
could not open configuration file: C:/msys64/home/esdev/root/lib/clang_x64_dll/mswu/build.cfg
-- wxWidgets_USE_FILE is set to:
-- CL_SRC_ROOT is set to C:/msys64/home/esdev/esdevsw/codelite
-- Building wxCrafter as codelite plugin
-- Generating makefile for wxCrafter
-- wxCrafter - Done
CMake Error at codelite_make/CMakeLists.txt:5 (include):
include called with wrong number of arguments. include() only takes one
file.
CMake Error at TestDir/CMakeLists.txt:2 (include):
include called with wrong number of arguments. include() only takes one
file.
CMake Error at codelite-generate-themes/CMakeLists.txt:5 (include):
include called with wrong number of arguments. include() only takes one
file.
-- Generating post_install.cmake script
-- Including plugin.cmake module
-- CMAKE_SOURCE_DIR is set to C:/msys64/home/esdev/esdevsw/codelite
-- CL_INSTALL_BIN is set to C:/msys64/home/esdev/esdevsw/codelite/build-release/install
-- InnoSetup compiler is set to: C:/Program Files (x86)/Inno Setup 6/ISCC.exe
-- Configuring incomplete, errors occurred!
This looks like the root cause:
could not open configuration file: C:/msys64/home/esdev/root/lib/clang_x64_dll/mswu/build.cfg
Did you build wxWidgets as described here: https://docs.codelite.org/build/build_wx_widgets/#windows ?
Also, when in doubt, consult with the MSYS2 workflow (thanks to @Jarod42 who added this 👍🏽 )
https://github.com/eranif/codelite/blob/master/.github/workflows/msys2.yml
Hello Eran and Jarrod Impressed with the prompt response.
Yes I have been trying to debug this myself. the wxWidgets build log is attached below wxWidgets-Bulld-Log.txt the wx-config-msys2 build log is attached below wx-config-msys2-build-log.txt the codelite build log is attached below
Everything work fine on Linux Best regards Noel
Oops forgot codelite codelite-build-release-log.txt Noel
could not open configuration file: C:/msys64/home/esdev/root/lib/clang_x64_dll/mswu/build.cfg
C:/msys64/home/esdev/root/lib/clang_x64_dll/mswu/build.cfg seems to not exist, is there a similar file under root/lib?
I don't see from log
mingw32-make install
Which might explain that
-- wxWidgets_USE_FILE is set to: .. CMake Error at codelite_make/CMakeLists.txt:5 (include):
wxWidgets_USE_FILE
should not be empty, then the error is from include($(wxWidgets_USE_FILE))
.
That variable should be set from previous build.cfg.
So same issue that above.
wxWidgets_USE_FILE
is empty because wx-config
failed
This whole error boils down to wxWidgets not build properly.
Could you share how did you build wxWidgets? (I am mainly interested with the CMake execution line)
Hi The problem is idue to the Build instructions for bulding wxWidgets are missing things see "https://docs.codelite.org/build/build_wx_widgets/#windows" git clone https://github.com/wxWidgets/wxWidgets cd wxWidgets git submodule update --ini
mkdir build-release
cd build-release
cmake .. -G"MinGW Makefiles" -DCMAKE_BUILD_TYPE=Release \
-DwxBUILD_DEBUG_LEVEL=0 \
-DwxBUILD_MONOLITHIC=1 -DwxBUILD_SAMPLES=SOME -DwxUSE_STL=1 \
-DCMAKE_INSTALL_PREFIX=$HOME/root
mingw32-make -j$(nproc)
As you can see the "mingw32-make install" is missing
Also see "https://docs.codelite.org/build/build_from_sources/" pacman -S mingw-w64-clang-x86_64-zlib \ mingw-w64-clang-x86_64-libssh \ mingw-w64-clang-x86_64-hunspel l \ mingw-w64-clang-x86_64-openssl \ mingw-w64-clang-x86_64-sqlite3 \ flex As you can see here that " bison " is missing
I am currently creating a new install ofPro Version=22H2, OS build=19045.4717. and do a complete install of MSYS2. wxWidgets, wx-config-msys2 and Codelite. This will take a couple of hours or so to do and send.
Regards Noel
I have updated the docs & deployed them to the website:
https://docs.codelite.org/build/build_wx_widgets/#windows
(You might need to refresh the page cache)
Ok I will use the udated docs. Many thanks.. Noel.
Progress so far
wxWidges buillt and installed see attached log Build-Install-wxWidgets-log.txt
wx-config.exe build log codelite-build-log.txt
Codelite.exe build log build-wx-config.exe-log.txt
mingw32-make is not terminating last 3 lines as follows: /usr/bin/sh: line 1: /clang64/bin/clang: Bad address mingw32-make[3]: [mk_mingw.mak:93: parsers/awk.o] Error 126 mingw32-make[3]: Waiting for unfinished jobs....
Will do more testing in the morning
Cheers Noel
Maybe we should add an option to disable ctagsd and skip this ...
What is involved in doing the disable so tat I can try it out?
How is the "https://downloads.codelite.org/downloads.php?windows_weekly_64" built?
Any idea why Codelite is not included in Msys2 packages anymore?
Thanks Noen
This a build without the install for codelite and is less confusing codelite-build-only-log.txt
Noel
How is the "https://downloads.codelite.org/downloads.php?windows_weekly_64" built?
I am building it, using the same instructions that we have on the website, I am not sure why its not working for you...
Any idea why Codelite is not included in Msys2 packages anymore?
My guess? they don't like the way I package CodeLite for Windows :) which is more native rather than MSYS2 way (which is the POSIX way)
I am trying to reproduce the issue you are having, but I am unable to do it...
Running git clean -xfd
inside the ctags
folder and rebuilding CodeLite does not reproduce this for me
From reading the log file you uploaded, this makefile rule seems to cause the error:
copy_gnulib_heads:
cp win32/config_mingw.h config.h
cp win32/gnulib_h/langinfo.h win32/gnulib_h/locale.h win32/gnulib_h/unistd.h win32/gnulib_h/fnmatch.h win32/gnulib_h/string.h win32/gnulib_h/wchar.h gnulib
Which produces this error on your machine:
cp: cannot create regular file 'gnulib/string.h': Permission denied
Can you check the write permissions for that folder? or maybe try running (from the root folder of CodeLite sources):
cd ctags && git clean -xfd
You can also try and run the command manually and maybe you will get something more useful in the error message:
cd ctags
cp win32/gnulib_h/langinfo.h win32/gnulib_h/locale.h win32/gnulib_h/unistd.h win32/gnulib_h/fnmatch.h win32/gnulib_h/string.h win32/gnulib_h/wchar.h gnulib
I will do some more debugging here. But I have to I have to learn as I go. Are you running on Windows 10 Pro 22H2? What Msys2 environment clang64.exe, mingw64.exe or ucrt64.exe?
Noel
Hi I moved the testing to Drive X:\ and got rid of the "permission denied". ctags is still a problem though. codelite-build-no-permission-denied-log.txt Noel
The problem you faced ("permission denied") was due to bad ctags makefile which was not built for multiple jobs ("-jN"). I fixed it by replacing the custom built makefile ("mk_mingw.mak") with proper CMakeLists.txt file
Try with latest master (make sure to update the submodules :git submodule update --init
)
Hi Eran. I can now build Codelite successfully!!!!! Thank very much for the help doing this. It has made my day. I can now continue with the development of my Embedded Systems Development Environment in which Codelite is playing an important part. Successfull-Codelide-Build-lov.txt I will keep you posted on progress.
Cheers Noel
Closing this issue
Hello, I'm trying to build codelite from sources on windows 10 64bits, following the instructions in documentation. The command
cmake .. -DCMAKE_BUILD_TYPE=Release -G"MinGW Makefiles" -DWXWIN=$HOME/root"
gives a lot of warningsinclude() given empty file name (ignored)
and several errors such asCMake Error at codelite_make/CMakeLists.txt:5 (include): include called with wrong number of arguments. include() only takes one file.
. I'm a beginner in using CMake so I don't really know if this is a bug or if I made something wrong during the process.Command output:
``` cmake .. -DCMAKE_BUILD_TYPE=Release -G"MinGW Makefiles" -DWXWIN=$HOME/root -- The C compiler identification is Clang 15.0.7 -- The CXX compiler identification is Clang 15.0.7 -- Detecting C compiler ABI info -- Detecting C compiler ABI info - done -- Check for working C compiler: C:/msys64/clang64/bin/cc.exe - 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: C:/msys64/clang64/bin/c++.exe - skipped -- Detecting CXX compile features -- Detecting CXX compile features - done -- CMAKE_INSTALL_PREFIX is set to C:/Programmation/git-clones/codelite/build-release/ install -- Found SQLite3: C:/msys64/clang64/include (found version "3.40.1") -- BUILD_DIRECTORY is set to C:/Programmation/git-clones/codelite/build-release -- OS name WIN -- CL_INSTALL_BIN is set to C:/Programmation/git-clones/codelite/build-release/instal l -- PLUGINS_DIR is set to C:/Programmation/git-clones/codelite/build-release/install/p lugins -- LIBSSH_LIB is set to C:/msys64/clang64/lib/libssh.dll.a -- WXWIN is set to C:/msys64/home/Mélodie/root -- WXCFG is set to clang_x64_dll/mswu -- wxWidgets_USE_FILE is set to: -- PLUGINS_DIR is set to C:/Programmation/git-clones/codelite/build-release/install/p lugins -- Using custom Notebook -- Building in Release mode -- CMAKE_INSTALL_DO_STRIP is TRUE -- Executables will be written into C:/Programmation/git-clones/codelite/build-releas e/bin -- Shared Objects will be written into C:/Programmation/git-clones/codelite/build-rel ease/lib -- Adding -DNDEBUG to definitions -- OS_CODENAME is set to unknown -- ARCH 64 -- ARCH_NAME x86_64 -- USE_SFTP is set to 1 CMake Warning (dev) at sdk/wxsqlite3/CMakeLists.txt:7 (include): include() given empty file name (ignored). This warning is for project developers. Use -Wno-dev to suppress it. CMake Warning (dev) at sdk/wxshapeframework/CMakeLists.txt:7 (include): include() given empty file name (ignored). This warning is for project developers. Use -Wno-dev to suppress it. CMake Warning (dev) at sdk/databaselayer/CMakeLists.txt:7 (include): include() given empty file name (ignored). This warning is for project developers. Use -Wno-dev to suppress it. CMake Warning (dev) at CodeLite/CMakeLists.txt:5 (include): include() given empty file name (ignored). This warning is for project developers. Use -Wno-dev to suppress it. CMake Warning (dev) at Plugin/CMakeLists.txt:7 (include): include() given empty file name (ignored). This warning is for project developers. Use -Wno-dev to suppress it. CMake Warning (dev) at PCH/CMakeLists.txt:5 (include): include() given empty file name (ignored). This warning is for project developers. Use -Wno-dev to suppress it. -- CMAKE_CURRENT_LIST_DIR=C:/Programmation/git-clones/codelite/wx-config-msys2/src -- INSTALL_PATH => C:/Programmation/git-clones/codelite/build-release/install/bin CMake Warning (dev) at abbreviation/CMakeLists.txt:10 (include): include() given empty file name (ignored). This warning is for project developers. Use -Wno-dev to suppress it. CMake Warning (dev) at Gizmos/CMakeLists.txt:10 (include): include() given empty file name (ignored). This warning is for project developers. Use -Wno-dev to suppress it. CMake Warning (dev) at Debugger/CMakeLists.txt:10 (include): include() given empty file name (ignored). This warning is for project developers. Use -Wno-dev to suppress it. CMake Warning (dev) at UnitTestCPP/CMakeLists.txt:10 (include): include() given empty file name (ignored). This warning is for project developers. Use -Wno-dev to suppress it. CMake Warning (dev) at QmakePlugin/CMakeLists.txt:10 (include): include() given empty file name (ignored). This warning is for project developers. Use -Wno-dev to suppress it. CMake Warning (dev) at cppchecker/CMakeLists.txt:10 (include): include() given empty file name (ignored). This warning is for project developers. Use -Wno-dev to suppress it. CMake Warning (dev) at wxformbuilder/CMakeLists.txt:13 (include): include() given empty file name (ignored). This warning is for project developers. Use -Wno-dev to suppress it. CMake Warning (dev) at CMakePlugin/CMakeLists.txt:16 (include): include() given empty file name (ignored). This warning is for project developers. Use -Wno-dev to suppress it. CMake Warning (dev) at cscope/CMakeLists.txt:10 (include): include() given empty file name (ignored). This warning is for project developers. Use -Wno-dev to suppress it. CMake Warning (dev) at EOSWiki/CMakeLists.txt:10 (include): include() given empty file name (ignored). This warning is for project developers. Use -Wno-dev to suppress it. CMake Warning (dev) at ContinuousBuild/CMakeLists.txt:10 (include): include() given empty file name (ignored). This warning is for project developers. Use -Wno-dev to suppress it. CMake Warning (dev) at AutoSave/CMakeLists.txt:10 (include): include() given empty file name (ignored). This warning is for project developers. Use -Wno-dev to suppress it. CMake Warning (dev) at CodeLiteDiff/CMakeLists.txt:12 (include): include() given empty file name (ignored). This warning is for project developers. Use -Wno-dev to suppress it. CMake Warning (dev) at git/CMakeLists.txt:10 (include): include() given empty file name (ignored). This warning is for project developers. Use -Wno-dev to suppress it. CMake Warning (dev) at Outline/CMakeLists.txt:10 (include): include() given empty file name (ignored). This warning is for project developers. Use -Wno-dev to suppress it. CMake Warning (dev) at CodeFormatter/CMakeLists.txt:10 (include): include() given empty file name (ignored). This warning is for project developers. Use -Wno-dev to suppress it. CMake Warning (dev) at Copyright/CMakeLists.txt:10 (include): include() given empty file name (ignored). This warning is for project developers. Use -Wno-dev to suppress it. CMake Warning (dev) at DatabaseExplorer/CMakeLists.txt:10 (include): include() given empty file name (ignored). This warning is for project developers. Use -Wno-dev to suppress it. CMake Warning (dev) at ExternalTools/CMakeLists.txt:10 (include): include() given empty file name (ignored). This warning is for project developers. Use -Wno-dev to suppress it. CMake Warning (dev) at SnipWiz/CMakeLists.txt:10 (include): include() given empty file name (ignored). This warning is for project developers. Use -Wno-dev to suppress it. CMake Warning (dev) at Subversion2/CMakeLists.txt:10 (include): include() given empty file name (ignored). This warning is for project developers. Use -Wno-dev to suppress it. CMake Warning (dev) at ZoomNavigator/CMakeLists.txt:10 (include): include() given empty file name (ignored). This warning is for project developers. Use -Wno-dev to suppress it. -- Found libhunspell: C:/msys64/clang64/lib/libhunspell.dll.a, C:/msys64/clang64/incl ude/hunspell CMake Warning (dev) at SpellChecker/CMakeLists.txt:46 (include): include() given empty file name (ignored). This warning is for project developers. Use -Wno-dev to suppress it. CMake Warning (dev) at Tail/CMakeLists.txt:10 (include): include() given empty file name (ignored). This warning is for project developers. Use -Wno-dev to suppress it. CMake Warning (dev) at EditorConfigPlugin/CMakeLists.txt:10 (include): include() given empty file name (ignored). This warning is for project developers. Use -Wno-dev to suppress it. CMake Warning (dev) at PHPLint/CMakeLists.txt:10 (include): include() given empty file name (ignored). This warning is for project developers. Use -Wno-dev to suppress it. CMake Warning (dev) at PHPRefactoring/CMakeLists.txt:10 (include): include() given empty file name (ignored). This warning is for project developers. Use -Wno-dev to suppress it. CMake Warning (dev) at codelite_vim/CMakeLists.txt:10 (include): include() given empty file name (ignored). This warning is for project developers. Use -Wno-dev to suppress it. CMake Warning (dev) at Docker/CMakeLists.txt:10 (include): include() given empty file name (ignored). This warning is for project developers. Use -Wno-dev to suppress it. CMake Warning (dev) at LanguageServer/CMakeLists.txt:10 (include): include() given empty file name (ignored). This warning is for project developers. Use -Wno-dev to suppress it. CMake Warning (dev) at Rust/CMakeLists.txt:10 (include): include() given empty file name (ignored). This warning is for project developers. Use -Wno-dev to suppress it. CMake Warning (dev) at SFTP/CMakeLists.txt:10 (include): include() given empty file name (ignored). This warning is for project developers. Use -Wno-dev to suppress it. CMake Warning (dev) at Remoty/CMakeLists.txt:10 (include): include() given empty file name (ignored). This warning is for project developers. Use -Wno-dev to suppress it. -- WXWIN is set to C:/msys64/home/Mélodie/root -- WXCFG is set to clang_x64_dll/mswu -- wxWidgets_USE_FILE is set to: CMake Warning (dev) at wxdap/dap/CMakeLists.txt:30 (include): include() given empty file name (ignored). This warning is for project developers. Use -Wno-dev to suppress it. CMake Warning (dev) at DebugAdapterClient/CMakeLists.txt:9 (include): include() given empty file name (ignored). This warning is for project developers. Use -Wno-dev to suppress it. CMake Warning (dev) at codelitephp/CMakeLists.txt:13 (include): include() given empty file name (ignored). This warning is for project developers. Use -Wno-dev to suppress it. -- CL_SRC_ROOT is set to C:/Programmation/git-clones/codelite CMake Warning (dev) at WordCompletion/CMakeLists.txt:10 (include): include() given empty file name (ignored). This warning is for project developers. Use -Wno-dev to suppress it. CMake Warning (dev) at HelpPlugin/CMakeLists.txt:10 (include): include() given empty file name (ignored). This warning is for project developers. Use -Wno-dev to suppress it. CMake Warning (dev) at WebTools/CMakeLists.txt:10 (include): include() given empty file name (ignored). This warning is for project developers. Use -Wno-dev to suppress it. CMake Warning (dev) at SmartCompletion/CMakeLists.txt:10 (include): include() given empty file name (ignored). This warning is for project developers. Use -Wno-dev to suppress it. CMake Warning (dev) at CallGraph/CMakeLists.txt:10 (include): include() given empty file name (ignored). This warning is for project developers. Use -Wno-dev to suppress it. -- Building wxCrafter as codelite plugin -- Generating makefile for wxCrafter CMake Warning (dev) at wxcrafter/CMakeLists.txt:29 (include): include() given empty file name (ignored). This warning is for project developers. Use -Wno-dev to suppress it. -- wxCrafter - Done CMake Error at codelite_make/CMakeLists.txt:5 (include): include called with wrong number of arguments. include() only takes one file. CMake Error at codelite_terminal/CMakeLists.txt:14 (include): include called with wrong number of arguments. include() only takes one file. CMake Error at TestDir/CMakeLists.txt:2 (include): include called with wrong number of arguments. include() only takes one file. CMake Error at codelite-generate-themes/CMakeLists.txt:5 (include): include called with wrong number of arguments. include() only takes one file. CMake Warning (dev) at ctagsd/CMakeLists.txt:17 (include): include() given empty file name (ignored). This warning is for project developers. Use -Wno-dev to suppress it. CMake Warning (dev) at LiteEditor/CMakeLists.txt:7 (include): include() given empty file name (ignored). This warning is for project developers. Use -Wno-dev to suppress it. -- Generating post_install.cmake script -- Including plugin.cmake module -- CMAKE_SOURCE_DIR is set to C:/Programmation/git-clones/codelite -- InnoSetup compiler is set to: C:/Program Files (x86)/Inno Setup 6/ISCC.exe -- Configuring incomplete, errors occurred! See also "C:/Programmation/git-clones/codelite/build-release/CMakeFiles/CMakeOutput.l og". ```