scarsty / kys-cpp

《金庸群侠传》c++复刻版,已完工
BSD 3-Clause "New" or "Revised" License
2.57k stars 370 forks source link

ubuntu18.04上编译报错 #64

Open LuffysMan opened 1 year ago

LuffysMan commented 1 year ago
[ 55%] Building CXX object CMakeFiles/kys.dir/Save.cpp.o
/usr/bin/c++   -I/home/luffysman/workspace/playground/jynews/kys-cpp/src/../include -I/home/luffysman/workspace/playground/jynews/kys-cpp/src/. -I/home/luffysman/workspace/playground/jynews/kys-cpp/src/../mlcc -I/home/luffysman/workspace/playground/jynews/kys-cpp/src/../others -I/home/luffysman/workspace/playground/jynews/kys-cpp/src/../local/include  -O2 -std=c++17 -pthread -DNDEBUG -DUSE_SDL_MIXER_AUDIO   -o CMakeFiles/kys.dir/Save.cpp.o -c /home/luffysman/workspace/playground/jynews/kys-cpp/src/Save.cpp
/home/luffysman/workspace/playground/jynews/kys-cpp/src/RunNodeFromJson.cpp: In member function ‘void RunNodeFromJson::create(YAML::Node&, RunNode*)’:
/home/luffysman/workspace/playground/jynews/kys-cpp/src/RunNodeFromJson.cpp:56:20: error: binding reference of type ‘YAML::Node&’ to ‘const YAML::Node’ discards qualifiers
             create(n1, new_node.get());
                    ^~
/home/luffysman/workspace/playground/jynews/kys-cpp/src/RunNodeFromJson.cpp:25:6: note:   initializing argument 1 of ‘void RunNodeFromJson::create(YAML::Node&, RunNode*)’
 void RunNodeFromJson::create(YAML::Node& n, RunNode* run_node)
      ^~~~~~~~~~~~~~~
In file included from /usr/include/yaml-cpp/yaml.h:17:0,
                 from /home/luffysman/workspace/playground/jynews/kys-cpp/src/RunNodeFromJson.h:3,
                 from /home/luffysman/workspace/playground/jynews/kys-cpp/src/RunNodeFromJson.cpp:1:
/usr/include/yaml-cpp/node/impl.h: In instantiation of ‘const T YAML::as_if<T, void>::operator()() const [with T = YAML::Node]’:
/usr/include/yaml-cpp/node/impl.h:139:31:   required from ‘const T YAML::Node::as() const [with T = YAML::Node]’
/usr/include/yaml-cpp/node/convert.h:200:7:   required from ‘static bool YAML::convert<std::vector<T> >::decode(const YAML::Node&, std::vector<T>&) [with T = YAML::Node]’
/usr/include/yaml-cpp/node/impl.h:116:27:   required from ‘const T YAML::as_if<T, void>::operator()() const [with T = std::vector<YAML::Node>]’
/usr/include/yaml-cpp/node/impl.h:139:31:   required from ‘const T YAML::Node::as() const [with T = std::vector<YAML::Node>]’
/home/luffysman/workspace/playground/jynews/kys-cpp/src/RunNodeFromJson.cpp:54:67:   required from here
/usr/include/yaml-cpp/node/impl.h:116:27: error: incomplete type ‘YAML::convert<YAML::Node>’ used in nested name specifier
     if (convert<T>::decode(node, t))
         ~~~~~~~~~~~~~~~~~~^~~~~~~~~
[ 56%] Building CXX object CMakeFiles/kys.dir/Scene.cpp.o
/usr/bin/c++   -I/home/luffysman/workspace/playground/jynews/kys-cpp/src/../include -I/home/luffysman/workspace/playground/jynews/kys-cpp/src/. -I/home/luffysman/workspace/playground/jynews/kys-cpp/src/../mlcc -I/home/luffysman/workspace/playground/jynews/kys-cpp/src/../others -I/home/luffysman/workspace/playground/jynews/kys-cpp/src/../local/include  -O2 -std=c++17 -pthread -DNDEBUG -DUSE_SDL_MIXER_AUDIO   -o CMakeFiles/kys.dir/Scene.cpp.o -c /home/luffysman/workspace/playground/jynews/kys-cpp/src/Scene.cpp
CMakeFiles/kys.dir/build.make:809: recipe for target 'CMakeFiles/kys.dir/RunNodeFromJson.cpp.o' failed
make[2]: *** [CMakeFiles/kys.dir/RunNodeFromJson.cpp.o] Error 1
make[2]: *** Waiting for unfinished jobs....
make[2]: Leaving directory '/home/luffysman/workspace/playground/jynews/kys-cpp/src'
CMakeFiles/Makefile2:70: recipe for target 'CMakeFiles/kys.dir/all' failed
make[1]: *** [CMakeFiles/kys.dir/all] Error 2
make[1]: Leaving directory '/home/luffysman/workspace/playground/jynews/kys-cpp/src'
Makefile:86: recipe for target 'all' failed
make: *** [all] Error 2
scarsty commented 1 year ago

建议改用新版