Sto facendo un semplice gioco per Ubuntu e per aggiornare l'elenco dei punteggi migliori, ha bisogno di un singolo file in fase di esecuzione, chiamato "highscores.bin".Come ottengo il nome utente in un Makefile?
desidero mettere al file dal
/home/(USER)/.game_name
ho studiato un po 'e ha scoperto che all'interno di un Makefile posso ottenere l'ambiente $ USER variabile. Così nel Makefile, al bersaglio 'installazione', ho aggiunto:
mkdir -p $(DESTDIR)home/$$USER/.game_name
Ma quando ho eseguito 'sudo make install', il Makefile installa come:
/home/root/.game_name
Come può ottengo il nome utente (non root) in un Makefile?
P.S .: Sto scrivendo il Makefile a mano. No ./configure
P.S.2: Non voglio fare
mkdir -p ~/.game_name
perché voglio essere in grado di cambiare DESTDIR se voglio installare in una directory temporanea.
Vale la pena sottolineare che non vi è alcuna garanzia che la directory home per un determinato utente sia in/home/nomeutente (ad es.L'homedir di 'root' è in genere'/root') - usa invece la variabile di ambiente 'HOME'. – nickgrim
Perché diavolo è così difficile da trovare su google? La mancanza di discussione su questo specifico scenario è preoccupante. –