Na čem aktuálně pracují vývojáři GNOME a KDE Plasma? Pravidelný přehled novinek v Týden v GNOME a Týden v KDE Plasma. V Týdnu v GNOME je zmíněn flatpak balíček pro GIMP 0.54.1 z roku 1996. Jedná se o poslední verzi GIMPu postavenou nad toolkitem Motif.
Home Assistant Operating System, tj. linuxová distribuce optimalizována pro hostování Home Assistanta a jeho aplikací, byl vydán v nové major verzi 18.0.
Po šestiletém úsilí byla z jádra Linux odstraněna funkce strncpy(). Všechna předchozí volání této funkce byla převedena na bezpečnější alternativy.
Byla vydána nová verze 261 správce systému a služeb systemd (Wikipedie, GitHub). Z novinek lze vypíchnout nový subsystém IMDS (Cloud "Instance Metadata Service"), nový příkaz storagectl nebo novou komponentu systemd-sysinstall.
Vývojové prostředí Qt Creator bylo vydáno ve verzi 20 (seznam změn). Novinky zahrnují hlavně rozšíření pro integraci LLM agentů nebo minimalistický editační režim uživatelského rozhraní („zen mode“).
Už jste se prolétli na webu Google Earth? Přibyl tam Simulátor letu (Nástroje / Simulátor letu). Funguje i bez účtu Google [𝕏].
Byla vydána nová verze 4.7 (𝕏, Bluesky, Mastodon) multiplatformního open source herního enginu Godot (Wikipedie, GitHub). Přehled novinek i s náhledy v příspěvku na blogu.
Mastodon (Wikipedie) - sociální síť, která není na prodej - byl vydán ve verzi 4.6. Přehled novinek s náhledy v oznámení na blogu.
V Edici CZ.NIC, knižní řady správce české národní domény, vychází nová kniha Martina Malého Kódy, buildy, firmwary. Autor po půl roce od vydání předchozího titulu přichází se svou již sedmou knihou, tentokrát zaměřenou na vývoj programového vybavení pro embedded zařízení. Publikace s podtitulem Základy vývojářského řemesla pro tvůrce hobby elektroniky nabízí praktického průvodce pro všechny, kdo své projekty vytvořené s Arduinem
… více »V Brně na FIT VUT probíhá dvoudenní open source komunitní konference DevConf.CZ 2026. Na programu je celá řada zajímavých přednášek, lightning talků, meetupů a workshopů. Přednášky lze sledovat i online na YouTube kanálu konference. Aktuální dění lze sledovat na Matrixu, 𝕏 nebo Mastodonu.
Já se s tím psaním CMakeLists.txt tak se*u, abych pak zjistil, že mám nějaký bugový cmake.
CMakeLists.txt:
PROJECT(TOOLKIT C CXX)
SET(TOOLKIT_VERSION "0.1")
SET(CMAKE_MODULE_PATH "${CMAKE_SOURCE_DIR}/cmake/modules")
MESSAGE("Looking for Gtk2 ...")
SET(GTK2_DIR "${CMAKE_MODULE_PATH}")
FIND_PACKAGE(GTK2 REQUIRED)
IF(GTK2_FOUND)
MESSAGE("Gtk+-2.0 found.")
ELSE(GTK2_FOUND)
MESSAGE(FATAL_ERROR "No Gtk+-2.0 found.")
ENDIF(GTK2_FOUND)
ADD_DEFINITIONS(-D_FILE_OFFSET_BITS=64 -D_LARGEFILE64_SOURCE ${GTK2_DEFINITIONS})
INCLUDE_DIRECTORIES(
${CMAKE_CURRENT_SOURCE_DIR}
)
SET(TOOLKIT_SOURCE_FILES
"Toolkit/Alignment.cpp"
"Toolkit/Application.cpp"
"Toolkit/Archiver.cpp"
"Toolkit/Box.cpp"
"Toolkit/Button.cpp"
"Toolkit/ButtonBox.cpp"
"Toolkit/Container.cpp"
"Toolkit/Dialog.cpp"
"Toolkit/Entry.cpp"
"Toolkit/EventBox.cpp"
"Toolkit/File.cpp"
"Toolkit/FileUtils.cpp"
"Toolkit/Frame.cpp"
"Toolkit/HBox.cpp"
"Toolkit/HPaned.cpp"
"Toolkit/Image.cpp"
"Toolkit/IniFile.cpp"
"Toolkit/InputBox.cpp"
"Toolkit/Label.cpp"
"Toolkit/ListView.cpp"
"Toolkit/Menu.cpp"
"Toolkit/Notebook.cpp"
"Toolkit/Paned.cpp"
"Toolkit/ProgressBar.cpp"
"Toolkit/ScrolledWindow.cpp"
"Toolkit/Separator.cpp"
"Toolkit/String.cpp"
"Toolkit/Table.cpp"
"Toolkit/Timer.cpp"
"Toolkit/VBox.cpp"
"Toolkit/Viewport.cpp"
"Toolkit/VPaned.cpp"
"Toolkit/Widget.cpp"
"Toolkit/Window.cpp"
)
SET(TOOLKIT_INSTALL_HEADER_FILES
"Toolkit/Alignment.h"
"Toolkit/Application.h"
"Toolkit/Archiver.h"
"Toolkit/Array.h"
"Toolkit/Bool.h"
"Toolkit/Box.h"
"Toolkit/Button.h"
"Toolkit/ButtonBox.h"
"Toolkit/Callback.h"
"Toolkit/Config.h"
"Toolkit/Container.h"
"Toolkit/Dialog.h"
"Toolkit/Entry.h"
"Toolkit/Enums.h"
"Toolkit/EventBox.h"
"Toolkit/File.h"
"Toolkit/FileUtils.h"
"Toolkit/Frame.h"
"Toolkit/HBox.h"
"Toolkit/HPaned.h"
"Toolkit/Image.h"
"Toolkit/IniFile.h"
"Toolkit/InputBox.h"
"Toolkit/Label.h"
"Toolkit/ListView.h"
"Toolkit/Menu.h"
"Toolkit/Notebook.h"
"Toolkit/Paned.h"
"Toolkit/ProgressBar.h"
"Toolkit/ScrolledWindow.h"
"Toolkit/Separator.h"
"Toolkit/String.h"
"Toolkit/StringArray.h"
"Toolkit/Table.h"
"Toolkit/Timer.h"
"Toolkit/Toolkit.h"
"Toolkit/VBox.h"
"Toolkit/Viewport.h"
"Toolkit/VPaned.h"
"Toolkit/Widget.h"
"Toolkit/Window.h"
)
CONFIGURE_FILE(
"Toolkit/Config.h.cmake"
"Toolkit/Config.h"
)
CONFIGURE_FILE(
"${CMAKE_CURRENT_SOURCE_DIR}/bin/toolkit-config.cmake"
"${CMAKE_CURRENT_SOURCE_DIR}/bin/toolkit-config"
)
EXEC_PROGRAM("chmod" ARGS "+x bin/toolkit-config")
ADD_LIBRARY(toolkit SHARED ${TOOLKIT_SOURCE_FILES})
TARGET_LINK_LIBRARIES(toolkit ${GTK2_LIBRARIES})
INSTALL_TARGETS("/lib" toolkit)
INSTALL_FILES("/include/Toolkit" ${TOOLKIT_INSTALL_HEADER_FILES})
INSTALL_PROGRAMS("/bin" FILES "bin/toolkit-config")
GTK2Config.cmake:
#
# try to find GTK2 (and glib2)
#
# GTK2_LIBRARIES - Files to link against to use GTK2
# GTK2_DEFINITIONS - Compiler flags to compile against GTK2
# GTK2_FOUND - If false, don't try to use GTK2
SET( GTK2_FOUND FALSE )
FIND_PROGRAM( PKG_CONFIG pkg-config
/usr/bin
/usr/local/bin
${HOME}/bin
)
IF( PKG_CONFIG )
EXEC_PROGRAM( ${PKG_CONFIG} ARGS "--exists gtk+-2.0" RETURN_VALUE GTK2_PKG_RET_VAL )
IF( ${GTK2_PKG_RET_VAL} MATCHES "0" )
EXEC_PROGRAM( ${PKG_CONFIG} ARGS "--cflags gtk+-2.0" OUTPUT_VARIABLE GTK2_gtk2_DEFINITIONS )
EXEC_PROGRAM( ${PKG_CONFIG} ARGS "--libs gtk+-2.0" OUTPUT_VARIABLE GTK2_gtk2_LIBRARIES )
SET( GTK2_FOUND TRUE )
SET( GTK2_DEFINITIONS "${GTK2_gtk2_DEFINITIONS}" )
SET( GTK2_LIBRARIES "${GTK2_gtk2_LIBRARIES}" )
ENDIF( ${GTK2_PKG_RET_VAL} MATCHES "0" )
ENDIF( PKG_CONFIG )
Kompilace proběhne vpořádku, výsledkem je knihovna libtoolkit.so. Problém je ale v "make install". CMake si prostě vytvoří vadný cmake_install.cmake. Teda spíš vadný seznam souborů ke zkopírování, který obsahuje právě tento soubor:
# Install script for directory: /home/jardasmid/Dokumenty/Projekty/JXP Commander/Toolkit
# Set the install prefix
IF(NOT DEFINED CMAKE_INSTALL_PREFIX)
SET(CMAKE_INSTALL_PREFIX "/usr/local")
ENDIF(NOT DEFINED CMAKE_INSTALL_PREFIX)
STRING(REGEX REPLACE "/$" "" CMAKE_INSTALL_PREFIX "${CMAKE_INSTALL_PREFIX}")
# Set the install configuration name.
IF(NOT CMAKE_INSTALL_CONFIG_NAME)
IF(BUILD_TYPE)
STRING(REGEX REPLACE "^[^A-Za-z0-9_]+" ""
CMAKE_INSTALL_CONFIG_NAME "${BUILD_TYPE}")
ELSE(BUILD_TYPE)
SET(CMAKE_INSTALL_CONFIG_NAME "")
ENDIF(BUILD_TYPE)
MESSAGE(STATUS "Install configuration: \"${CMAKE_INSTALL_CONFIG_NAME}\"")
ENDIF(NOT CMAKE_INSTALL_CONFIG_NAME)
# Set the component getting installed.
IF(NOT CMAKE_INSTALL_COMPONENT)
IF(COMPONENT)
MESSAGE(STATUS "Install component: \"${COMPONENT}\"")
SET(CMAKE_INSTALL_COMPONENT "${COMPONENT}")
ELSE(COMPONENT)
SET(CMAKE_INSTALL_COMPONENT)
ENDIF(COMPONENT)
ENDIF(NOT CMAKE_INSTALL_COMPONENT)
FILE(INSTALL DESTINATION "${CMAKE_INSTALL_PREFIX}/include/Toolkit" TYPE FILE FILES "/home/jardasmid/Dokumenty/Projekty/JXP Commander/Toolkit/Toolkit/ApplicationToolkit/Alignment.h")
FILE(INSTALL DESTINATION "${CMAKE_INSTALL_PREFIX}/include/Toolkit" TYPE FILE FILES "/home/jardasmid/Dokumenty/Projekty/JXP Commander/Toolkit/Toolkit/ArchiverToolkit/Alignment.h")
FILE(INSTALL DESTINATION "${CMAKE_INSTALL_PREFIX}/include/Toolkit" TYPE FILE FILES "/home/jardasmid/Dokumenty/Projekty/JXP Commander/Toolkit/Toolkit/ArrayToolkit/Alignment.h")
FILE(INSTALL DESTINATION "${CMAKE_INSTALL_PREFIX}/include/Toolkit" TYPE FILE FILES "/home/jardasmid/Dokumenty/Projekty/JXP Commander/Toolkit/Toolkit/BoolToolkit/Alignment.h")
FILE(INSTALL DESTINATION "${CMAKE_INSTALL_PREFIX}/include/Toolkit" TYPE FILE FILES "/home/jardasmid/Dokumenty/Projekty/JXP Commander/Toolkit/Toolkit/BoxToolkit/Alignment.h")
FILE(INSTALL DESTINATION "${CMAKE_INSTALL_PREFIX}/include/Toolkit" TYPE FILE FILES "/home/jardasmid/Dokumenty/Projekty/JXP Commander/Toolkit/Toolkit/ButtonToolkit/Alignment.h")
FILE(INSTALL DESTINATION "${CMAKE_INSTALL_PREFIX}/include/Toolkit" TYPE FILE FILES "/home/jardasmid/Dokumenty/Projekty/JXP Commander/Toolkit/Toolkit/ButtonBoxToolkit/Alignment.h")
FILE(INSTALL DESTINATION "${CMAKE_INSTALL_PREFIX}/include/Toolkit" TYPE FILE FILES "/home/jardasmid/Dokumenty/Projekty/JXP Commander/Toolkit/Toolkit/CallbackToolkit/Alignment.h")
FILE(INSTALL DESTINATION "${CMAKE_INSTALL_PREFIX}/include/Toolkit" TYPE FILE FILES "/home/jardasmid/Dokumenty/Projekty/JXP Commander/Toolkit/Toolkit/ConfigToolkit/Alignment.h")
FILE(INSTALL DESTINATION "${CMAKE_INSTALL_PREFIX}/include/Toolkit" TYPE FILE FILES "/home/jardasmid/Dokumenty/Projekty/JXP Commander/Toolkit/Toolkit/ContainerToolkit/Alignment.h")
FILE(INSTALL DESTINATION "${CMAKE_INSTALL_PREFIX}/include/Toolkit" TYPE FILE FILES "/home/jardasmid/Dokumenty/Projekty/JXP Commander/Toolkit/Toolkit/DialogToolkit/Alignment.h")
FILE(INSTALL DESTINATION "${CMAKE_INSTALL_PREFIX}/include/Toolkit" TYPE FILE FILES "/home/jardasmid/Dokumenty/Projekty/JXP Commander/Toolkit/Toolkit/EntryToolkit/Alignment.h")
FILE(INSTALL DESTINATION "${CMAKE_INSTALL_PREFIX}/include/Toolkit" TYPE FILE FILES "/home/jardasmid/Dokumenty/Projekty/JXP Commander/Toolkit/Toolkit/EnumsToolkit/Alignment.h")
FILE(INSTALL DESTINATION "${CMAKE_INSTALL_PREFIX}/include/Toolkit" TYPE FILE FILES "/home/jardasmid/Dokumenty/Projekty/JXP Commander/Toolkit/Toolkit/EventBoxToolkit/Alignment.h")
FILE(INSTALL DESTINATION "${CMAKE_INSTALL_PREFIX}/include/Toolkit" TYPE FILE FILES "/home/jardasmid/Dokumenty/Projekty/JXP Commander/Toolkit/Toolkit/FileToolkit/Alignment.h")
FILE(INSTALL DESTINATION "${CMAKE_INSTALL_PREFIX}/include/Toolkit" TYPE FILE FILES "/home/jardasmid/Dokumenty/Projekty/JXP Commander/Toolkit/Toolkit/FileUtilsToolkit/Alignment.h")
FILE(INSTALL DESTINATION "${CMAKE_INSTALL_PREFIX}/include/Toolkit" TYPE FILE FILES "/home/jardasmid/Dokumenty/Projekty/JXP Commander/Toolkit/Toolkit/FrameToolkit/Alignment.h")
FILE(INSTALL DESTINATION "${CMAKE_INSTALL_PREFIX}/include/Toolkit" TYPE FILE FILES "/home/jardasmid/Dokumenty/Projekty/JXP Commander/Toolkit/Toolkit/HBoxToolkit/Alignment.h")
FILE(INSTALL DESTINATION "${CMAKE_INSTALL_PREFIX}/include/Toolkit" TYPE FILE FILES "/home/jardasmid/Dokumenty/Projekty/JXP Commander/Toolkit/Toolkit/HPanedToolkit/Alignment.h")
FILE(INSTALL DESTINATION "${CMAKE_INSTALL_PREFIX}/include/Toolkit" TYPE FILE FILES "/home/jardasmid/Dokumenty/Projekty/JXP Commander/Toolkit/Toolkit/ImageToolkit/Alignment.h")
FILE(INSTALL DESTINATION "${CMAKE_INSTALL_PREFIX}/include/Toolkit" TYPE FILE FILES "/home/jardasmid/Dokumenty/Projekty/JXP Commander/Toolkit/Toolkit/IniFileToolkit/Alignment.h")
FILE(INSTALL DESTINATION "${CMAKE_INSTALL_PREFIX}/include/Toolkit" TYPE FILE FILES "/home/jardasmid/Dokumenty/Projekty/JXP Commander/Toolkit/Toolkit/InputBoxToolkit/Alignment.h")
FILE(INSTALL DESTINATION "${CMAKE_INSTALL_PREFIX}/include/Toolkit" TYPE FILE FILES "/home/jardasmid/Dokumenty/Projekty/JXP Commander/Toolkit/Toolkit/LabelToolkit/Alignment.h")
FILE(INSTALL DESTINATION "${CMAKE_INSTALL_PREFIX}/include/Toolkit" TYPE FILE FILES "/home/jardasmid/Dokumenty/Projekty/JXP Commander/Toolkit/Toolkit/ListViewToolkit/Alignment.h")
FILE(INSTALL DESTINATION "${CMAKE_INSTALL_PREFIX}/include/Toolkit" TYPE FILE FILES "/home/jardasmid/Dokumenty/Projekty/JXP Commander/Toolkit/Toolkit/MenuToolkit/Alignment.h")
FILE(INSTALL DESTINATION "${CMAKE_INSTALL_PREFIX}/include/Toolkit" TYPE FILE FILES "/home/jardasmid/Dokumenty/Projekty/JXP Commander/Toolkit/Toolkit/NotebookToolkit/Alignment.h")
FILE(INSTALL DESTINATION "${CMAKE_INSTALL_PREFIX}/include/Toolkit" TYPE FILE FILES "/home/jardasmid/Dokumenty/Projekty/JXP Commander/Toolkit/Toolkit/PanedToolkit/Alignment.h")
FILE(INSTALL DESTINATION "${CMAKE_INSTALL_PREFIX}/include/Toolkit" TYPE FILE FILES "/home/jardasmid/Dokumenty/Projekty/JXP Commander/Toolkit/Toolkit/ProgressBarToolkit/Alignment.h")
FILE(INSTALL DESTINATION "${CMAKE_INSTALL_PREFIX}/include/Toolkit" TYPE FILE FILES "/home/jardasmid/Dokumenty/Projekty/JXP Commander/Toolkit/Toolkit/ScrolledWindowToolkit/Alignment.h")
FILE(INSTALL DESTINATION "${CMAKE_INSTALL_PREFIX}/include/Toolkit" TYPE FILE FILES "/home/jardasmid/Dokumenty/Projekty/JXP Commander/Toolkit/Toolkit/SeparatorToolkit/Alignment.h")
FILE(INSTALL DESTINATION "${CMAKE_INSTALL_PREFIX}/include/Toolkit" TYPE FILE FILES "/home/jardasmid/Dokumenty/Projekty/JXP Commander/Toolkit/Toolkit/StringToolkit/Alignment.h")
FILE(INSTALL DESTINATION "${CMAKE_INSTALL_PREFIX}/include/Toolkit" TYPE FILE FILES "/home/jardasmid/Dokumenty/Projekty/JXP Commander/Toolkit/Toolkit/StringArrayToolkit/Alignment.h")
FILE(INSTALL DESTINATION "${CMAKE_INSTALL_PREFIX}/include/Toolkit" TYPE FILE FILES "/home/jardasmid/Dokumenty/Projekty/JXP Commander/Toolkit/Toolkit/TableToolkit/Alignment.h")
FILE(INSTALL DESTINATION "${CMAKE_INSTALL_PREFIX}/include/Toolkit" TYPE FILE FILES "/home/jardasmid/Dokumenty/Projekty/JXP Commander/Toolkit/Toolkit/TimerToolkit/Alignment.h")
FILE(INSTALL DESTINATION "${CMAKE_INSTALL_PREFIX}/include/Toolkit" TYPE FILE FILES "/home/jardasmid/Dokumenty/Projekty/JXP Commander/Toolkit/Toolkit/ToolkitToolkit/Alignment.h")
FILE(INSTALL DESTINATION "${CMAKE_INSTALL_PREFIX}/include/Toolkit" TYPE FILE FILES "/home/jardasmid/Dokumenty/Projekty/JXP Commander/Toolkit/Toolkit/VBoxToolkit/Alignment.h")
FILE(INSTALL DESTINATION "${CMAKE_INSTALL_PREFIX}/include/Toolkit" TYPE FILE FILES "/home/jardasmid/Dokumenty/Projekty/JXP Commander/Toolkit/Toolkit/ViewportToolkit/Alignment.h")
FILE(INSTALL DESTINATION "${CMAKE_INSTALL_PREFIX}/include/Toolkit" TYPE FILE FILES "/home/jardasmid/Dokumenty/Projekty/JXP Commander/Toolkit/Toolkit/VPanedToolkit/Alignment.h")
FILE(INSTALL DESTINATION "${CMAKE_INSTALL_PREFIX}/include/Toolkit" TYPE FILE FILES "/home/jardasmid/Dokumenty/Projekty/JXP Commander/Toolkit/Toolkit/WidgetToolkit/Alignment.h")
FILE(INSTALL DESTINATION "${CMAKE_INSTALL_PREFIX}/include/Toolkit" TYPE FILE FILES "/home/jardasmid/Dokumenty/Projekty/JXP Commander/Toolkit/Toolkit/WindowToolkit/Alignment.h")
FILE(INSTALL DESTINATION "${CMAKE_INSTALL_PREFIX}/bin" TYPE PROGRAM FILES "/home/jardasmid/Dokumenty/Projekty/JXP Commander/Toolkit/bin/toolkit-config")
FILE(INSTALL DESTINATION "${CMAKE_INSTALL_PREFIX}/lib" TYPE SHARED_LIBRARY FILES "/home/jardasmid/Dokumenty/Projekty/JXP Commander/Toolkit/CMakeFiles/CMakeRelink.dir/libtoolkit.so")
IF(CMAKE_INSTALL_COMPONENT)
SET(CMAKE_INSTALL_MANIFEST "install_manifest_${CMAKE_INSTALL_COMPONENT}.txt")
ELSE(CMAKE_INSTALL_COMPONENT)
SET(CMAKE_INSTALL_MANIFEST "install_manifest.txt")
ENDIF(CMAKE_INSTALL_COMPONENT)
FILE(WRITE "/home/jardasmid/Dokumenty/Projekty/JXP Commander/Toolkit/${CMAKE_INSTALL_MANIFEST}" "")
FOREACH(file ${CMAKE_INSTALL_MANIFEST_FILES})
FILE(APPEND "/home/jardasmid/Dokumenty/Projekty/JXP Commander/Toolkit/${CMAKE_INSTALL_MANIFEST}" "${file}\n")
ENDFOREACH(file)
Z každého souboru *.h si odsekne příponu a přidá za to Toolkit/Alignment.h a já nevím proč.
Na otázku zatím nikdo bohužel neodpověděl.
Tiskni
Sdílej: