Open source modální textový editor Helix, inspirovaný editory Vim, Neovim či Kakoune, byl vydán ve verzi 25.07. Přehled novinek se záznamy terminálových sezení v asciinema v oznámení na webu. Detailně v CHANGELOGu na GitHubu.
Americký výrobce čipů Nvidia získal od vlády prezidenta Donalda Trumpa souhlas s prodejem svých pokročilých počítačových čipů používaných k vývoji umělé inteligence (AI) H20 do Číny. Prodej těchto čipů speciálně upravených pro čínský trh by tak mohl být brzy obnoven, uvedla firma na svém blogu. Americká vláda zakázala prodej v dubnu, v době eskalace obchodního sporu mezi oběma zeměmi. Tehdy to zdůvodnila obavami, že by čipy mohla využívat čínská armáda.
3D software Blender byl vydán ve verzi 4.5 s prodlouženou podporou. Podrobnosti v poznámkách k vydání. Videopředstavení na YouTube.
Open source webový aplikační framework Django slaví 20. narozeniny.
V Brestu dnes začala konference vývojářů a uživatelů linuxové distribuce Debian DebConf25. Na programu je řada zajímavých přednášek. Sledovat je lze online.
Před 30 lety, tj. 14. července 1995, se začala používat přípona .mp3 pro soubory s hudbou komprimovanou pomocí MPEG-2 Audio Layer 3.
Výroba 8bitových domácích počítačů Commodore 64 byla ukončena v dubnu 1994. Po více než 30 letech byl představen nový oficiální Commodore 64 Ultimate (YouTube). S deskou postavenou na FPGA. Ve 3 edicích v ceně od 299 dolarů a plánovaným dodáním v říjnu a listopadu letošního roku.
Společnost Hugging Face ve spolupráci se společností Pollen Robotics představila open source robota Reachy Mini (YouTube). Předobjednat lze lite verzi za 299 dolarů a wireless verzi s Raspberry Pi 5 za 449 dolarů.
Dnes v 17:30 bude oficiálně vydána open source počítačová hra DOGWALK vytvořena v 3D softwaru Blender a herním enginu Godot. Release party proběhne na YouTube od 17:00.
McDonald's se spojil se společností Paradox a pracovníky nabírá také pomocí AI řešení s virtuální asistentkou Olivii běžící na webu McHire. Ian Carroll a Sam Curry se na toto AI řešení blíže podívali a opravdu je překvapilo, že se mohli přihlásit pomocí jména 123456 a hesla 123456 a získat přístup k údajům o 64 milionech uchazečů o práci.
std::cerr<<"foo"
. To normálně funguje, dokud se k .so souboru nepřilinkuje nějaká jiná knihovna (odzkoušeno gomp nebo GL), pak to segfaultuje kdesi v libstdc++ (ostream); Přitom když se přeloží hlavní program pomocí g++, funguje to bez problémů.
Reportoval jsem to na ubuntí bugzillu, ale totéž se děje na debianu (lenny). Nevíte někdo co s tím? Nevím ani pořádně, jestli je to chyba libstdc++ nebo linkeru. Předpokládám, že půjde o nějakou statickou inicializaci čehosi, která se při dlopen neprovede? Přikládám kousky programů (ze zmíněného bugreportu).
main.c:
#include<dlfcn.h> int main(void){ void* handle=dlopen("./libfoo.so",RTLD_NOW); void(*foo)()=(void(*)())dlsym(handle,"foo"); foo(); return 0; }foo.cc:
#include<iostream> extern "C" { void foo() { std::cerr<<"foo"<<std::endl; } }Takhle to padá:
$ g++ foo.cc -o libfoo.so -fPIC -rdynamic -shared $ gcc main.c -o main -ldl $ ./main foo $ g++ foo.cc -o libfoo.so -fPIC -rdynamic -shared -lgomp ## navíc -lgomp → spadne $ ./main foozsh: segmentation fault (core dumped) ./main $ g++ main.c -o main -ldl ## main se kompiluje g++ místo gcc → nespadne $ ./main foo $A tohle mi prozrazuje gdb po pádu (při kompilaci s -g a použití libstdc++6-dbg):
(gdb) bt #0 0x00007f81582c9e49 in std::uncaught_exception () at ../../../../src/libstdc++-v3/libsupc++/eh_catch.cc:136 #1 0x00007f8158294e04 in ~sentry (this=0x7fff3c47bbc0, __in_chrg=<value optimized out>) at /build/buildd/gcc-4.4-4.4.1/build/x86_64-linux-gnu/libstdc++-v3/include/ostream:408 #2 0x00007f8158295445 in std::__ostream_insert<char, std::char_traits<char> > (__out=..., __s=0x7f81590cf3be "foo", __n=3) at /build/buildd/gcc-4.4-4.4.1/build/x86_64-linux-gnu/libstdc++-v3/include/bits/ostream_insert.h:110 #3 0x00007f815829502e in std::operator<< <std::char_traits<char> > (__out=..., __s=0x7f81590cf3be "foo") at /build/buildd/gcc-4.4-4.4.1/build/x86_64-linux-gnu/libstdc++-v3/include/ostream:510 #4 0x00007f81590cf2e6 in foo () at foo.cc:3 #5 0x00000000004003a2 in main () at main.c:5Co by s tím mohlo být? Díky moc.
/tmp$ ./main
fooSegmentation fault
$ LD_PRELOAD=/usr/lib/libgomp.so.1 ./main
foo
Vypada to, ze ta knihovna libgomp nema rada kdyz se nahrava pres dlopen. Ve vypisu nm knihovny libgomp neni nic podezrelyho. Zkusil jsem ten main zkompilovat s -lpthread a ani to nepomohlo.
Jediny co by se s tim jeste dalo delat je kouknout se na .init sekci ty knihovny libgomp pres readelf.
Ivan
Pokud k modulu rucne prilinkuji libsupc++, tak ta sranda funguje.
$ g++ foo.cc -o libfoo.so -fPIC -rdynamic -shared -lgomp -lsupc++
$ LD_PRELOAD=/usr/lib/libstdc++.so.6 ./main foo $Main (což je ve skutečnosti python) tedy musím obalit skriptem, ale to zase tolik nevadí.
Tiskni
Sdílej: