Torna indietro   Hardware Upgrade Forum > Software > Programmazione

DLSS 4.5: con Dynamic Frame Generation e MFG 6X NVIDIA alza la posta
DLSS 4.5: con Dynamic Frame Generation e MFG 6X NVIDIA alza la posta
DLSS 4.5 introduce Dynamic Multi Frame Generation e MFG 6X, permettendo fino a cinque frame generati per ogni frame renderizzato. I test su Cyberpunk 2077 e 007 First Light mostrano forti incrementi di FPS e riduzione della latenza su RTX 5090 Laptop. Migliorano fluidità, stabilità e qualità visiva.
Plaud NotePin S, il registratore IA si fa indossabile (ma è facile da perdere)
Plaud NotePin S, il registratore IA si fa indossabile (ma è facile da perdere)
Quattro modi di indossarlo, stessa app del Plaud Note Pro e integrazione con il desktop. Il registratore IA da indossare di Plaud eccelle in mobilità, ma resta vincolato all'abbonamento ed è facile da perdere
Redmi Watch 6 in prova: lo smartwatch con ampio display da 2000 nit a meno di 100 euro
Redmi Watch 6 in prova: lo smartwatch con ampio display da 2000 nit a meno di 100 euro
Xiaomi ha portato Redmi Watch 6 anche sul mercato italiano, puntando su un display AMOLED da 2,07 pollici con picco di luminosità a 2000 nit, frame in alluminio da 9,9mm e un'autonomia dichiarata di 12 giorni. Lo smartwatch gira su HyperOS 3 e integra GPS, Bluetooth 5.4 e oltre 150 sport mode. Il tutto a meno di 100 euro
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 24-07-2010, 13:12   #1
Duchamp
Member
 
L'Avatar di Duchamp
 
Iscritto dal: Apr 2010
Messaggi: 67
[C] metodo "out of the box" per distribuire un software + libreria .so

Ciao raga,
in questi giorni sto cercando un buon metodo per distribuire un software (già compilato), basato su alcune librerie esterne. Sarebbe bello se l'utilizzatore finale dovesse fare il minor sforzo possibile per far partire il programma: unzip dei materiali e doppio click sull'eseguibile. Ho già visto che qualcuno crea una sottodirectory "libs" che contiene tutti i file .so (librerie dinamiche, ambiente linux) e mi sembra un'ottima idea: lo è anche secondo voi?
Non ho problemi nella compilazione ma rimane un punto oscuro: dopo aver "copiato" i file utili da usr/lib (ad esempio) come faccio a linkarli in gcc con il nuovo path, che è in questo caso [mio_programma]/libs? Inoltre, gli header posso tranquillamente lasciarli nella cartella di sistema /include?
Vi ringrazio in anticipo per qualsiasi suggerimento, anche solo relativo alla scelta della cartella libs. Ovviamente guide e link sono i benvenuti
Duchamp è offline   Rispondi citando il messaggio o parte di esso
Old 24-07-2010, 13:18   #2
tuccio`
Senior Member
 
Iscritto dal: Apr 2010
Città: Frosinone
Messaggi: 416
se distribuisci l'eseguibile già compilato non servono gli header, servono solo librerie linkate dinamicamente.. ma ti fa schifo usare il make? O:
tuccio` è offline   Rispondi citando il messaggio o parte di esso
Old 24-07-2010, 13:28   #3
Duchamp
Member
 
L'Avatar di Duchamp
 
Iscritto dal: Apr 2010
Messaggi: 67
Quote:
Originariamente inviato da tuccio` Guarda i messaggi
se distribuisci l'eseguibile già compilato non servono gli header, servono solo librerie linkate dinamicamente.. ma ti fa schifo usare il make? O:
ciao tuccio`, ma con o senza make il problema rimane, o no? Anche nel makefile io devo specificare il path della libreria, che non è più in /usr ma nella cartella del mio software... O forse non ho colto il senso della tua osservazione
Duchamp è offline   Rispondi citando il messaggio o parte di esso
Old 24-07-2010, 16:53   #4
tuccio`
Senior Member
 
Iscritto dal: Apr 2010
Città: Frosinone
Messaggi: 416
nel make puoi mettere nella regola install un semplice cp libreria.so /usr/lib/libreria.so

e visto che ci sei distribuisci anche il sorgente e compila tutto con make ^_^
tuccio` è offline   Rispondi citando il messaggio o parte di esso
Old 25-07-2010, 13:25   #5
marco.r
Senior Member
 
