Hi KDevelop developers, flex-2.6.3 yymore_used_but_not_detected undefined issue http://www.efm.leeds.ac.uk/~as/Old/gnu/info_html/flex_21.html So I simply added --yymore option for kdev-pg/CMakeLists.txt diff --git a/kdev-pg/CMakeLists.txt b/kdev-pg/CMakeLists.txt index 5490835..19dc3a4 100644 --- a/kdev-pg/CMakeLists.txt +++ b/kdev-pg/CMakeLists.txt @@ -76,7 +76,7 @@ IF(FLEX_EXECUTABLE) DEPENDS "${CMAKE_CURRENT_SOURCE_DIR}/kdev-pg-lexer.ll" ${OPTIONAL_PARSER_HEADER_DEPENDENCY} COMMAND ${FLEX_EXECUTABLE} - ARGS --nounistd -o"${CMAKE_CURRENT_BINARY_DIR}/kdev-pg-lexer.cc" + ARGS --yymore --nounistd -o"${CMAKE_CURRENT_BINARY_DIR}/kdev-pg-lexer.cc" "${CMAKE_CURRENT_SOURCE_DIR}/kdev-pg-lexer.ll" ) Regards, Leslie Zhai
cmake .. -DCMAKE_INSTALL_PREFIX=/usr -DKDE_INSTALL_LIBDIR=lib -DKDE_INSTALL_USE_QT_SYS_PATHS=ON -- The C compiler identification is GNU 6.3.0 -- The CXX compiler identification is GNU 6.3.0 -- Check for working C compiler: /usr/lib/ccache/cc -- Check for working C compiler: /usr/lib/ccache/cc -- works -- Detecting C compiler ABI info -- Detecting C compiler ABI info - done -- Detecting C compile features -- Detecting C compile features - done -- Check for working CXX compiler: /usr/lib/ccache/c++ -- Check for working CXX compiler: /usr/lib/ccache/c++ -- works -- Detecting CXX compiler ABI info -- Detecting CXX compiler ABI info - done -- Detecting CXX compile features -- Detecting CXX compile features - done -- Looking for __GLIBC__ -- Looking for __GLIBC__ - found -- Performing Test _OFFT_IS_64BIT -- Performing Test _OFFT_IS_64BIT - Success CMake Warning (dev) at kdev-pg/CMakeLists.txt:1 (PROJECT): Policy CMP0048 is not set: project() command manages VERSION variables. Run "cmake --help-policy CMP0048" for policy details. Use the cmake_policy command to set the policy and suppress this warning. The following variable(s) would be set to empty: PROJECT_VERSION PROJECT_VERSION_MAJOR PROJECT_VERSION_MINOR PROJECT_VERSION_PATCH This warning is for project developers. Use -Wno-dev to suppress it. CMake Warning (dev) at examples/cc/CMakeLists.txt:2 (PROJECT): Policy CMP0048 is not set: project() command manages VERSION variables. Run "cmake --help-policy CMP0048" for policy details. Use the cmake_policy command to set the policy and suppress this warning. The following variable(s) would be set to empty: PROJECT_VERSION PROJECT_VERSION_MAJOR PROJECT_VERSION_MINOR PROJECT_VERSION_PATCH This warning is for project developers. Use -Wno-dev to suppress it. CMake Warning (dev) at examples/cool/CMakeLists.txt:2 (PROJECT): Policy CMP0048 is not set: project() command manages VERSION variables. Run "cmake --help-policy CMP0048" for policy details. Use the cmake_policy command to set the policy and suppress this warning. The following variable(s) would be set to empty: PROJECT_VERSION PROJECT_VERSION_MAJOR PROJECT_VERSION_MINOR PROJECT_VERSION_PATCH This warning is for project developers. Use -Wno-dev to suppress it. CMake Warning (dev) at examples/foolisp/CMakeLists.txt:1 (project): Policy CMP0048 is not set: project() command manages VERSION variables. Run "cmake --help-policy CMP0048" for policy details. Use the cmake_policy command to set the policy and suppress this warning. The following variable(s) would be set to empty: PROJECT_VERSION PROJECT_VERSION_MAJOR PROJECT_VERSION_MINOR PROJECT_VERSION_PATCH This warning is for project developers. Use -Wno-dev to suppress it. CMake Warning (dev) at examples/php/CMakeLists.txt:1 (project): Policy CMP0048 is not set: project() command manages VERSION variables. Run "cmake --help-policy CMP0048" for policy details. Use the cmake_policy command to set the policy and suppress this warning. The following variable(s) would be set to empty: PROJECT_VERSION PROJECT_VERSION_MAJOR PROJECT_VERSION_MINOR PROJECT_VERSION_PATCH This warning is for project developers. Use -Wno-dev to suppress it. -- -- The following REQUIRED packages have been found: * ECM (required version >= 1.1.0) * Qt5Core * Qt5Test * Qt5 (required version >= 5.2.0) -- Configuring done -- Generating done -- Build files have been written to: /data/project/kde/kdevelop-pg-qt/build [zhaixiang@iSOFT build]$ make Scanning dependencies of target kdev-pg-qt_automoc [ 1%] Automatic moc for target kdev-pg-qt Generating moc compilation kdev-pg-qt_automoc.cpp [ 1%] Built target kdev-pg-qt_automoc [ 3%] Generating qrc_unidata.cpp [ 5%] Generating kdev-pg-parser.cc, kdev-pg-parser.hh /data/project/kde/kdevelop-pg-qt/kdev-pg/kdev-pg-parser.yy: 警告: 197 shift/reduce conflicts [-Wconflicts-sr] /data/project/kde/kdevelop-pg-qt/kdev-pg/kdev-pg-parser.yy: 警告: 24 reduce/reduce conflicts [-Wconflicts-rr] [ 7%] Generating kdev-pg-lexer.cc Scanning dependencies of target kdev-pg-qt [ 9%] Building CXX object kdev-pg/CMakeFiles/kdev-pg-qt.dir/kdev-pg-lexer.cc.o /data/project/kde/kdevelop-pg-qt/kdev-pg/kdev-pg-lexer.ll: ‘int yylex()’: /data/project/kde/kdevelop-pg-qt/build/kdev-pg/kdev-pg-lexer.cc:1228:18: Error:‘yymore_used_but_not_detected’ undefined ^ /data/project/kde/kdevelop-pg-qt/kdev-pg/kdev-pg-lexer.ll:46:35: 附注:in expansion of macro ‘yymore’ #define YYMORE yymoreFlag = true; yymore(); ^~~~~~ /data/project/kde/kdevelop-pg-qt/kdev-pg/kdev-pg-lexer.ll:255:12: 附注:in expansion of macro ‘YYMORE’ {Newline} newline(); YYMORE; ^~~~~~ /data/project/kde/kdevelop-pg-qt/build/kdev-pg/kdev-pg-lexer.cc: 在全局域: /data/project/kde/kdevelop-pg-qt/build/kdev-pg/kdev-pg-lexer.cc:2740:17: 警告:‘void yyunput(int, char*)’ defined but not used [-Wunused-function] ^ kdev-pg/CMakeFiles/kdev-pg-qt.dir/build.make:84: recipe for target 'kdev-pg/CMakeFiles/kdev-pg-qt.dir/kdev-pg-lexer.cc.o' failed make[2]: *** [kdev-pg/CMakeFiles/kdev-pg-qt.dir/kdev-pg-lexer.cc.o] Error 1 CMakeFiles/Makefile2:1065: recipe for target 'kdev-pg/CMakeFiles/kdev-pg-qt.dir/all' failed make[1]: *** [kdev-pg/CMakeFiles/kdev-pg-qt.dir/all] Error 2 Makefile:138: recipe for target 'all' failed make: *** [all] Error 2
Git commit 7aa292e5c4b2dc2b8a420e7e8b8e32f61268fe5b by Kevin Funk, on behalf of Leslie Zhai. Committed on 05/01/2017 at 10:05. Pushed by kfunk into branch '2.0'. Fix yymore_used_but_not_detected undefined issue flex-2.6.3 failed to ``` #define yymore() yymore_used_but_not_detected ``` throw yymore_used_but_not_detected undefined issue, so I simply added --yymore option for CMakeLists.txt REVIEW: 129766 FIXED-IN: 2.0.1 M +1 -1 kdev-pg/CMakeLists.txt https://commits.kde.org/kdevelop-pg-qt/7aa292e5c4b2dc2b8a420e7e8b8e32f61268fe5b