NC - SC

NC - SC

◇◇◇◇◇ REMARK – THIS IS NOT MY MAIN BLOG ◇◇◇◇◇◇

The Better Blog Version is ON WORDPRESS *****To jest blog pomocniczy. Podstawowy jest tu (link trzeba przekopiować): **** https://tradycyjnyyahwista.wordpress.com/ STRUKTURA STRONY:•Wordpress blog zasadniczy, NOWOŚĆ: INDEKS A...Z. Bogate menu, galerie, *AKTUALIZACJE*, ŹRÓDŁA! •Blogger to blog pomocniczy – notatki, też komentarz itp. •YT – playlisty (aż z kilkanaście, PL i ENG.), WYCINKI - FRAGMENTY •Rumble – filmiki, filmy i WYCINKI, Dżek •JustPaste – pozostałe materiały i notatki, koment.

Search This Blog

Showing posts with label .so objects. Show all posts
Showing posts with label .so objects. Show all posts

Wednesday, February 28, 2024

Damned „manually”: Clang «fast» Compiler still, 2024, NOT fully compatible with «gcc-code»: The nsxiv app’s compilation is one example.

 

Problem WAS, I updated some packages in Arch Linux and, after that, tried to replace old sxiv’s program custom enhanced variant to the new nsxiv from its git repository.

3 „old-fashioned” errors
— with fast Clang compiler, „new technology” of compilers, that are also accompanied (across… MULTIPLE Arch Linux packages) with the LLVM compiling orientation:

clang-16: warning: treating ‚c’ input as ‚c++’ when in C++ mode, this behavior is deprecated [-Wdeprecated]
autoreload.c:70:17: error: assigning to ‚char *’ from incompatible type ‚void *’
scratch.buf = erealloc(scratch.buf, scratch.len);
^~~~~~~~ autoreload.c:73:9: error: cannot initialize return object of type ‚char *’ with an rvalue of type ‚void *’ return memcpy(scratch.buf, filepath, len); ^~~~~~~~
autoreload.c:87:9: error: assigning to ‚char *’ from ‚const char *’ discards qualifiers
base = strrchr(filepath, ‚/’);
^~~~~~
3 errors generated.


Rerun make with old, „straight” gcc

 (by unset CXX & unset CC bash commands- and OK:

CC autoreload.o
c99 -Wall -pedantic -O2 -DNDEBUG -D_XOPEN_SOURCE=700 -DHAVE_LIBEXIF=1 -DHAVE_LIBFONTS=1 -DHAVE_INOTIFY=1 -I/usr/include/freetype2 -I/usr/local/include/freetype2 -c -o autoreload.o autoreload.c
CC commands.o
c99 -Wall -pedantic -O2 -DNDEBUG -D_XOPEN_SOURCE=700 -DHAVE_LIBEXIF=1 -DHAVE_LIBFONTS=1 -DHAVE_INOTIFY=1 -I/usr/include/freetype2 -I/usr/local/include/freetype2 -c -o commands.o commands.c
CC image.o


Yea, this one was simple.

 But generally, in IT world we have bigger projects that must be (re)compiled (or linked dynamically), DUE TO *.SO libraries issues.

There is no „hot” alternative. I don’t want the difficult special scientific system distrubution — I prefer to, AS WITH the icu lib, to put *ALTERNATIVE* libs in its special folder – not in /etc/alternatives but in /usr/local/lib/ICUxx, for example. While the icu library is the most wideheavy alternative (Libre Office tends to link version after version of icu!!!), the (re)compilation of application turns out to be solution (as it was with BibleTime, also).

Some time ago, I replaced Arch Linux packages with the manjaro repo – resulted, not instantly but after update+manually, QGIS started working.

Previously I run QGIS from chrooted Debian system (that is, the container – not the VM nor similar, but live ability to change root directory – the SO objects are linked from distribution file tree).


Theory of Concave Earth PC Programs

Saturday, November 4, 2023

1) I repaired it, but... LuxCore DLL-hell at compiling - it's NOT as straight / bug-free as it can seem – long process but now OK | 2) SSE2 instruction set is enough speed for most of graphics processing - WHY?

A LuxCore Render Linux compilation – long, problematic process with a dll-hell

Repeating bugs in the process of LuxCore Render compilation, when I compiled it for approx. month of time. I mean both bugs originating from LuxCore compilation environment at the (too?) proud author(s) -site, AND the difficulty operating CMake – when there's even alternatives, and all this bisons, meson, ninja, autoconf..... and last, but not the least – QMake – I feel nervous looking at that. Much problem in Linux world was building of compiz-git package – AFTER much TIME you are being familar with the clang C++/C compiler compilation process. And a compiz dependency, the protobuf library of Google – turned to be copied to /usr/local/... or its subdir.

Similar strategy needs to be done when dealing with some other apps that depend on ICU-xx internalization library,

First, most important question - where is a point that Linux system (concretely, Arch Linux) goes?

Contantly changing of the most basic system elements – even Debian users aren't glad when they are forced to using old package versions – I tried evento „run” non-functioning App Image.

I made convenience script that replaces the ENV. to „LD.” it to old, previoulsly-copied version of ICU lib. Then I could run some programs OK, with gmrun application „activator”/runner possibilities. As in Linux world, things aren't changing so speedily, this way of operating and administering Linux system – in my opinion tends to remain.

When chaotic vision of system growth makes things complicated, and more scalable

I see it, as a repeating pattern, in process of upgrading the system. In my experience some things need to be compiled but other of course can't – I'm not fan of Gentoo user-compiled system solutions. I do compilation when it suits needs – I „omitted” one importand bug by it, so far. AppImage is not usual solution, I don't believe in it – instead of depleting system RAM, I prefer .so object sharing in RAM. And more, I prefer such techniques of optimizing application code.

If we would use Linux apps wisely, the additional CPU power would have less point of EVEN usability of too-multithreading/CPUs in the MB.

I don't need AVX, SSE3 plus, multi-multi, hyper threading – if you can't program algorithms (esp. browser HTML / +the Java runtime) with proper degree of optimization, then you should direct your time meditating on general information technology issues. One example are the criteria of automatization – you fear it, but life shows it will be necessary in future. Similar issue is to be understood when thinking about relation of internet browsers (esp. in matters of WebGL). Way you use a product implicate the calculational complexity in the main-or-GPU processor. If you make a wise applications (for example, not China/Japan pokemon-go animations in Blender –» ), •then CPU/GPU execution is simpler, and even Watts from your power supply are overall more effective (smaller energy consumption, means more $$$s, to write some of advantages).

They think maybe that pikaur helper and all this „chaotic” solves problems. No, w/o proper philosophy, it can't be done.

I rather treated Linux system as modern. How an error! Arch Linux seems to be modern, especially because of ability to complex-repair and „simplicity” of elasticity – DIY compiling things from AUR shapes system user experience into quickly-resolvable as the needs arising. But this Arch Linux typical approach does have its counterpart. Very flexible system is compromised by time spent in actualisation (including its part, compiling software). Things have some huge bugs, and this turns to be a point when disadvantage of Linux approaches. You have bugs in DE, you have bugs in LuxCore Render (disappeared when I linked whole Bfor Artists into KDbg – ONLY THAT SUFFICES! – LuxCore Render NO MORE STALLED the Blender remake, that is, Bfor Artists, suite.

But it can't be done at all times.

I'm a man, not desiring to replace system elements in an unpredictable way. And definitely, not want to await Blender „Modern” ugly pokemons in Blender / Bforartists suite. Why you must repeat China's errors, America?

Think more about philosophy and spirituality – as Robert Monroe said, you are more that your physical body. As intelliogent being, we must care about ourselves, not only this machines, PCs, smartfons (EGL library). We are NOT „pocket humans”. We are more worthy that systems that we are programming, and also, administering.

Things not need to be quicker, quicker, quicker.

OpenCL was somewhat fine, but selective. Why to make such mess in era of multiprocessor motherboards??! If it really be... fine... then, GPU would be in BIOS as another main processor option !!! But is doesn't. You should m e d i t a t e on 3D graphics rendering process, not only „eat” it mentally. That's it.

•As in life. Contemplation matters, but it mustn't be limited to external, peripheral env. Be humans, NOT the monkeys or other animals!!

•Why I don't „believe” 100% in USA when dependent on China hardware... still. Such a big problem... . But bigger problem would be if Americal even turned to [be the]China.... This 'd make the spiral, a cascade of problems – avoiding that starts certainly at clues contained in this article!