Open AssociationSirius opened 5 years ago
Merci beaucoup for your effort and detailed information! Your remarks are very valuable to me!
SFML, cmake and ldd:
I think the problem is qrwar depending on SFML 2.5 which supports "modern" cmake: https://en.sfml-dev.org/forums/index.php?topic=24070.0 I.e. starting with SFML 2.5, no FindSFML.cmake is required any more.
Ubuntu however only provides version 2.4 and therefore is not compatible with the current setup. The library names (passed to ldd
via the $LIBS
variable) changed as well, therefore the error message DSO manquant dans la ligne de commande
/DSO missing from command line
.
A quick fix you could try is to revert the changes in 2d7c8c7. Please let me know if this helped! Another (but significantly harder) possibility would be to build and install SFML 2.5 manually. Due to the required effort, I'd discourage the second option and recommend to wait until I can provide a fix on my end, e.g. I could try to add backwards compatibility to the CMakeLists.txt, if possible.
TinyXML2:
If I understand you correctly, the cmake process does not error if TinyXML2 could not be found?
Compilation: Yay! :D
To provide better compatibility checks on my side, I'm currently trying to create a Ubuntu 18.04 based docker image for CI.
Compilation done. I will take time to install SFML2.5 and see what happens
At first time:
If the user does not pay attention to the warnings, then the warning will not be read.
I suggest to modifiy CMakeLists with
find_package(tinyxml2 REQUIRED)
if(TINYXML2_FOUND)
include_directories(${TINYXML2_INCLUDE_DIR})
set(LIBS ${LIBS} ${TINYXML2_LIBRARIES})
else(TINYXML2_FOUND)
message(FATAL_ERROR "no TINYXML2 was found")
endif(TINYXML2_FOUND)
With this, the program will compile and link correctly.
Hi,
I will answer you as you asked me: These are not critics (I do not allow myself) just remarks
I try to compile and launch your program:
SFML & cmake:
cmake can not find the file findSFML.cmake it is in the /usr/share/SFML/cmake/Module/findSFML.cmake directory I copied it in cmake/module and the cmake test worked (not hard)
tinyXML2
this library is not tested by CMAKE it's a forgot ?(harm?) because the whole structure of CMAKE is set up, it lacks the test as to its existence. (not hard)
compilation
Everything works well. Yep !!!
ldd link
I have this message
/usr/bin/ld: libqrwar.a(introstate.cpp.o): référence au symbole non défini « _ZN2sf9VideoModeC1Ejjj »
/usr/lib/x86_64-linux-gnu/libsfml-window.so.2.4 : erreur lors de l'ajout de symboles : DSO manquant dans la ligne de commande
Who can I help you ?
SFML is full installed: