Apple na své vývojářské konferenci WWDC24 (Worldwide Developers Conference, keynote) představil řadu novinek: svou umělou inteligenci pojmenovanou jednoduše Apple Intelligence, iOS 18, visionOS 2, macOS Sequoia, iPadOS 18, watchOS 11, …
Vyšla nová verze XMPP (Jabber) klienta Gajim, která přidává podporu reakcí pomocí emoji (XEP-0444: Message Reactions) a citace zpráv (XEP-0461: Message Replies). Přehled dalších vylepšení je k dispozici na oficiálních stránkách.
Po po téměř roce vývoje od vydání verze 5.38 byla vydána nová stabilní verze 5.40 programovacího jazyka Perl (Wikipedie). Do vývoje se zapojilo 75 vývojářů. Změněno bylo přibližně 160 tisíc řádků v 1 500 souborech. Přehled novinek a změn v podrobném seznamu.
Uroš Popović popisuje, jak si nastavit Linux na desce jako Raspberry Pi Zero, aby je šlo používat jako USB „flešku“.
Andreas Kling oznámil, že jelikož už se nevěnuje nezávislému operačnímu systému SerenityOS, ale výhradně jeho webovému prohlížeči Ladybird, přičemž vyvíjí primárně na Linuxu, SerenityOS opustí a Ladybird bude nově samostatný projekt (nový web, repozitář na GitHubu).
Po dvou měsících vývoje byla vydána nová verze 0.13.0 programovacího jazyka Zig (GitHub, Wikipedie). Přispělo 73 vývojářů. Přehled novinek v poznámkách k vydání.
Na čem aktuálně pracují vývojáři GNOME a KDE? Pravidelný přehled novinek v Týden v GNOME a Týden v KDE.
Před 70 lety, 7. června 1954, ve věku 41 let, zemřel Alan Turing, britský matematik, logik, kryptoanalytik a zakladatel moderní informatiky.
NiceGUI umožňuje používat webový prohlížeč jako frontend pro kód v Pythonu. Zdrojové kódy jsou k dispozici na GitHubu pod licencí MIT.
Open source platforma Home Assistant (Demo, GitHub, Wikipedie) pro monitorování a řízení inteligentní domácnosti byla vydána ve verzi 2024.6. Z novinek lze vypíchnout lepší integraci LLM (OpenAI, Google AI, Ollama) nebo podporu Matter 1.3.
A tady binárka pro windows (dala docela zabrat, protože se mi nepodařilo přesvědčit QtCreator aby vytvořil statický build).
Zvláště by mě zajímalo jak se řeší v Qt projektech make install a překlady (aby aplikace byla v /usr/bin a překlady v /usr/share/...)Doporučuju cmake.
CMakeLists.txt
soubory pro projekt, případně s drobným komentářem. Akorát v nich zatím nejsou instalační příkazy, k těm se teprve dostanu, ale co jsem koukal do dokumentace, mělo by to jít.
Za takový příklad, s komentáři, bych byl také vděčen!
cmake_minimum_required(VERSION 2.6.0) #minimalni verze cmake
project(jmeno) #jmeno projektu, užitečné k specifikovaní (pod)adresářů u includes, libs apod
#pakliže budete jméno měnit, změntě i v dalších proměnných níže...
# --- Setup QT4 ---
find_package(Qt4 REQUIRED) #vyhledá a přidá Qt4 cmake modul. REQUIRED znamená, že
#pokud není nalezen, nedá se pokračovat v sestavení
include(${QT_USE_FILE}) #cmake funkce Qt
# --- Sources --- #seznam zdrojáků .cpp Na prvnim řádku je jméno
set(jmeno_sources #seznamu - v tomto pripade jmeno_sources
main.cpp
okno.cpp
)
# --- Headers to be MOCed --- #seznam .h, které vyžadují Qt MOC - tzn. všeobecně ty,
set(jmeno_moc #které obsahují Q_OBJECT, sloty a signály
okno.h
)
# --- Qt UI files --- #seznam ui souborů
set(jmeno_uis
okno.ui
)
# --- Setup MOC and UI ---
qt4_wrap_cpp(jmeno_sources ${si_keys_moc})
qt4_wrap_ui(jmeno_uiceds ${jmeno_uis})
include_directories(${CMAKE_CURRENT_BINARY_DIR}) #kvůli výstupním .h co vylezou z uic
# --- Include and Libs search dirs ---
#zde se daj přidat případné další adresáře pro hledání includes a knihoven
#cesty se specifikují pomocí různých proměnných, nejužitečnější jsou hlavně:
# ${CMAKE_CURRENT_SOURCE_DIR} --zdrojový adresář, kde je umístěn TENTO CMakeLists.txt
# ${jmeno_SOURCE_DIR} --zdrojový adresář tam, kde byl deklarován projekt s názve "jmeno",
# čili tam, kde je umístěn CMakeLists.txt, ve kterém je makro project(jmeno),
# (což je v tomto případě stejné jako ${CMAKE_CURRENT_SOURCE_DIR}, ale nemuselo by)
# případně se dá slovo SOURCE zaměnit za BINARY, což je na stejném místě, akorát v cílovém stromu sestavení
# případně se dá najít v dokumentaci množství dalších proměnných pro cesty
#include_directories()
#link_directories()
# ↑ nezapomenout odkomentovat při použití
# --- Configure Libs ---
#set(jmeno_libs ${jmeno_libs} ...) # tím se dají přidat další knihovny pro linkování
# --- Executable & Link ---
add_executable(jmeno-binarky ${jmeno_sources} ${jmeno_uiceds})
target_link_libraries(jmeno-binarky ${QT_LIBRARIES} ${jmeno_libs})
# ↑ závěrečná makra pro určení výstupní binárky(/binárek) a určení, ke které patří které
# zdroojáky a které knihovny
# Pokud sestavujete knihovnu, použijete add_library() místo add_executable()
add_subdirectory()
...
No, tady na ábíčku jeden jeCmake: zjednoduš si život
Tiskni
Sdílej: