eranif / codelite

A multi purpose IDE specialized in C/C++/Rust/Python/PHP and Node.js. Written in C++
https://codelite.org
GNU General Public License v2.0
2.08k stars 444 forks source link

[Bug]: error: macro names must be identifiers #3379

Closed roko74 closed 1 month ago

roko74 commented 1 month ago

What happened?

I get the following error message with the current status in the master branch (both under Linux on the PC and in the RaspberryPi OS):

<command-line>: error: macro names must be identifiers
make[2]: *** [CxxParser/CMakeFiles/libCxxParser.dir/build.make:162: CxxParser/CMakeFiles/libCxxParser.dir/cpp.cpp.o] Error 1
make[1]: *** [CMakeFiles/Makefile2:1386: CxxParser/CMakeFiles/libCxxParser.dir/all] Error 2

Version

Self compiled

Operating system

Linux

Steps to reproduce

Simple try to build the code for Linux as described under https://docs.codelite.org/build/build_from_sources/.

Relevant log output

koeppl@LinuxMintVM:~/src.codelite/codelite/build-release$ cmake -DCMAKE_BUILD_TYPE=Release .. -DCOPY_WX_LIBS=1
-- CMAKE_INSTALL_PREFIX is set to /usr
-- BUILD_DIRECTORY is set to /home/koeppl/src.codelite/codelite/build-release
-- OS name Linux
-- wx-config used is: /usr/local/bin/wx-config
-- wxWidgets version is: 3.2.0
-- gtk version is: 3
-- CL_INSTALL_BIN is set to /usr/bin
-- PLUGINS_DIR is set to /usr/lib/codelite
-- LIBSSH_LIB is set to /usr/lib/x86_64-linux-gnu/libssh.so
-- PLUGINS_DIR is set to /usr/lib/codelite
-- Using Native Notebook class
-- Building in Release mode
-- CMAKE_INSTALL_DO_STRIP is TRUE
-- Executables will be written into /home/koeppl/src.codelite/codelite/build-release/bin
-- Shared Objects will be written into /home/koeppl/src.codelite/codelite/build-release/lib
-- Adding -DNDEBUG to definitions
-- CPACK_SYSTEM_NAME linuxmint-vera-x86_64
-- OS_CODENAME is set to vera
-- ARCH 64
-- ARCH_NAME x86_64
-- USE_SFTP is set to 1
-- Found libhunspell: /usr/lib/x86_64-linux-gnu/libhunspell.so, /usr/include/hunspell
-- CL_SRC_ROOT is set to /home/koeppl/src.codelite/codelite
-- Adding Valgrind Plugin
-- Building wxCrafter as codelite plugin 
-- Generating makefile for wxCrafter
-- wxCrafter - Done
-- wxlibsdir is: /usr/local/lib
-- Including plugin.cmake module
-- CMAKE_SOURCE_DIR is set to /home/koeppl/src.codelite/codelite
-- CL_INSTALL_BIN is set to /usr/bin
-- Configuring done
-- Generating done
-- Build files have been written to: /home/koeppl/src.codelite/codelite/build-release
koeppl@LinuxMintVM:~/src.codelite/codelite/build-release$ make -j$(nproc)
[  0%] [BISON][CppVariablesGrammarYacc] Building parser with bison 3.8.2
[  1%] Building CXX object sdk/wxsqlite3/CMakeFiles/wxsqlite3.dir/src/wxsqlite3.cpp.o
[  1%] Building CXX object yaml-cpp/CMakeFiles/yaml-cpp.dir/src/contrib/graphbuilder.cpp.o
[  1%] Building CXX object PCH/CMakeFiles/PCH.dir/cmake_pch.hxx.gch
[  1%] [FLEX][CppFlex] Building scanner with flex 2.6.4
[  1%] [BISON][ExprGrammarYacc] Building parser with bison 3.8.2
/home/koeppl/src.codelite/codelite/CxxParser/expr_grammar.y: warning: 1 shift/reduce conflict [-Wconflicts-sr]
/home/koeppl/src.codelite/codelite/CxxParser/expr_grammar.y: note: rerun with option '-Wcounterexamples' to generate conflict counterexamples
[  1%] Building CXX object yaml-cpp/CMakeFiles/yaml-cpp.dir/src/contrib/graphbuilderadapter.cpp.o
[  1%] [BISON][CppFuncParserYacc] Building parser with bison 3.8.2
[  1%] [BISON][CppScopeGrammarYacc] Building parser with bison 3.8.2
[  1%] [FLEX][ExprLexerFlex] Building scanner with flex 2.6.4
[  1%] [BISON][TypedefGrammarYacc] Building parser with bison 3.8.2
[  1%] Building CXX object yaml-cpp/CMakeFiles/yaml-cpp.dir/src/binary.cpp.o
[  1%] Building CXX object CxxParser/CMakeFiles/libCxxParser.dir/expression_result.cpp.o
[  1%] Building CXX object CxxParser/CMakeFiles/libCxxParser.dir/function.cpp.o
[  1%] Building CXX object yaml-cpp/CMakeFiles/yaml-cpp.dir/src/convert.cpp.o
[  1%] Building CXX object CxxParser/CMakeFiles/libCxxParser.dir/variable.cpp.o
[  1%] Building CXX object CxxParser/CMakeFiles/libCxxParser.dir/cpp.cpp.o
<command-line>: error: macro names must be identifiers
[  1%] Building CXX object yaml-cpp/CMakeFiles/yaml-cpp.dir/src/depthguard.cpp.o
make[2]: *** [CxxParser/CMakeFiles/libCxxParser.dir/build.make:162: CxxParser/CMakeFiles/libCxxParser.dir/cpp.cpp.o] Error 1
make[1]: *** [CMakeFiles/Makefile2:1386: CxxParser/CMakeFiles/libCxxParser.dir/all] Error 2
make[1]: *** Waiting for unfinished jobs....
[  1%] Building CXX object yaml-cpp/CMakeFiles/yaml-cpp.dir/src/directives.cpp.o
[  1%] Building CXX object yaml-cpp/CMakeFiles/yaml-cpp.dir/src/emit.cpp.o
[  1%] Building CXX object yaml-cpp/CMakeFiles/yaml-cpp.dir/src/emitfromevents.cpp.o
[  1%] Building CXX object yaml-cpp/CMakeFiles/yaml-cpp.dir/src/emitter.cpp.o
[  1%] Linking CXX shared library ../../lib/libwxsqlite3.so
[  1%] Building CXX object yaml-cpp/CMakeFiles/yaml-cpp.dir/src/emitterstate.cpp.o
[  1%] Building CXX object yaml-cpp/CMakeFiles/yaml-cpp.dir/src/emitterutils.cpp.o
[  1%] Building CXX object PCH/CMakeFiles/PCH.dir/dummy.cpp.o
[  1%] Building CXX object yaml-cpp/CMakeFiles/yaml-cpp.dir/src/exceptions.cpp.o
[  1%] Linking CXX static library ../lib/libPCH.a
[  1%] Built target PCH
[  1%] Building CXX object yaml-cpp/CMakeFiles/yaml-cpp.dir/src/exp.cpp.o
[  1%] Building CXX object yaml-cpp/CMakeFiles/yaml-cpp.dir/src/memory.cpp.o
[  1%] Built target wxsqlite3
[  1%] Building CXX object yaml-cpp/CMakeFiles/yaml-cpp.dir/src/node.cpp.o
[  1%] Building CXX object yaml-cpp/CMakeFiles/yaml-cpp.dir/src/node_data.cpp.o
[  1%] Building CXX object yaml-cpp/CMakeFiles/yaml-cpp.dir/src/nodebuilder.cpp.o
[  1%] Building CXX object yaml-cpp/CMakeFiles/yaml-cpp.dir/src/nodeevents.cpp.o
[  2%] Building CXX object yaml-cpp/CMakeFiles/yaml-cpp.dir/src/null.cpp.o
[  2%] Building CXX object yaml-cpp/CMakeFiles/yaml-cpp.dir/src/ostream_wrapper.cpp.o
[  2%] Building CXX object yaml-cpp/CMakeFiles/yaml-cpp.dir/src/parse.cpp.o
[  2%] Building CXX object yaml-cpp/CMakeFiles/yaml-cpp.dir/src/parser.cpp.o
[  2%] Building CXX object yaml-cpp/CMakeFiles/yaml-cpp.dir/src/regex_yaml.cpp.o
[  2%] Building CXX object yaml-cpp/CMakeFiles/yaml-cpp.dir/src/scanner.cpp.o
[  2%] Building CXX object yaml-cpp/CMakeFiles/yaml-cpp.dir/src/scanscalar.cpp.o
[  2%] Building CXX object yaml-cpp/CMakeFiles/yaml-cpp.dir/src/scantag.cpp.o
[  2%] Building CXX object yaml-cpp/CMakeFiles/yaml-cpp.dir/src/scantoken.cpp.o
[  2%] Building CXX object yaml-cpp/CMakeFiles/yaml-cpp.dir/src/simplekey.cpp.o
[  2%] Building CXX object yaml-cpp/CMakeFiles/yaml-cpp.dir/src/singledocparser.cpp.o
[  2%] Building CXX object yaml-cpp/CMakeFiles/yaml-cpp.dir/src/stream.cpp.o
[  2%] Building CXX object yaml-cpp/CMakeFiles/yaml-cpp.dir/src/tag.cpp.o
[  2%] Linking CXX static library ../lib/libyaml-cpp.a
[  2%] Built target yaml-cpp
make: *** [Makefile:136: all] Error 2
Jarod42 commented 1 month ago

Duplicate #3375, there is already a PR to fix that. Sorry. Wonder why it works on some config though :-/