Byla vydána nová stabilní verze 6.11 (YouTube) multiplatformního frameworku a GUI toolkitu Qt. Podrobný přehled novinek v poznámkách k vydání.
Ubuntu 26.04 patrně bude ve výchozím nastavení zobrazovat hvězdičky při zadávání hesla příkazu sudo, změna vychází z nové verze sudo-rs. Ta sice zlepší použitelnost systému pro nové uživatele, na které mohlo 'tiché sudo' působit dojmem, že systém 'zamrzl' a nijak nereaguje na stisky kláves, na druhou stranu se jedná o možnou bezpečnostní slabinu, neboť zobrazování hvězdiček v terminálu odhaluje délku hesla. Původní chování příkazu sudo
… více »Projekt systemd schválil kontroverzní pull request, který do JSON záznamů uživatelů přidává nové pole 'birthDate', datum narození, tedy údaj vyžadovaný zákony o ověřování věku v Kalifornii, Coloradu a Brazílii. Jiný pull request, který tuto změnu napravoval, byl správcem projektu Lennartem Poetteringem zamítnut s následujícím zdůvodněním:
… více »Nové číslo časopisu Raspberry Pi zdarma ke čtení: Raspberry Pi Official Magazine 163 (pdf).
Eric Lengyel dobrovolně uvolnil jako volné dílo svůj patentovaný algoritmus Slug. Algoritmus vykresluje text a vektorovou grafiku na GPU přímo z dat Bézierových křivek, aniž by využíval texturové mapy obsahující jakékoli předem vypočítané nebo uložené obrázky a počítá přesné pokrytí pro ostré a škálovatelné zobrazení písma, referenční ukázka implementace v HLSL shaderech je na GitHubu. Slug je volným dílem od 17. března letošního
… více »Sashiko (GitHub) je open source automatizovaný systém pro revizi kódu linuxového jádra. Monitoruje veřejné mailing listy a hodnotí navrhované změny pomocí umělé inteligence. Výpočetní zdroje a LLM tokeny poskytuje Google.
Cambalache, tj. RAD (rapid application development) nástroj pro GTK 4 a GTK 3, dospěl po pěti letech vývoje do verze 1.0. Instalovat jej lze i z Flathubu.
KiCad (Wikipedie), sada svobodných softwarových nástrojů pro počítačový návrh elektronických zařízení (EDA), byl vydán v nové major verzi 10.0.0 (𝕏). Přehled novinek v příspěvku na blogu.
Letošní Turingovou cenu (2025 ACM A.M. Turing Award, Nobelova cena informatiky) získali Charles H. Bennett a Gilles Brassard za základní přínosy do oboru kvantové informatiky, které převrátily pojetí bezpečné neprolomitelné komunikace a výpočetní techniky. Jejich protokol BB84 z roku 1984 umožnil fyzikálně zaručený bezpečný přenos šifrovacích klíčů, zatímco jejich práce o kvantové teleportaci položila teoretické základy pro budoucí kvantový internet. Jejich práce spojila fyziku s informatikou a ovlivnila celou generaci vědců.
Firefox 149 dostupný od 24. března přinese bezplatnou vestavěnou VPN s 50 GB přenesených dat měsíčně (s CZ a SK se zatím nepočítá) a zobrazení dvou webových stránek vedle sebe v jednom panelu (split view). Firefox Labs 149 umožní přidat poznámky k panelům (tab notes, videoukázka).
Snažím se udělat makefile pro knihovnu. Cílem je aby make static vytvořil libdfmt.a a make win32 vyrobil pře mingw win32libdfmt.a
Pokusil jsem se využít target specific hodnot proměnných.
A skoro to i funguje.
Cíl win32 přenastaví proměnnou NAME z libdfmt na win32libdfmt a přejde k cíli static. Na základě proměnné NAME by v cíl static měl mít perekvizitu ../win32libdfmt.a. Ale z nějkého důvodu je v perekvizitě použita stará hodnota z NAME. Ovšem výpis v těle vypíše správnou hodnotu.V terminálu se mi vypíše:
... AR target: name is win32libdfmt.a target name is ../libdfmt.a ... call from static target: name is win32libdfmt.aTak nevim - z nějakého důvodu to nejdřív vyrobí perekvizity a až potom se to pustí do vyhodnocování. Jak nějak elegantně vyřešit tu kroskompilaci ? Nebo dělám něco blbě ?
IDIR =../include ODIR=../obj DOC=../doc NAME=libdfmt CC=gcc AR=ar CFLAGS=-Wall -std=c99 -O0 -g INCLUDES = -I../ -I$(IDIR) -I/usr/include/libusb-1.0/ LIBS= -lusb-1.0 DEPS = $(wildcard ../*.h) $(wildcard $(IDIR)/*.h) OBJ = $(patsubst %.c,%.o,$(wildcard *.c)) VPATH = $(ODIR) ../ .PHONY: all all: test static %.o: %.c $(DEPS) mkdir -p $(ODIR) $(CC) -c -o $(ODIR)/$@ $< $(CFLAGS) $(INCLUDES) .PHONY: static static: ../$(NAME).a $(info call from static target: name is $(NAME).a ) ../%.a: $(OBJ) $(info AR target: name is $(NAME).a target name is $@) $(AR) rsc $@ $(patsubst %, $(ODIR)/%, $(OBJ)) .PHONY: win32 win32: CC = /usr/bin/i686-w64-mingw32-gcc win32: AR = /usr/bin/i686-w64-mingw32-ar win32: ODIR := $(ODIR)/win32 win32: NAME := win32$(NAME) win32: static .PHONY: clean clean: rm -rvf $(ODIR) *~ core $(INCDIR)/*~ ../*.a ../*.bin .PHONY: test test: ../$(NAME).bin ../$(NAME).bin: $(OBJ) gcc $(CFLAGS) -o ../$(NAME).bin $(patsubst %, $(ODIR)/%, $(OBJ)) $(LIBS) && chmod +x ../$(NAME).bin .PHONY: doc doc: $(DOC)/html/index.html $(DOC)/html/index.html: $(wildcard ../*.h) $(DOC)/Doxyfile cd $(DOC) && doxygen $(ODIR): mkdir -p $(ODIR)
Na otázku zatím nikdo bohužel neodpověděl.
Tiskni
Sdílej: