Saturday, April 27, 2024
3
rated 0 times [  3] [ 0]  / answers: 1 / hits: 716  / 1 Year ago, sun, january 1, 2023, 2:02:36

I read this question and it's answer about multiple desktop environments and how they might impact system performance and was wondering:



How do I know if I'm using an "application which loads the other DE's modules, libraries etc"?


More From » desktop-environments

 Answers
2

In general way , you can actually lookup in Synaptic manager by selecting the SECTIONS menu, having GNOME Desktop , KDE desktop , amd XFCE desktop environment sub-sections, stating the default applications either QT or GTK based.



And ,there is Library section , a shared section showing Libraries of Gnome and Kde desktop . If you can take a look in description of some of them ,you will find similarity in some of QT's with GTK's , etc.



Gnome and KDE don't have shared Libraries but some common modules like KERNEL and drivers , but different frontends like network managers , sound menu ,etc for them based on DE's .



Dependencies of DE based applications are explained nicely in the above reverendj1's answer. Apart from that you can use utilities like apt-cache ,dpkg ,dpkg-query to get detailed package information and its dependencies and runtime libraries.



And pointing to multiple Desktops modules or library's usage , in simple words if you have KDE and GNOME installed , on running KDE application in Gnome environment will initialize KDE library and vice-versa to polish its interface , integration ,etc . So you will be having two different Core Library functions running. If you have considerable memory for both of them , then its quite a fun to try.






There are commands like




ldd
-->>



which prints the shared libraries required by each program or
shared library specified on the command line.




For example



ldd -u /usr/bin/nautilus
Unused direct dependencies:
linux-vdso.so.1
/usr/lib/libzeitgeist-1.0.so.1
/usr/lib/x86_64-linux-gnu/libgailutil-3.so.0
/usr/lib/libgnome-desktop-3.so.2
/usr/lib/x86_64-linux-gnu/libX11.so.6
/usr/lib/x86_64-linux-gnu/libgmodule-2.0.so.0
/usr/lib/x86_64-linux-gnu/libnotify.so.4
......



ltrace
-->>



ltrace  is  a  program  that simply runs the specified command until it
exits. It intercepts and records the dynamic library calls which are
called by the executed process and the signals which are received by
that process. It can also intercept and print the system calls
executed by the program.



For example



ltrace  ping
__libc_start_main(0x4014a0, 1, 0x7fffdbad54a8, 0x405b00, 0x405b90 <unfinished ...>
socket(2, 3, 1) = 3
__errno_location() = 0x7f0ed1c7a6a0
getuid() = 0
setuid(0) = 0
getopt(1, 0x7fffdbad54a8, "h?VQ:I:M:aUc:dfi:w:l:S:np:qrs:vL"...) = -1
fwrite("Usage: ping [-LRUbdfnqrvVaAD] [-"..., 1, 251, 0x7f0ed1a6d180Usage: ping [-LRUbdfnqrvVaAD] [-c count] [-i interval] [-w deadline]
[-p pattern] [-s packetsize] [-t ttl] [-I interface]
[-M pmtudisc-hint] [-m mark] [-S sndbuf]
[-T tstamp-options] [-Q tos] [hop1 ...] destination
) = 251
exit(2 <unfinished ...>
+++ exited (status 2) +++

[#37138] Sunday, January 1, 2023, 1 Year  [reply] [flag answer]
Only authorized users can answer the question. Please sign in first, or register a free account.
ticeate

Total Points: 497
Total Questions: 128
Total Answers: 112

Location: Samoa
Member since Fri, Nov 27, 2020
3 Years ago
;