Avatar billede tax Nybegynder
09. november 2004 - 15:08 Der er 4 kommentarer

GCC makefile - tilfældig variabel

Kan jeg lave en tilfældig variabel i en makefil?  Sekunder, tilfældigt tal eller andet.


Jeg skal bruge det til at ændre en versionsvariabel, så mit target downloader automatisk. (- længere historie)
Avatar billede bertelbrander Novice
09. november 2004 - 22:58 #1
Du kan putte output fra en shell kommando over i en variable ved at bruge $(shell command), f.ex:

RAN=$(shell date)

all:
    @echo $(RAN)

Her udskrives (på en Windows maskine): Tue Nov 9 21:55:28 GMT 2004

Jeg tror dog at der må være en bedre løsning på dit egentlige problem.
Avatar billede tax Nybegynder
11. november 2004 - 08:40 #2
Hej bertelbrander!

Tak for svaret.  Det ser ud til at virke næsten.  Jeg skal bruge det på et SunOS 5.6, og jeg skal have en integer værdi ud. Jeg tænkte at det aktuelle sekund kunne bruges.

Nogle forslag?

Jeg er klar over at det ikke er en ideel løsning, men det er et trick der vil spare mig for at skulle have fat i en fjernbetjæning hvergang jeg skal teste min kode.


P.S.
Husk at det skal være et svar :)
Avatar billede bertelbrander Novice
11. november 2004 - 18:35 #3
Du kan give et argument med til date der får den til at skrive andet end default, +%s giver med min version af date antal sekunder siden 1.1. 1970, kør "date --help" for at se andre muligheder.

Så makefilen kan se sådan ud:

RAN=$(shell date +%s)

all:
    @echo $(RAN)

Jeg samler ikke på point.
Avatar billede tax Nybegynder
11. november 2004 - 21:54 #4
Jeg har brugt det og det duer. Endnu engang tak.
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester