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

    Byla vydána nová verze 24.04.28 s kódovým názvem Time After Time svobodného multiplatformního video editoru Shotcut (Wikipedie) a nová verze 7.24.0 souvisejícího frameworku MLT Multimedia Framework. Nejnovější Shotcut je vedle zdrojových kódů k dispozici také ve formátech AppImage, Flatpak a Snap.

    Ladislav Hagara | Komentářů: 0
    včera 16:33 | Nová verze Ladislav Hagara | Komentářů: 0
    včera 03:22 | Zajímavý článek

    V aktuálním příspěvku na blogu počítačové hry Factorio (Wikipedie) se vývojář s přezývkou raiguard rozepsal o podpoře Linuxu. Rozebírá problémy a výzvy jako přechod linuxových distribucí z X11 na Wayland, dekorace oken na straně klienta a GNOME, změna velikosti okna ve správci oken Sway, …

    Ladislav Hagara | Komentářů: 0
    včera 00:11 | Nová verze

    Rakudo (Wikipedie), tj. překladač programovacího jazyka Raku (Wikipedie), byl vydán ve verzi #171 (2024.04). Programovací jazyk Raku byl dříve znám pod názvem Perl 6.

    Ladislav Hagara | Komentářů: 6
    27.4. 17:44 | Nová verze

    Společnost Epic Games vydala verzi 5.4 svého proprietárního multiplatformního herního enginu Unreal Engine (Wikipedie). Podrobný přehled novinek v poznámkách k vydání.

    Ladislav Hagara | Komentářů: 0
    26.4. 17:11 | Nová verze

    Byl vydán Nextcloud Hub 8. Představení novinek tohoto open source cloudového řešení také na YouTube. Vypíchnout lze Nextcloud AI Assistant 2.0.

    Ladislav Hagara | Komentářů: 12
    26.4. 13:33 | Nová verze

    Vyšlo Pharo 12.0, programovací jazyk a vývojové prostředí s řadou pokročilých vlastností. Krom tradiční nadílky oprav přináší nový systém správy ladících bodů, nový způsob definice tříd, prostor pro objekty, které nemusí procházet GC a mnoho dalšího.

    Pavel Křivánek | Komentářů: 9
    26.4. 04:55 | Zajímavý software

    Microsoft zveřejnil na GitHubu zdrojové kódy MS-DOSu 4.0 pod licencí MIT. Ve stejném repozitáři se nacházejí i před lety zveřejněné zdrojové k kódy MS-DOSu 1.25 a 2.0.

    Ladislav Hagara | Komentářů: 45
    25.4. 17:33 | Nová verze

    Canonical vydal (email, blog, YouTube) Ubuntu 24.04 LTS Noble Numbat. Přehled novinek v poznámkách k vydání a také příspěvcích na blogu: novinky v desktopu a novinky v bezpečnosti. Vydány byly také oficiální deriváty Edubuntu, Kubuntu, Lubuntu, Ubuntu Budgie, Ubuntu Cinnamon, Ubuntu Kylin, Ubuntu MATE, Ubuntu Studio, Ubuntu Unity a Xubuntu. Jedná se o 10. LTS verzi.

    Ladislav Hagara | Komentářů: 14
    25.4. 14:22 | Komunita

    Na YouTube je k dispozici videozáznam z včerejšího Czech Open Source Policy Forum 2024.

    Ladislav Hagara | Komentářů: 3
    KDE Plasma 6
     (75%)
     (8%)
     (2%)
     (15%)
    Celkem 876 hlasů
     Komentářů: 4, poslední 6.4. 15:51
    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: 307×
    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.