a.out

Discussion in 'Linux -keskustelu' started by luompe01, May 7, 2006.

  1. luompe01

    luompe01 Member

    Joined:
    Jul 4, 2004
    Messages:
    1
    Likes Received:
    0
    Trophy Points:
    11
    Sain asennettua GCC:n Mandrakeen. kokeilin kääntää yhden malliohjelman --> gcc koe.c ---> Onnistui. Teki a.out tiedoston. Koitin ajaa sen kirjoittamalla ---> a.out ---> Herjasi ettei a.out käskyä löydy. Aloittelija. Puuttuuko joku asennus tai asetus?
     
  2. Bluekkis

    Bluekkis Active member

    Joined:
    Aug 4, 2003
    Messages:
    2,235
    Likes Received:
    0
    Trophy Points:
    66
    *nix järjestelmissä komento "a.out" olettaa että kyseessä on jokin globaalisti asennettu ohjelma joka yleensä löytyy /usr/bin kansioista. Sellaisten ohjelmien ja skriptien ajamiseen jotka löytyvät jostain muualta tarvitsee joko kirjoittaa koko hakemisto polku, esim. "/home/user/a.out" tai vaihtoehtoisesti jos ollaan samassa kansiossa ajettavan ohjelman kanssa riittää pelkkä "./a.out"
     
  3. juyli

    juyli Active member

    Joined:
    May 13, 2005
    Messages:
    1,861
    Likes Received:
    1
    Trophy Points:
    68
    Ja hieman yleisemmin: ohjelmia noudetaan ympäristömuuttujan PATH mukaan:
    echo $PATH (tai komento env selvittää käytössäolevat ympäristömuuttujat)
    Oletushakemisto (hakemisto, jossa ollaan. Komento pwd) on tuo .
    Vrt. ls -a komennon rivit:
    .
    ..
    <muut tiedostot ja hakemistot>

    Tuo a.out saadaan käyntiin (jos se ylipäätään toimii ;) ) myös laittamalla koko polku ohjelmaan esim:
    /home/<käyttäjä>/<koodaushakemisto>/a.out
     
  4. Ysf

    Ysf Active member

    Joined:
    Oct 2, 2005
    Messages:
    1,954
    Likes Received:
    1
    Trophy Points:
    68
    ensiksi tietenkin varmistaa että ko. tiedostolla on suoritusoikeudet. Jos näin ei ole, niin chmod u+x a.out auttaa.



     
  5. .W.

    .W. Regular member

    Joined:
    Mar 1, 2004
    Messages:
    838
    Likes Received:
    0
    Trophy Points:
    26
    Monta vastausta jo..

    Vinkkinä: Laita siihen gcc:n parametriksi [bold]-o[/bold] niin saat sille tiedostolle järkevän nimen. esim: [bold]gcc -o koe koe.c[/bold] niin saat koe nimisen ohjelman siitä.

    Moni tuota seuraavaa jo sanoikin pitkin sanoin.. (sanompahan silti)

    Käynistys: [bold]./[/bold] ohjelman nimen eteen käynnistää ohjelman siitä hakemistossa jossa olet, esim [bold]./koe[/bold]

    Lisävinkkinä: Ja jos teet ohjelman joka pitää saada käynnistymään muiden ohjelmien/komentojen tapaan niin helpoimmalla pääset kun kopiot ohjelman /usr/[bold]local[/bold]/bin hakemistoon. Ja tässä tapauksessa käytä nimenomaan tuota localin alla olevaa bin ehakemistoa jotta ohjelma on tunnistettavissa Mandraken ulkopuolelta asennetuksi ohjelmaksi.
    Toinen tapa tietty on lisätä polkuun uusi hakemisto jossa on omat ohjelmat, mutta kukin tavallaan.

    edit: lisäys: ainiin..

    gcc laittaa kyllä automaattisesti suoritusoikeudet ohjelmille joten niistä ei tervi erikseen huolehtia.

    ja jos C++ ohjelmia koitat niin g++ on se oikea ohjelma gcc:n tilalle.
     
    Last edited: May 7, 2006

Share This Page