Una libreria è una raccolta di funzionalità che i programmi possono utilizzare. Possono essere caricati dinamicamente da un programma o possono essere compilati nel programma.
Voglio scoprire l'elenco delle librerie dinamiche che un binario carica quando viene eseguito (con i loro percorsi completi). Sto usando CentOS 6.0. Come fare questo?
Perché quasi tutte le librerie condivise /usr/lib/hanno impostato il bit di autorizzazione eseguibile? Non vedo alcun caso d'uso per eseguirli. Alcuni riescono ad agganciare una qualche forma di mainfunzione per stampare una breve nota sul copyright e sulla versione, ma molti non lo fanno nemmeno e segfault al momento dell'esecuzione. …
Ho creato alcune librerie da fonti e i file dopo make installsono dentro/usr/local/lib Ad esempio, nel mio caso ho il file libodb-2.2.soche si trova in questa directory. Tuttavia, quando avvio l'eseguibile collegato libodb, ho ricevuto l'errore: errore durante il caricamento delle librerie condivise:libodb-2.2.so: cannont open shared object file: No such …
Il mio sistema Ubuntu 13.04 a 64 bit ha le seguenti directory in /: lib lib32 lib64 libx32 libexec Nella /usrdirectory c'è: lib lib32 libx32 libexec Sembrava qualcosa a cui si potesse facilmente rispondere con una ricerca, ma non ho trovato nulla online, a parte il fatto che queste directory …
Mi chiedo come Linux gestisce le librerie condivise. (attualmente sto parlando di Maemo Fremantle, una distro basata su Debian rilasciata nel 2009 con 256 MB di RAM). Supponiamo di avere due eseguibili che si collegano a libQtCore.so.4 e usano i suoi simboli (usando le sue classi e funzioni). Per semplicità, …
In Windows, EXE e DLL hanno informazioni sulla versione, inclusi almeno i seguenti campi: versione del file versione del prodotto nome interno nome del prodotto diritto d'autore Nella libreria Linux / eseguibile: Quali campi sono presenti? Come visualizzare tali informazioni? Quali strumenti / librerie leggere?
Volevo semplicemente calcolare la lunghezza di una stringa (che è il valore hash). Quindi, ho aperto il terminale e ho fatto questo: $ apropos length che mi ha restituito un gruppo di comandi / funzioni che hanno (3)o (3ssl)aggiunto alla fine di essi. Ora man man ci dà informazioni sul …
Ho un eseguibile binario chiamato "alpha" che richiede una libreria collegata (libz.so.1.2.7) che si trova in /home/username/myproduct/lib/libz.so.1.2.7 Esporto lo stesso nella mia istanza di terminale prima di generare il mio eseguibile binario eseguendo il comando seguente. export LD_LIBRARY_PATH=/home/username/myproduct/lib/:$LD_LIBRARY_PATH Ora, quando ho generato un'altra applicazione "bravo" che richiede la stessa libreria …
Ho un'applicazione a 32 bit (chiamata uclsyn) che ho ricevuto da un professore di astronomia. Sono riuscito a farlo funzionare su CentOS un anno fa, ma ora quando sto configurando una nuova VM CentOS, non funzionerà e non riesco a capire perché. Continua a tornare con "Killed". Questo è lo …
Recentemente, ho imparato un trucco che se un file manca di autorizzazioni eseguibili, possiamo eseguirlo usando /lib64/ld-linux-x86-64.so.2. Ad esempio, per ripristinare l'autorizzazione x per -rw-r--r-- 1 root root 59K Mar 1 2017 /bin/chmod possiamo correre /lib64/ld-linux-x86-64.so.2 /bin/chmod +x /bin/chmod Non so davvero come si possa fare, non è una cosa …
Ho due sistemi Ubuntu-x86_64. Uno è la versione 10.04, l'altro 12.04 e c'è una differenza nella struttura delle directory lib. Questo non mi sorprende, ma sono curioso di sapere se qualcuno sa perché. C'è una buona ragione per cui? 10.04 2.6.32-38-server #83-Ubuntu SMP Wed Jan 4 11:26:59 UTC 2012 x86_64 …
Ho un programma che dipende dalla libreria collegata a libboost 1.67, installato nel sistema. Quando lo avvio, ho un errore che libboost_system.so.1.58non esiste. LD_PRELOADe LD_LIBRARY_PATHnon sono impostati. lddtreel'esecuzione non mostra questa libreria come dipendenza ma lo lddfa. Come posso tracciare da dove è richiesta la libreria?
Sto cercando di installare un pacchetto .deb di terze parti che ho installato prima su Debian 8. Ma non riesco a installarlo su una nuova installazione di Debian 9 perché ottengo il seguente errore: dpkg: dependency problems prevent configuration of parity: parity depends on libssl1.0.0 (>= 1.0.0); however: Package libssl1.0.0 …
La mia domanda nasce dal mio problema nell'avvio di ffmpeg. Ho installato ffmpeg e viene visualizzato come installato: whereis ffmpeg ffmpeg: /usr/bin/ffmpeg /usr/bin/X11/ffmpeg /usr/share/ffmpeg /usr/share/man/man1/ffmpeg.1.gz Successivamente, ho capito che alcuni programmi dipendono da librerie che non vengono fornite con l'installazione stessa, quindi ho controllato con il comando ldd cosa manca: …
Conosco strace, che è molto utile per guardare le chiamate di sistema. Esiste un equivalente in grado di tracciare le chiamate a librerie esterne? Ad esempio, sto cercando di eseguire il debug di alcuni comportamenti errati di SSL con un file binario di terze parti per cui non riesco ad …
Esiste qualcosa come un generatore di suoni stereo (canale sinistro e destro separato) per Linux? Dove è possibile impostare il volume e il tono / tono per ciascun canale e, preferibilmente, anche impostare la forma d'onda (seno, quadrato, dente di sega, ...) e invertire un canale (rispetto all'altro). In caso …
Di volta in volta vedo domande come queste: GLIBCXX 3.4.15 su Centos 6 CentOS 4.8 e glibc 2.5 E questi sono i tipi di soluzioni che stiamo tipicamente spingendo: come eseguire nuovo software senza aggiornare GLIBC? Installare due glibc insieme a debian / ubuntu GLIBCXX 3.4.15 su Centos 6 È …
Ho installato boost usando sudo apt-get installsu Ubuntu. Successivamente non ho dovuto dare a gcc il Iflag lungo il percorso delle librerie boost per usare boost! Né ho fatto pkg-config --cflags --libsalcun tipo. Qual è il mistero qui? In che modo gcc è in grado di sapere dove si trova …
Ho installato Ubuntu 12.04 64 bit. Ho bisogno di lavorare con Python e Scipy, li ho installati e quando eseguo il test: python -c "import scipy; scipy.test()" Ricevo il messaggio: ImportError: libatlas.so.3gf: impossibile aprire il file oggetto condiviso: nessun file o directory Tuttavia, ho librerie libatlas installate nella directory /usr/lib/atlas-base. …
Vorrei sapere qual è la differenza tra una chiamata della libreria e una chiamata di sistema in Linux. Qualsiasi suggerimento per una buona comprensione dei concetti alla base di entrambi sarà molto apprezzato.
Voglio esportare LD_LIBRARY_PATHverso i servizi di sistema e tutti gli utenti. I servizi di sistema vengono eseguiti prima dell'accesso, quindi .bashrcnon è applicabile. Come raggiungere questo obiettivo?
Ho installato il programma Motion su una macchina Linux (M1) e voglio lo stesso programma su un'altra (M2). Esistono varie build di questo programma e ho dimenticato quale ho usato, quindi posso fare una copia diretta del file utente / bin / motion da M1 e posizionarlo nell'utente / bin …
Esiste un eseguibile che voglio installare su un computer che non riesco a ricompilare che non è stato creato come pacchetto e che voglio scaricare le librerie necessarie per eseguirle. Di seguito è riportata una parte dell'output eseguito lddsu di esso libpango-1.0.so.0 => /usr/lib/i386-linux-gnu/libpango-1.0.so.0 (0xb702f000) libcairo.so.2 => /usr/lib/i386-linux-gnu/libcairo.so.2 (0xb6f64000) libatk-1.0.so.0 …
Ho risposto alla domanda ma non capisco bene la differenza tra chiamate di sistema e funzioni di libreria. Concettualmente, qual è la differenza tra i due?
È possibile utilizzare un codice di modifica automatica per accelerare la chiamata di funzioni in librerie collegate dinamicamente? Per quanto ne so, le librerie condivise ELF usano una sorta di tabella di salto indiretto (la tabella di collegamento delle procedure o PLT) per abilitare il binding pigro delle funzioni delle …
Sto cercando di capire lo standard della gerarchia dei filesystem. Ho cercato sia i binari che le librerie, e come lo capisco attualmente: i binari sono file di codice leggibile dal computer in formato binario, che controllano direttamente la CPU e il processore con i bit. le librerie sono funzioni …
We use cookies and other tracking technologies to improve your browsing experience on our website,
to show you personalized content and targeted ads, to analyze our website traffic,
and to understand where our visitors are coming from.
By continuing, you consent to our use of cookies and other tracking technologies and
affirm you're at least 16 years old or have consent from a parent or guardian.