Closed ericp1337 closed 10 years ago
First of all, make sure you are using the same linking options when compiling alice and the devkit.
If those are identical, please post the output of make VERBOSE=1
for both of them.
/usr/bin/cmake -H/home/eric/Documents/Github/DevKit -B/home/eric/Documents/Github/DevKit/build --check-build-system CMakeFiles/Makefile.cmake 0
/usr/bin/cmake -E cmake_progress_start /home/eric/Documents/Github/DevKit/build/CMakeFiles /home/eric/Documents/Github/DevKit/build/CMakeFiles/progress.marks
make -f CMakeFiles/Makefile2 all
make[1]: Entering directory '/home/eric/Documents/Github/DevKit/build'
make -f CMakeFiles/alice-devkit.dir/build.make CMakeFiles/alice-devkit.dir/depend
make[2]: Entering directory '/home/eric/Documents/Github/DevKit/build'
cd /home/eric/Documents/Github/DevKit/build && /usr/bin/cmake -E cmake_depends "Unix Makefiles" /home/eric/Documents/Github/DevKit /home/eric/Documents/Github/DevKit /home/eric/Documents/Github/DevKit/build /home/eric/Documents/Github/DevKit/build /home/eric/Documents/Github/DevKit/build/CMakeFiles/alice-devkit.dir/DependInfo.cmake --color=
Dependee "/home/eric/Documents/Github/DevKit/build/CMakeFiles/alice-devkit.dir/DependInfo.cmake" is newer than depender "/home/eric/Documents/Github/DevKit/build/CMakeFiles/alice-devkit.dir/depend.internal".
Dependee "/home/eric/Documents/Github/DevKit/build/CMakeFiles/CMakeDirectoryInformation.cmake" is newer than depender "/home/eric/Documents/Github/DevKit/build/CMakeFiles/alice-devkit.dir/depend.internal".
Scanning dependencies of target alice-devkit
make[2]: Leaving directory '/home/eric/Documents/Github/DevKit/build'
make -f CMakeFiles/alice-devkit.dir/build.make CMakeFiles/alice-devkit.dir/build
make[2]: Entering directory '/home/eric/Documents/Github/DevKit/build'
/usr/bin/cmake -E cmake_progress_report /home/eric/Documents/Github/DevKit/build/CMakeFiles 1
[ 14%] Building C object CMakeFiles/alice-devkit.dir/deps/http-parser/http_parser.c.o
/usr/bin/cc -I/home/eric/Documents/Github/Alice/src -I/home/eric/Documents/Github/DevKit/src -I/home/eric/Documents/Github/DevKit/deps/http-parser -o CMakeFiles/alice-devkit.dir/deps/http-parser/http_parser.c.o -c /home/eric/Documents/Github/DevKit/deps/http-parser/http_parser.c
/usr/bin/cmake -E cmake_progress_report /home/eric/Documents/Github/DevKit/build/CMakeFiles 2
[ 28%] Building CXX object CMakeFiles/alice-devkit.dir/src/http_connection.cpp.o
/usr/bin/c++ -fPIC -O3 --std=c++0x -Wall -Wno-sign-compare -Wno-unused-variable -I/home/eric/Documents/Github/Alice/src -I/home/eric/Documents/Github/DevKit/src -I/home/eric/Documents/Github/DevKit/deps/http-parser -o CMakeFiles/alice-devkit.dir/src/http_connection.cpp.o -c /home/eric/Documents/Github/DevKit/src/http_connection.cpp
/usr/bin/cmake -E cmake_progress_report /home/eric/Documents/Github/DevKit/build/CMakeFiles 3
[ 42%] Building CXX object CMakeFiles/alice-devkit.dir/src/http_mime_type.cpp.o
/usr/bin/c++ -fPIC -O3 --std=c++0x -Wall -Wno-sign-compare -Wno-unused-variable -I/home/eric/Documents/Github/Alice/src -I/home/eric/Documents/Github/DevKit/src -I/home/eric/Documents/Github/DevKit/deps/http-parser -o CMakeFiles/alice-devkit.dir/src/http_mime_type.cpp.o -c /home/eric/Documents/Github/DevKit/src/http_mime_type.cpp
/usr/bin/cmake -E cmake_progress_report /home/eric/Documents/Github/DevKit/build/CMakeFiles 4
[ 57%] Building CXX object CMakeFiles/alice-devkit.dir/src/http_reply.cpp.o
/usr/bin/c++ -fPIC -O3 --std=c++0x -Wall -Wno-sign-compare -Wno-unused-variable -I/home/eric/Documents/Github/Alice/src -I/home/eric/Documents/Github/DevKit/src -I/home/eric/Documents/Github/DevKit/deps/http-parser -o CMakeFiles/alice-devkit.dir/src/http_reply.cpp.o -c /home/eric/Documents/Github/DevKit/src/http_reply.cpp
/usr/bin/cmake -E cmake_progress_report /home/eric/Documents/Github/DevKit/build/CMakeFiles 5
[ 71%] Building CXX object CMakeFiles/alice-devkit.dir/src/json.cpp.o
/usr/bin/c++ -fPIC -O3 --std=c++0x -Wall -Wno-sign-compare -Wno-unused-variable -I/home/eric/Documents/Github/Alice/src -I/home/eric/Documents/Github/DevKit/src -I/home/eric/Documents/Github/DevKit/deps/http-parser -o CMakeFiles/alice-devkit.dir/src/json.cpp.o -c /home/eric/Documents/Github/DevKit/src/json.cpp
/usr/bin/cmake -E cmake_progress_report /home/eric/Documents/Github/DevKit/build/CMakeFiles 6
[ 85%] Building CXX object CMakeFiles/alice-devkit.dir/src/devkit_http.cpp.o
/usr/bin/c++ -fPIC -O3 --std=c++0x -Wall -Wno-sign-compare -Wno-unused-variable -I/home/eric/Documents/Github/Alice/src -I/home/eric/Documents/Github/DevKit/src -I/home/eric/Documents/Github/DevKit/deps/http-parser -o CMakeFiles/alice-devkit.dir/src/devkit_http.cpp.o -c /home/eric/Documents/Github/DevKit/src/devkit_http.cpp
/usr/bin/cmake -E cmake_progress_report /home/eric/Documents/Github/DevKit/build/CMakeFiles 7
[100%] Building CXX object CMakeFiles/alice-devkit.dir/src/devkit.cpp.o
/usr/bin/c++ -fPIC -O3 --std=c++0x -Wall -Wno-sign-compare -Wno-unused-variable -I/home/eric/Documents/Github/Alice/src -I/home/eric/Documents/Github/DevKit/src -I/home/eric/Documents/Github/DevKit/deps/http-parser -o CMakeFiles/alice-devkit.dir/src/devkit.cpp.o -c /home/eric/Documents/Github/DevKit/src/devkit.cpp
Linking CXX executable alice-devkit
/usr/bin/cmake -E cmake_link_script CMakeFiles/alice-devkit.dir/link.txt --verbose=1
/usr/bin/c++ -fPIC -O3 --std=c++0x -Wall -Wno-sign-compare -Wno-unused-variable CMakeFiles/alice-devkit.dir/deps/http-parser/http_parser.c.o CMakeFiles/alice-devkit.dir/src/http_connection.cpp.o CMakeFiles/alice-devkit.dir/src/http_mime_type.cpp.o CMakeFiles/alice-devkit.dir/src/http_reply.cpp.o CMakeFiles/alice-devkit.dir/src/json.cpp.o CMakeFiles/alice-devkit.dir/src/devkit_http.cpp.o CMakeFiles/alice-devkit.dir/src/devkit.cpp.o -o alice-devkit -rdynamic -lboost_system -lprotobuf -lpthread
CMakeFiles/alice-devkit.dir/src/devkit_http.cpp.o: In function `dota::http_request_handler_devkit::methodEntity(std::string, unsigned int)::{lambda(dota::devkit_session&)#1}::operator()(dota::devkit_session&) const [clone .isra.974]':
devkit_http.cpp:(.text+0x680b): undefined reference to `dota::parser::getEntities()'
CMakeFiles/alice-devkit.dir/src/devkit_http.cpp.o: In function `std::_Function_handler<void (), std::future<decltype ({parm#1}((*this).t))> dota::monitor<dota::devkit_session>::operator()<dota::http_request_handler_devkit::methodEntities(unsigned int)::{lambda(dota::devkit_session&)#1}>(dota::http_request_handler_devkit::methodEntities(unsigned int)::{lambda(dota::devkit_session&)#1}) const::{lambda()#1}>::_M_invoke(std::_Any_data const&)':
devkit_http.cpp:(.text+0x7069): undefined reference to `dota::parser::getEntities()'
CMakeFiles/alice-devkit.dir/src/devkit_http.cpp.o: In function `std::_Function_handler<void (), std::future<decltype ({parm#1}((*this).t))> dota::monitor<dota::devkit_session>::operator()<dota::http_request_handler_devkit::methodOpen(std::string, unsigned int)::{lambda(dota::devkit_session&)#1}>(dota::http_request_handler_devkit::methodOpen(std::string, unsigned int)::{lambda(dota::devkit_session&)#1}) const::{lambda()#1}>::_M_invoke(std::_Any_data const&)':
devkit_http.cpp:(.text+0x73b0): undefined reference to `dota::parser::~parser()'
devkit_http.cpp:(.text+0x75b1): undefined reference to `vtable for dota::dem_stream_file'
devkit_http.cpp:(.text+0x771b): undefined reference to `dota::parser::parser(dota::settings, dota::dem_stream*)'
devkit_http.cpp:(.text+0x7760): undefined reference to `dota::parser::open(std::string)'
devkit_http.cpp:(.text+0x7881): undefined reference to `dota::parser::getHandler()'
CMakeFiles/alice-devkit.dir/src/devkit_http.cpp.o: In function `std::_Function_handler<void (), std::future<decltype ({parm#1}((*this).t))> dota::monitor<dota::devkit_session>::operator()<dota::http_request_handler_devkit::methodClose(unsigned int)::{lambda(dota::devkit_session&)#1}>(dota::http_request_handler_devkit::methodClose(unsigned int)::{lambda(dota::devkit_session&)#1}) const::{lambda()#1}>::_M_invoke(std::_Any_data const&)':
devkit_http.cpp:(.text+0x7e7f): undefined reference to `dota::parser::~parser()'
CMakeFiles/alice-devkit.dir/src/devkit_http.cpp.o: In function `std::_Function_handler<void (), std::future<decltype ({parm#1}((*this).t))> dota::monitor<dota::devkit_session>::operator()<dota::http_request_handler_devkit::methodParse(std::string, unsigned int)::{lambda(dota::devkit_session&)#1}>(dota::http_request_handler_devkit::methodParse(std::string, unsigned int)::{lambda(dota::devkit_session&)#1}) const::{lambda()#1}>::_M_invoke(std::_Any_data const&)':
devkit_http.cpp:(.text+0x7f75): undefined reference to `dota::parser::read()'
CMakeFiles/alice-devkit.dir/src/devkit_http.cpp.o: In function `std::_Function_handler<void (), std::future<decltype ({parm#1}((*this).t))> dota::monitor<dota::devkit_session>::operator()<dota::http_request_handler_devkit::methodStringtables(unsigned int)::{lambda(dota::devkit_session&)#1}>(dota::http_request_handler_devkit::methodStringtables(unsigned int)::{lambda(dota::devkit_session&)#1}) const::{lambda()#1}>::_M_invoke(std::_Any_data const&)':
devkit_http.cpp:(.text+0x8055): undefined reference to `dota::parser::getStringtables()'
CMakeFiles/alice-devkit.dir/src/devkit_http.cpp.o: In function `std::_Function_handler<void (), std::future<decltype ({parm#1}((*this).t))> dota::monitor<dota::devkit_session>::operator()<dota::http_request_handler_devkit::methodSend(unsigned int)::{lambda(dota::devkit_session&)#1}>(dota::http_request_handler_devkit::methodSend(unsigned int)::{lambda(dota::devkit_session&)#1}) const::{lambda()#1}>::_M_invoke(std::_Any_data const&)':
devkit_http.cpp:(.text+0x8748): undefined reference to `dota::parser::getSendtables()'
CMakeFiles/alice-devkit.dir/src/devkit_http.cpp.o: In function `std::_Function_handler<void (), std::future<decltype ({parm#1}((*this).t))> dota::monitor<dota::devkit_session>::operator()<dota::http_request_handler_devkit::methodRecv(unsigned int)::{lambda(dota::devkit_session&)#1}>(dota::http_request_handler_devkit::methodRecv(unsigned int)::{lambda(dota::devkit_session&)#1}) const::{lambda()#1}>::_M_invoke(std::_Any_data const&)':
devkit_http.cpp:(.text+0x8f98): undefined reference to `dota::parser::getFlattables()'
CMakeFiles/alice-devkit.dir/src/devkit_http.cpp.o: In function `dota::devkit_session::handlePlayer(dota::cbObject<dota::entity*, unsigned int>*)':
devkit_http.cpp:(.text._ZN4dota14devkit_session12handlePlayerEPNS_8cbObjectIPNS_6entityEjEE[_ZN4dota14devkit_session12handlePlayerEPNS_8cbObjectIPNS_6entityEjEE]+0x190): undefined reference to `dota::parser::getEntities()'
CMakeFiles/alice-devkit.dir/src/devkit_http.cpp.o: In function `void dota::delegate<void, dota::cbObject<unsigned int, unsigned int>*>::callFwd<dota::devkit_session, &dota::devkit_session::handleReady>(void*, dota::cbObject<unsigned int, unsigned int>*)':
devkit_http.cpp:(.text._ZN4dota8delegateIvIPNS_8cbObjectIjjEEEE7callFwdINS_14devkit_sessionEXadL_ZNS6_11handleReadyES3_EEEEvPvS3_[_ZN4dota8delegateIvIPNS_8cbObjectIjjEEEE7callFwdINS_14devkit_sessionEXadL_ZNS6_11handleReadyES3_EEEEvPvS3_]+0x46): undefined reference to `dota::parser::getEntityIdFor(std::string)'
devkit_http.cpp:(.text._ZN4dota8delegateIvIPNS_8cbObjectIjjEEEE7callFwdINS_14devkit_sessionEXadL_ZNS6_11handleReadyES3_EEEEvPvS3_[_ZN4dota8delegateIvIPNS_8cbObjectIjjEEEE7callFwdINS_14devkit_sessionEXadL_ZNS6_11handleReadyES3_EEEEvPvS3_]+0x52): undefined reference to `dota::parser::getHandler()'
devkit_http.cpp:(.text._ZN4dota8delegateIvIPNS_8cbObjectIjjEEEE7callFwdINS_14devkit_sessionEXadL_ZNS6_11handleReadyES3_EEEEvPvS3_[_ZN4dota8delegateIvIPNS_8cbObjectIjjEEEE7callFwdINS_14devkit_sessionEXadL_ZNS6_11handleReadyES3_EEEEvPvS3_]+0x100): undefined reference to `dota::parser::getEntityIdFor(std::string)'
devkit_http.cpp:(.text._ZN4dota8delegateIvIPNS_8cbObjectIjjEEEE7callFwdINS_14devkit_sessionEXadL_ZNS6_11handleReadyES3_EEEEvPvS3_[_ZN4dota8delegateIvIPNS_8cbObjectIjjEEEE7callFwdINS_14devkit_sessionEXadL_ZNS6_11handleReadyES3_EEEEvPvS3_]+0x10b): undefined reference to `dota::parser::getHandler()'
collect2: error: ld returned 1 exit status
CMakeFiles/alice-devkit.dir/build.make:236: recipe for target 'alice-devkit' failed
make[2]: *** [alice-devkit] Error 1
make[2]: Leaving directory '/home/eric/Documents/Github/DevKit/build'
CMakeFiles/Makefile2:60: recipe for target 'CMakeFiles/alice-devkit.dir/all' failed
make[1]: *** [CMakeFiles/alice-devkit.dir/all] Error 2
make[1]: Leaving directory '/home/eric/Documents/Github/DevKit/build'
Makefile:117: recipe for target 'all' failed
make: *** [all] Error 2
See the line -o alice-devkit -rdynamic -lboost_system -lprotobuf -lpthread
, it doesnt't include alice-shared. Try adding in manualy to the cmake file.
hmm, seems as if it cannot find the library. I suspect this error has something to do with it.
-- Found Alice: /home/eric/Documents/Github/Alice/build
-- Configuring done
WARNING: Target "alice-devkit" requests linking to directory "/home/eric/Documents/Github/Alice/build". Targets may link only to libraries. CMake is dropping the item.
-- Generating done
Here's where I added the library to link against (I also tried adding it with other names that I thought might make it work, but same error)
TARGET_LINK_LIBRARIES ( alice-devkit alice-shared
${ALICE_LIBRARIES}
${Boost_LIBRARIES}
protobuf
)
Linking CXX executable alice-devkit
/usr/bin/cmake -E cmake_link_script CMakeFiles/alice-devkit.dir/link.txt --verbose=1
/usr/bin/c++ -fPIC -O3 --std=c++0x -Wall -Wno-sign-compare -Wno-unused-variable CMakeFiles/alice-devkit.dir/deps/http-parser/http_parser.c.o CMakeFiles/alice-devkit.dir/src/http_connection.cpp.o CMakeFiles/alice-devkit.dir/src/http_mime_type.cpp.o CMakeFiles/alice-devkit.dir/src/http_reply.cpp.o CMakeFiles/alice-devkit.dir/src/json.cpp.o CMakeFiles/alice-devkit.dir/src/devkit_http.cpp.o CMakeFiles/alice-devkit.dir/src/devkit.cpp.o -o alice-devkit -rdynamic -llibalice-core-shared -lboost_system -lprotobuf -lpthread
/usr/bin/ld: cannot find -llibalice-core-shared
collect2: error: ld returned 1 exit status
CMakeFiles/alice-devkit.dir/build.make:236: recipe for target 'alice-devkit' failed
My bad for not noticing you define ALICE_LIBRARIES
in the cmake call, don't do that, ever. Set ALICE_ROOT
to something like /usr/local where you installed alice. You may also remove ALICE_LIBRARIES and instead add your build directory to the linker search path.
Hooray! It works now. Thank you for all the help. But for some reason if I run it from the install path it complains about to shared lib. But if I run the version from the build dir it works. But at least i've got it working now.
And now unfortunately it seems when opening a replay I get an exception.
Don't click the open button right away; click the carret next to it first. That'll show you a list of files to open from the directory you supplied when starting the application.
Generated the makefile from CMake with this command: