Il linker fa parte della toolchain per la produzione di eseguibili da codice sorgente scritto in linguaggi di programmazione compilati. Prende il codice oggetto compilato in più file e produce un unico file eseguibile "collegato" da essi.
Quanto sarebbe possibile compilare Python (possibilmente tramite una rappresentazione C intermedia) in codice macchina? Presumibilmente avrebbe bisogno di collegarsi a una libreria di runtime Python e anche tutte le parti della libreria standard Python che erano Python stesse dovrebbero essere compilate (e collegate). Inoltre, sarebbe necessario raggruppare l'interprete Python se …
Sono interessato a verificare se una determinata libreria statica di iPhone è stata creata per ARM o Intel. È più curiosità di ogni altra cosa. Esiste un tipo di strumento specifico per Mac OS X o BSD per farlo? Questo post fornisce un esempio in Linux.
Anche programmi Haskell banalmente piccoli si trasformano in giganteschi eseguibili. Ho scritto un piccolo programma, che è stato compilato (con GHC) sul binario con le dimensioni che si estendono 7 MB! Cosa può causare la compilazione di un piccolo programma Haskell nell'enorme binario? Cosa posso fare per ridurlo?
Sto cercando di capire cosa succede quando i moduli con variabili globali e statiche sono collegati dinamicamente a un'applicazione. Per moduli, intendo ogni progetto in una soluzione (lavoro molto con Visual Studio!). Questi moduli sono incorporati in * .lib o * .dll o nello stesso * .exe. Capisco che il …
Mi sono sempre chiesto. So che i compilatori convertono il codice che scrivi in binari, ma cosa fanno i linker? Sono sempre stati un mistero per me. Capisco approssimativamente cosa sia il "collegamento". È quando i riferimenti a librerie e framework vengono aggiunti al binario. Non capisco niente oltre a …
Non riesco a trovare da nessuna parte cosa fa il flag -all_load durante la compilazione del codice Objective-C. Ho alcuni problemi a caricare i binari su Apple, dicono che è perché non ho usato questo flag, ma il mio codice si compila anche senza di esso. Qualcuno mi può aiutare …
Sto utilizzando una libreria di CGAL che durante la fase di collegamento della mia compilazione del codice produce molti avvisi di collegamento di questo modulo: warning LNK4099: PDB 'vc80.pdb' was not found with 'gmp-vc80-mt-sgd.lib' or at 'vc80.pdb'; linking object as if no debug info Come faccio a disattivare questo avviso …
Ho creato un nuovo progetto C ++ in Visual Studio 2008. Non è stato ancora scritto codice; Sono state modificate solo le impostazioni del progetto. Quando compilo il progetto, ricevo il seguente errore irreversibile: errore irreversibile LNK1104: impossibile aprire il file "C: \ Program.obj"
Quando compilo qualcosa sul mio PC Ubuntu Lucid 10.04, viene collegato a glibc. Lucid usa 2.11 di glibc. Quando eseguo questo binario su un altro PC con un vecchio glibc, il comando non riesce dicendo che non c'è glibc 2.11 ... Per quanto ne so glibc usa il controllo delle …
Il mio ambiente C ++ preferito attualmente è l'edizione gratuita e in gran parte eccellente di Microsoft Visual Studio 2005 Express. Di tanto in tanto ho inviato file .exe di rilascio ad altre persone con risultati soddisfacenti. Tuttavia recentemente ho fatto l'inquietante scoperta che i piacevoli risultati erano basati su …
Come posso collegare staticamente solo alcune librerie specifiche al mio binario quando mi collego a GCC? gcc ... -static ...cerca di collegare staticamente tutte le librerie collegate, ma non ho la versione statica di alcune di esse (es: libX11).
Volevo conoscere in profondità il significato e il funzionamento di compilatore, linker e loader. Con riferimento a qualsiasi linguaggio preferibilmente c ++.
Questa è una domanda di seconda mano da un sito di sviluppo del sistema operativo, ma mi ha incuriosito poiché non sono riuscito a trovare una spiegazione decente da nessuna parte. Durante la compilazione e il collegamento di un programma C ++ indipendente utilizzando gcc, a volte si verifica un …
Ricevo errori nel tentativo di compilare una classe template C ++ suddivisa tra un file .hppe .cpp: $ g++ -c -o main.o main.cpp $ g++ -c -o stack.o stack.cpp $ g++ -o main main.o stack.o main.o: In function `main': main.cpp:(.text+0xe): undefined reference to 'stack<int>::stack()' main.cpp:(.text+0x1c): undefined reference to 'stack<int>::~stack()' collect2: …
Ho un vecchio eseguibile programmato per l'heap di scarto, ma non è ancora lì. Si basa su alcune librerie che sono state rimosse dal mio ambiente, ma ho alcune librerie stub da qualche parte in cui funziona bene. Vorrei indicare questo eseguibile a queste librerie stub. Sì, potrei impostare LD_LIBRARY_PATH, …
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.