caneira 8 Posted September 24, 2017 (edited) Boas pessoal Alguém tem ou sabe de algum tutorial sobre como compilar com cmake e git ? Ou me possa dar umas dicas para eu ter algumas noções de como proceder. Eu queria compilar e montar as seguintes serverfiles : Mas de momento só tive erros tanto no freebsd como no pc tenho procurado sobre o assunto mas alem de existir pouco ainda é meio confuso . obrigado Edited September 24, 2017 by caneira (see edit history) Share this post Link to post Share on other sites
.тιαgσ 624 Posted September 24, 2017 (edited) Para que queres o git? Eles não forneceram a source? Quanto ao cmake eu vi isto (se as files já tiverem prontas a compilar) Instalar CMake: pkg search cmake # To see the last package version pkg install cmake<version # The one you find with the command below Boost libs: pkg install boost-all-1.55.0 # Or more, check with pkg search boost CryptoPP: pkg install cryptopp-5.6.2_2 DevIL: pkg install devil Compilar Crias uma pasta qualquer neste caso a "build" cd build Depois fazes isto cmake ../ E por fim make Não testei mas foi tirado de umas files que usam cmake para compilar Edited September 24, 2017 by .тιαgσ (see edit history) 1 caneira reacted to this Share this post Link to post Share on other sites
caneira 8 Posted September 24, 2017 2 minutos atrás, .тιαgσ disse: Para que queres o git? Eles não forneceram a source? Quanto ao cmake eu vi isto (se as files já tiverem prontas a compilar) Instalar Sim mas eu tentei fazer alguns paços seguindo alguns erros que recebi tanto no cmake como no freebsd um deles é este CMake Error at source/server/game/CMakeLists.txt:7 (message): get_git_revision(): can not get git revision. log followed: fatal: Not a git repository (or any of the parent directories): .git Diz ter falta de um repositório ou então sou eu mesmo que não sei onde meter os ficheiros que traz o pacote rar sobre o cmake eu usei o do pc e o do freebsd e não cheguei a lado nenhum xD Share this post Link to post Share on other sites
.тιαgσ 624 Posted September 24, 2017 3 minutos atrás, caneira disse: Sim mas eu tentei fazer alguns paços seguindo alguns erros que recebi tanto no cmake como no freebsd um deles é este CMake Error at source/server/game/CMakeLists.txt:7 (message): get_git_revision(): can not get git revision. log followed: fatal: Not a git repository (or any of the parent directories): .git Diz ter falta de um repositório ou então sou eu mesmo que não sei onde meter os ficheiros que traz o pacote rar sobre o cmake eu usei o do pc e o do freebsd e não cheguei a lado nenhum xD O que tens neste ficheiro? source/server/game/CMakeLists.txt: O erro está na linha 7, deve estar a buscar algum repositório git, mas em principio não precisas se eles postaram a source Share this post Link to post Share on other sites
caneira 8 Posted September 24, 2017 No ficheiro tem isto Spoiler cmake_minimum_required(VERSION 3.1.0 FATAL_ERROR) project(game CXX) execute_process ( COMMAND git rev-list HEAD OUTPUT_VARIABLE GIT_REV_LIST_OUTPUT ERROR_VARIABLE GIT_REV_LIST_OUTPUT RESULT_VARIABLE GIT_REV_LIST_RESULT WORKING_DIRECTORY "." ) if( NOT ${GIT_REV_LIST_RESULT} EQUAL 0 ) message( FATAL_ERROR "get_git_revision(): can not get git revision. log followed: ${GIT_REV_LIST_OUTPUT}") endif() string(STRIP ${GIT_REV_LIST_OUTPUT} GIT_REV_LIST_OUTPUT) string(REPLACE "\n" ";" GIT_REV_LIST ${GIT_REV_LIST_OUTPUT} ) list(LENGTH GIT_REV_LIST gitVersion ) MESSAGE(STATUS "GameGitREV=${gitVersion}") set(exe game_server) set(CMAKE_RUNTIME_OUTPUT_DIRECTORY ${OUTPUT_DIR}) include_directories("../liblua/include") #LibLua SET(_definitions __SVN_VERSION__=\"$(SVN_VERSION)\" _GLIBCXX_USE_C99=1) add_executable (${exe} src/main.cpp src/BattleArena.cpp src/FSM.cpp src/MarkConvert.cpp src/MarkImage.cpp src/MarkManager.cpp src/OXEvent.cpp src/ani.cpp src/arena.cpp src/banword.cpp src/battle.cpp src/blend_item.cpp src/buffer_manager.cpp src/building.cpp src/castle.cpp src/char.cpp src/char_affect.cpp src/char_battle.cpp src/char_change_empire.cpp src/char_horse.cpp src/char_item.cpp src/char_manager.cpp src/char_quickslot.cpp src/char_resist.cpp src/char_skill.cpp src/char_state.cpp src/PetSystem.cpp src/cmd.cpp src/cmd_emotion.cpp src/cmd_general.cpp src/cmd_gm.cpp src/cmd_oxevent.cpp src/config.cpp src/constants.cpp src/crc32.cpp src/cube.cpp src/db.cpp src/desc.cpp src/desc_client.cpp src/desc_manager.cpp src/desc_p2p.cpp src/dev_log.cpp src/dungeon.cpp src/empire_text_convert.cpp src/entity.cpp src/entity_view.cpp src/event.cpp src/event_queue.cpp src/exchange.cpp src/file_loader.cpp src/fishing.cpp src/gm.cpp src/guild.cpp src/guild_manager.cpp src/guild_war.cpp src/horse_rider.cpp src/horsename_manager.cpp src/input.cpp src/input_db.cpp src/input_login.cpp src/input_main.cpp src/input_p2p.cpp src/input_api.cpp src/item.cpp src/item_addon.cpp src/item_attribute.cpp src/item_manager.cpp src/item_manager_idrange.cpp src/locale.cpp src/locale_service.cpp src/log.cpp src/login_data.cpp src/lzo_manager.cpp src/marriage.cpp src/messenger_manager.cpp src/mining.cpp src/mob_manager.cpp src/motion.cpp src/p2p.cpp src/packet_info.cpp src/party.cpp src/polymorph.cpp src/priv_manager.cpp src/pvp.cpp src/questevent.cpp src/questlua.cpp src/questlua_affect.cpp src/questlua_arena.cpp src/questlua_ba.cpp src/questlua_building.cpp src/questlua_danceevent.cpp src/questlua_dungeon.cpp src/questlua_forked.cpp src/questlua_game.cpp src/questlua_global.cpp src/questlua_guild.cpp src/questlua_horse.cpp src/questlua_pet.cpp src/questlua_item.cpp src/questlua_marriage.cpp src/questlua_npc.cpp src/questlua_oxevent.cpp src/questlua_party.cpp src/questlua_pc.cpp src/questlua_quest.cpp src/questlua_target.cpp src/questmanager.cpp src/questnpc.cpp src/questpc.cpp src/refine.cpp src/regen.cpp src/safebox.cpp src/sectree.cpp src/sectree_manager.cpp src/sequence.cpp src/shop.cpp src/skill.cpp src/start_position.cpp src/target.cpp src/text_file_loader.cpp src/trigger.cpp src/utils.cpp src/vector.cpp src/war_map.cpp src/wedding.cpp src/threeway_war.cpp src/map_location.cpp src/BlueDragon.cpp src/BlueDragon_Binder.cpp src/DragonLair.cpp src/questlua_dragonlair.cpp src/skill_power.cpp src/affect.cpp src/whisper_admin.cpp src/cipher.cpp src/buff_on_attributes.cpp src/dragon_soul_table.cpp src/DragonSoul.cpp src/group_text_parse_tree.cpp src/char_dragonsoul.cpp src/questlua_dragonsoul.cpp src/shop_manager.cpp src/shopEx.cpp src/item_manager_read_tables.cpp src/web_connect.cpp src/minilzo.c src/nearby_scanner.cpp src/game_events.cpp src/activity.cpp src/abuse.cpp src/char_cards.cpp src/inventory.cpp src/monarch.cpp src/questlua_monarch.cpp src/questlua_mgmt.cpp) set_property(TARGET ${exe} PROPERTY CXX_STANDARD 14) set_property(TARGET ${exe} PROPERTY CXX_STANDARD_REQUIRED ON) #FIND_LIBRARY(IL_LIBRARY libIL.a ${CMAKE_CURRENT_SOURCE_DIR}/../libdevil NO_DEFAULT_PATH) #FIND_LIBRARY(IL_PNG_LIBRARY libpng.a ${CMAKE_CURRENT_SOURCE_DIR}/../libdevil NO_DEFAULT_PATH) #FIND_LIBRARY(IL_TIFF_LIBRARY libtiff.a ${CMAKE_CURRENT_SOURCE_DIR}/../libdevil NO_DEFAULT_PATH) #FIND_LIBRARY(IL_MNG_LIBRARY libmng.a ${CMAKE_CURRENT_SOURCE_DIR}/../libdevil NO_DEFAULT_PATH) #FIND_LIBRARY(IL_CMS_LIBRARY liblcms.a ${CMAKE_CURRENT_SOURCE_DIR}/../libdevil NO_DEFAULT_PATH) #FIND_LIBRARY(IL_JPEG_LIBRARY libjpeg.a ${CMAKE_CURRENT_SOURCE_DIR}/../libdevil NO_DEFAULT_PATH) if(WIN32) if("${CMAKE_BUILD_TYPE}" STREQUAL "Debug" OR "${CMAKE_BUILD_TYPE}" STREQUAL "RelWithDebInfo") set(IL_LIBRARIES DevIL-1.7.8d.lib DevILU-1.7.8d.lib DevILUT-1.7.8d.lib) else() set(IL_LIBRARIES DevIL-1.7.8.lib DevILU-1.7.8.lib DevILUT-1.7.8.lib) endif() else(WIN32) set(IL_LIBRARIES IL png tiff mng lcms jpeg) FIND_LIBRARY(LIBZ libz.a /usr/lib) target_link_libraries(${exe} ${LIBZ}) endif(WIN32) TARGET_LINK_LIBRARIES(${exe} pthread ${MYSQL_LIBRARIES} ${Boost_LIBRARIES} ${IL_LIBRARIES} cryptopp-static lua thecore poly sql game) SET_TARGET_PROPERTIES(${exe} PROPERTIES COMPILE_DEFINITIONS "${_definitions}") if (CMAKE_CXX_COMPILER_ID MATCHES "Clang") SET_TARGET_PROPERTIES(${exe} PROPERTIES LINK_SEARCH_END_STATIC 1) #STATIC LINKING for clang bcs live is not running bsd10 # set(CMAKE_EXE_LINKER_FLAGS -static) # set(CMAKE_FIND_LIBRARY_SUFFIXES .a) set(CMAKE_EXE_LINK_DYNAMIC_C_FLAGS) # remove -Wl,-Bdynamic set(CMAKE_EXE_LINK_DYNAMIC_CXX_FLAGS) set(CMAKE_SHARED_LIBRARY_C_FLAGS) # remove -fPIC set(CMAKE_SHARED_LIBRARY_CXX_FLAGS) set(CMAKE_SHARED_LIBRARY_LINK_C_FLAGS) # remove -rdynamic set(CMAKE_SHARED_LIBRARY_LINK_CXX_FLAGS) endif() Share this post Link to post Share on other sites