abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
AbcLinuxu hledá autory!
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
    dnes 16:00 | Nová verze

    Byla vydána nová verze 2025.4 linuxové distribuce navržené pro digitální forenzní analýzu a penetrační testování Kali Linux (Wikipedie). Přehled novinek se seznamem nových nástrojů v oficiálním oznámení na blogu.

    Ladislav Hagara | Komentářů: 0
    dnes 12:44 | IT novinky

    Národní úřad pro kybernetickou a informační bezpečnost (NÚKIB) zveřejnil Národní politiku koordinovaného zveřejňování zranitelností (pdf), jejímž cílem je nejen zvyšování bezpečnosti produktů informačních a komunikačních technologií (ICT), ale také ochrana objevitelů zranitelností před negativními právními dopady. Součástí je rovněž vytvoření „koordinátora pro účely CVD“, jímž je podle nového zákona o kybernetické … více »

    Ladislav Hagara | Komentářů: 4
    dnes 04:33 | Nová verze

    Vývojáři KDE oznámili vydání balíku aplikací KDE Gear 25.12. Přehled novinek i s náhledy a videi v oficiálním oznámení.

    Ladislav Hagara | Komentářů: 0
    dnes 03:55 | Nová verze

    Společnost System76 vydala Pop!_OS 24.04 LTS s desktopovým prostředím COSMIC. Videoukázky na YouTube.

    Ladislav Hagara | Komentářů: 0
    dnes 03:11 | Nová verze

    Byla vydána verze 1.92.0 programovacího jazyka Rust (Wikipedie). Podrobnosti v poznámkách k vydání. Vyzkoušet Rust lze například na stránce Rust by Example.

    Ladislav Hagara | Komentářů: 0
    dnes 01:33 | Komunita

    Free Software Foundation zveřejnila ocenění Free Software Awards za rok 2024. Oceněni byli Andy Wingo, jeden ze správců GNU Guile, Alx Sa za příspěvky do Gimpu a Govdirectory jako společensky prospěšný projekt.

    |🇵🇸 | Komentářů: 3
    včera 18:55 | Nová verze

    Bylo vydáno Eclipse IDE 2025-12 aneb Eclipse 4.38. Představení novinek tohoto integrovaného vývojového prostředí také na YouTube.

    Ladislav Hagara | Komentářů: 0
    včera 17:44 | Nová verze

    U příležitosti oslav osmi let prací na debianím balíčku vyšlo GPXSee 15.6. Nová verze přináší především podporu pro geotagované MP4 soubory, včetně GoPro videí. Kdo nechce čekat, až nová verze dorazí do jeho distribuce, nalezne zdrojové kódy na GitHubu.

    Martin Tůma | Komentářů: 15
    včera 09:22 | Nová verze

    Monado, tj. multiplatformní open source implementace standardu OpenXR specifikujícího přístup k platformám a zařízením pro XR, tj. platformám a zařízením pro virtuální realitu (VR) a rozšířenou realitu (AR), bylo vydáno ve verzi 25.1.0. Přehled novinek v poznámkách k vydání.

    Ladislav Hagara | Komentářů: 0
    včera 02:44 | Nová verze

    Byla vydána listopadová aktualizace aneb nová verze 1.107 editoru zdrojových kódů Visual Studio Code (Wikipedie). Přehled novinek i s náhledy a videi v poznámkách k vydání. Ve verzi 1.107 vyjde také VSCodium, tj. komunitní sestavení Visual Studia Code bez telemetrie a licenčních podmínek Microsoftu.

    Ladislav Hagara | Komentářů: 0
    Jaké řešení používáte k vývoji / práci?
     (34%)
     (47%)
     (19%)
     (17%)
     (22%)
     (15%)
     (24%)
     (15%)
     (17%)
    Celkem 458 hlasů
     Komentářů: 19, poslední včera 20:04
    Rozcestník

    Dotaz: cmake a linkování OpenSSL

    Saljack avatar 3.5.2012 19:02 Saljack | skóre: 28 | blog: Saljack | Praha
    cmake a linkování OpenSSL
    Přečteno: 384×
    Dobrý večer, mám program, který sestavuji pomocí cmake a potřebuji použít OpenSSL knihovnu. Vše se mi sestaví dobře ale při linkování dostávám error na všechno co je v OpenSSL undefined reference to 'X509V3_set_ctx' atp. Projekt je rozdělen do různých částí jako je server core view atp. OpenSSL je použito pouze v serveru pokud ve složce se serverem použiji cmake a pak make vše proběhne v pořádku, ale pokud se snažím vše sestavit dohromady už to nejde. Už jsem zkoušel různě přehazovat v target_link_libraries proměnou ${OPENSSL_LIBRARIES}, ale bez úspěchu. Přikládám CMakeLists.txt: V kořenu mám:
    project(kminidlna)
    cmake_minimum_required(VERSION 2.6)
    find_package(KDE4 REQUIRED)
    find_package(Qt4 REQUIRED)
    find_package(OpenSSL REQUIRED)
    
    add_subdirectory(po)
    add_subdirectory(src)
    
    # set(CMAKE_VERBOSE_MAKEFILE ON)
    set(CMAKE_INCLUDE_CURRENT_DIR ON)
    set(CMAKE_INCLUDE_DIRECTORIES_PROJECT_BEFORE ON)
    
    add_definitions(${QT_DEFINITIONS} ${KDE4_DEFINITIONS} )
    
    set(VERSION "0.19")
    poté ve složce src, v které je main:
    include_directories(${KDE4_INCLUDES} ${QT_INCLUDES} ${CMAKE_CURRENT_BINARY_DIR} ${OPENSSL_INCLUDE_DIR}) 
    set(VERSION "0.2 beta")
    
    configure_file(kminidlna_version.h.cmake ${CMAKE_CURRENT_BINARY_DIR}/kminidlna_version.h )
    
    # enable_testing() #enable testing
    
    # add_subdirectory(../po)
    add_subdirectory(server)
    add_subdirectory(view)
    
    add_subdirectory(core)
    add_subdirectory(tests)
    
    set(kminidlna_SRCS main.cpp)
    set(kminidlna_RCCS resource.qrc)
    
    kde4_add_app_icon(kminidlna_SRCS "${CMAKE_CURRENT_SOURCE_DIR}/resource/kminidlna.png")
    qt4_add_resources(kminidlna_RCCS_SRCS ${kminidlna_RCCS})
    kde4_add_executable(kminidlna ${kminidlna_SRCS} ${kminidlna_RCCS_SRCS})
    target_link_libraries(kminidlna ${OPENSSL_LIBRARIES} server  core view  ${KDE4_KDEUI_LIBS} ${KDE4_KIO_LIBS} ${QT_QTCORE_LIBRARY} ${QT_QTNETWORK_LIBRARY} )
    
    install(TARGETS kminidlna DESTINATION  ${BIN_INSTALL_DIR})
    install(PROGRAMS kminidlna.desktop DESTINATION ${XDG_APPS_INSTALL_DIR})
    install(FILES ${CMAKE_CURRENT_SOURCE_DIR}/resource/kminidlna.png DESTINATION ${ICON_INSTALL_DIR})
    a konečně v server mám:
    include_directories(${KDE4_INCLUDES} ${QT_INCLUDES} ${OPENSSL_INCLUDE_DIR})
    
    set( SERVER_SRCS certificategenerator.cpp interface/restminidlnaput.cpp restconnection.cpp interface/restmediafolder.cpp interface/basicrestresource.cpp interface/restminidlna.cpp interface/restinterfaces.cpp interface/restresource.cpp
          restserver.cpp
          serverrequest.cpp
    	)
    
    
    
    kde4_add_library(server STATIC ${SERVER_SRCS} )
    
    target_link_libraries( server ${OPENSSL_LIBRARIES} ${QT_QTXML_LIBRARY} ${QT_QTXMLPATTERNS_LIBRARY})
    add_subdirectory(interface)
    Už jsem z toho fakt nešťastný a nevím co s tím. V mém zkušebním projektu vše funguje.
    Sex, Drugs & Rock´n Roll.

    Řešení dotazu:


    Odpovědi

    Saljack avatar 3.5.2012 19:03 Saljack | skóre: 28 | blog: Saljack | Praha
    Rozbalit Rozbalit vše Re: cmake a linkování OpenSSL
    Ještě jsem zapomenul dodat, že předem všem moc děkuji za jakoukoliv pomoc.
    Sex, Drugs & Rock´n Roll.
    Saljack avatar 4.5.2012 01:15 Saljack | skóre: 28 | blog: Saljack | Praha
    Rozbalit Rozbalit vše Re: cmake a linkování OpenSSL
    Tak už jsem to vyřešil. Stačilo do target_link_library přidat -lcrypto a vše již funguje. Zajímavé je, že v jiném projektu to fungovalo bez toho.
    Sex, Drugs & Rock´n Roll.
    4.5.2012 10:05 chochi | skóre: 29 | Praha
    Rozbalit Rozbalit vše Re: cmake a linkování OpenSSL
    Nebude problem s verzi cmake? Podle vseho FindOpenSSL.cmake obsahuje (v me verzi):
      FIND_LIBRARY(OPENSSL_SSL_LIBRARIES NAMES ssl ssleay32 ssleay32MD)
      FIND_LIBRARY(OPENSSL_CRYPTO_LIBRARIES NAMES crypto)
    ...
      SET(OPENSSL_LIBRARIES ${OPENSSL_SSL_LIBRARIES} ${OPENSSL_CRYPTO_LIBRARIES})
    
    Tudiz bych cekal, ze v OPENSSL_LIBRARIES bude i "-lcrypto". Nejde cmake spustit v debug rezimu a zjistit kde je problem (napr pomoci --debug-output, nebo --trace)?
    4.5.2012 10:24 chochi | skóre: 29 | Praha
    Rozbalit Rozbalit vše Re: cmake a linkování OpenSSL
    Zkus pred target_link_libraries( server ${OPENSSL_LIBRARIES} ${QT_QTXML_LIBRARY} ${QT_QTXMLPATTERNS_LIBRARY}) pridat:
    MESSAGE(STATUS "OPENSSL_SSL_LIBRARIES    :" "${OPENSSL_SSL_LIBRARIES}")
    MESSAGE(STATUS "OPENSSL_CRYPTO_LIBRARIES :" "${OPENSSL_CRYPTO_LIBRARIES}")
    MESSAGE(STATUS "OPENSSL_LIBRARIES        :" "${OPENSSL_LIBRARIES}")
    
    Me to vypise:
    -- OPENSSL_SSL_LIBRARIES    :/usr/lib64/libssl.so
    -- OPENSSL_CRYPTO_LIBRARIES :/usr/lib64/libcrypto.so
    -- OPENSSL_LIBRARIES        :/usr/lib64/libssl.so;/usr/lib64/libcrypto.so
    
    Saljack avatar 4.5.2012 14:29 Saljack | skóre: 28 | blog: Saljack | Praha
    Rozbalit Rozbalit vše Re: cmake a linkování OpenSSL
    V projektu, který jde v pohodě nalinkovat to vypíše podobně jako tobě. V tom problémovém je OPENSSL_SSL_LIBRARIES a OPENSSL_CRYPTO_LIBRARIES bez cesty. OPENSSL_LIBRARIES :/usr/lib/i386-linux-gnu/libssl.so je ok to je trochu divný ne?
    Sex, Drugs & Rock´n Roll.
    Řešení 1× (Saljack (tazatel))
    Saljack avatar 4.5.2012 14:34 Saljack | skóre: 28 | blog: Saljack | Praha
    Rozbalit Rozbalit vše Re: cmake a linkování OpenSSL
    Ha tak jsem to vyřešil problém je v pořadí
    find_package(OpenSSL REQUIRED)
    find_package(KDE4 REQUIRED)
    find_package(Qt4 REQUIRED)
    kde musí být OpenSSL před Qt4. Qt si asi ty proměnné nějak přepíše. Moc díky za pomoc.
    Sex, Drugs & Rock´n Roll.

    Založit nové vláknoNahoru

    Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

    ISSN 1214-1267   www.czech-server.cz
    © 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.