antiblock
Elveron
  • Chatbox

    You don't have permission to chat.
    Load More
Sign in to follow this  
caneira

Pedido toturial cmake e git

5 posts in this topic

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 by caneira (see edit history)

Share this post


Link to post
Share on other sites
antiblock
Cyphriun

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 by .тιαgσ (see edit history)

Share this post


Link to post
Share on other sites
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
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

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
Sign in to follow this