Iscritto dal: Dec 2005
Città: Istanbul
Messaggi: 1817
Quote:
Originariamente inviato da Duchamp Guarda i messaggi
Non ho problemi nella compilazione ma rimane un punto oscuro: dopo aver "copiato" i file utili da usr/lib (ad esempio) come faccio a linkarli in gcc con il nuovo path, che è in questo caso [mio_programma]/libs? Inoltre, gli header posso tranquillamente lasciarli nella cartella di sistema /include?
Gli include servono solo per compilare per cui se distribuisci solo l'eseguibile lasciali pure dove sono. Per le librerie hai due alternative
1) colleghi staticamente le librerie all'eseguibile che quindi conterra' tutto il necessario e non necessitera' di file .so esterni
2) prepari uno script da far lanciare (al posto dell'eseguibile) che prima di far partire il programma vero e proprio imposti tra le altre cose la variabile d'ambiente LD_LIBRARY_PATH in modo che punto alla cartella con i file .so
__________________
One of the conclusions that we reached was that the "object" need not be a primitive notion in a programming language; one can build objects and their behaviour from little more than assignable value cells and good old lambda expressions. —Guy Steele
marco.r è offline   Rispondi citando il messaggio o parte di esso
Old 26-07-2010, 14:09   #6
Duchamp
Member
 
L'Avatar di Duchamp
 
Iscritto dal: Apr 2010
Messaggi: 67
Ciao di nuovo a tutti e grazie per le risposte. Purtroppo, vista l'utenza che utilizzerà il software, non è proprio possibile parlare di make e compilazione da sorgenti Dev'essere sul serio un binario già compilato pronto per l'uso.

Quindi se setto la variabile d'ambiente LD_LIBRARY_PATH con la cartella [mio_programma]/libs, questo path andrà a sovrascrivere quelli già esistenti standard o si aggiungerà semplicemente in coda?
Duchamp è offline   Rispondi citando il messaggio o parte di esso
Old 27-07-2010, 09:49   #7
cionci
Senior Member
 
L'Avatar di cionci
 
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
Sai già la distribuzione target sulla quale andrà installato ?
cionci è offline   Rispondi citando il messaggio o parte di esso
Old 27-07-2010, 11:29   #8
Z80Fan
Senior Member
 
L'Avatar di Z80Fan
 
Iscritto dal: Sep 2009
Messaggi: 638
Ciao!
Quote:
Originariamente inviato da Duchamp Guarda i messaggi
Quindi se setto la variabile d'ambiente LD_LIBRARY_PATH con la cartella [mio_programma]/libs, questo path andrà a sovrascrivere quelli già esistenti standard o si aggiungerà semplicemente in coda?
si, a meno che non usi qualcosa del tipo
LD_LIBRARY_PATH = $LD_LIBRARY_PATH; path;path

Se vuoi, conosco questo programma...
http://www.phunland.com/wiki/Download
...che usa lo script di avvio (che si chiama phun) per settare il path giusto, e poi avvia l'eseguibile vero e proprio (che si chiama phun.bin).
__________________
| Il mio "OS" (thread su HWU) | |
Z80Fan è offline   Rispondi citando il messaggio o parte di esso
Old 27-07-2010, 11:37   #9
cionci
Senior Member
 
L'Avatar di cionci
 
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
Comunque quel path lo puoi settare anche al momento in cui vai a lanciare il programma. All'utente farai lanciare uno script bash invece del programma direttamente, così puoi manipolare quella variabile d'ambiente come più ti aggrada.
cionci è offline   Rispondi citando il messaggio o parte di esso
Old 27-07-2010, 16:48   #10
lock cmpxchg8b %ebx
Member
 
Iscritto dal: Apr 2010
Messaggi: 56
E aggiungere $ORIGIN/libs al RPATH?
Così non servono script...
lock cmpxchg8b %ebx è offline   Rispondi citando il messaggio o parte di esso
Old 27-07-2010, 22:15   #11
Duchamp
Member
 
L'Avatar di Duchamp
 
Iscritto dal: Apr 2010
Messaggi: 67
Quote:
Originariamente inviato da cionci Guarda i messaggi
Sai già la distribuzione target sulla quale andrà installato ?
Sarà quasi sicuramente usato su Ubuntu e derivati, considerata la diffusione...

Ringrazio tutti per le varie segnalazioni, mi prendo un paio di giorni di studio per le info che mi avete fornito, posterò in caso di problemi!
Duchamp è offline   Rispondi citando il messaggio o parte di esso
Old 28-07-2010, 06:59   #12
cionci
Senior Member
 
L'Avatar di cionci
 
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
Quote:
Originariamente inviato da Duchamp Guarda i messaggi
Sarà quasi sicuramente usato su Ubuntu e derivati, considerata la diffusione...
Allora fai un pacchetto deb e ti togli la paura Così avrai sotto controllo l'installazione, l'upgrade e la disinstallazione.
cionci è offline   Rispondi citando il messaggio o parte di esso
Old 30-07-2010, 18:54   #13
Duchamp
Member
 
L'Avatar di Duchamp
 
Iscritto dal: Apr 2010
Messaggi: 67
Benissimo, come anticipato eccomi di ritorno a martellare
Il .deb è sicuramente un'ottima idea per il futuro, ma vorrei studiarmelo con calma onde evitare ca**ate. Mi ha attirato molto il flag -rpath, tuttavia leggendo la documentazione non ho capito se dev'essere passato al linker durante la compilazione della libreria oppure quando si compila l'eseguibile finale... potreste farmi/linkarmi qualche esempio concreto? Ringrazio in anticipo.
Duchamp è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


DLSS 4.5: con Dynamic Frame Generation e MFG 6X NVIDIA alza la posta DLSS 4.5: con Dynamic Frame Generation e MFG 6X ...
Plaud NotePin S, il registratore IA si fa indossabile (ma è facile da perdere) Plaud NotePin S, il registratore IA si fa indoss...
Redmi Watch 6 in prova: lo smartwatch con ampio display da 2000 nit a meno di 100 euro Redmi Watch 6 in prova: lo smartwatch con ampio ...
Mad Catz M.M.O. 7+: lo stesso DNA del R.A.T. 8+ ADV, ma con molti più pulsanti Mad Catz M.M.O. 7+: lo stesso DNA del R.A.T. 8+ ...
Radeon RX 9070 GRE, AMD la porta in tutto il mondo | Recensione Gigabyte Gaming OC Radeon RX 9070 GRE, AMD la porta in tutto il mon...
TIM, rincari da luglio: come evitare l'a...
WWDC 26: Il Digital Markets Act dell'Uni...
WWDC 26: Apple Intelligence rivoluziona ...
Siri AI arriva alla WWDC 2026: nuove cap...
Alla WWDC 2026 arriva la nuova architett...
Tra schede madri, schede video e IA le n...
Nintendo, multa da 35 milioni di euro in...
L'amministrazione Trump valuta una parte...
WWDC 26: Apple rinnova il controllo pare...
Apple al WWDC 26 presenta iOS 27: Liquid...
Xbox, alla fine, dà ragione a Pla...
Minecraft Dungeons 2: Microsoft ha annun...
Synology al Computex 2026: nuova generaz...
Quobly raccoglie 115 milioni di euro per...
BYD batte sul tempo Tesla Roadster: avvi...
Chromium
GPU-Z
OCCT
LibreOffice Portable
Opera One Portable
Opera One 106
CCleaner Portable
CCleaner Standard
Cpu-Z
Driver NVIDIA GeForce 546.65 WHQL
SmartFTP
Trillian
Google Chrome Portable
Google Chrome 120
VirtualBox
Tutti gli articoli Tutte le news Tutti i download

Strumenti

Regole
Non Puoi aprire nuove discussioni
Non Puoi rispondere ai messaggi
Non Puoi allegare file
Non Puoi modificare i tuoi messaggi

Il codice vB è On
Le Faccine sono On
Il codice [IMG] è On
Il codice HTML è Off
Vai al Forum


Tutti gli orari sono GMT +1. Ora sono le: 21:41.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Served by www3v