kako se pokreće kompajlirani command line program?
(1 korsinik/a gleda/ju temu) (1) Gost

kako se pokreće kompajlirani command line program?


23.01.2011 | 15:56
Nešto pokušavam pomoći nećaku, ali imam problem što ne znam kako pokrenuti C program jednom nakon što je uspješno kompajliran.

Imam, dakle, neki trivijalni C programčić koji je uspješno iskompajliran, bilo da sam to napravio iz Terminala pomoću GCC, bilo pomoću Xcode.

Skužio sam da se u Xcode nakon pokretanja interakcija s programom odvija kroz debugger console, međutim, iz nekih svojih razloga bi više volio pokrenuti ga iz Terminala.

U oba slučaja (i pomoću gcc, i kroz Xcode) dobijem executable binary. GCC kreira a.out u tekućem direktoriju, a Xcode kreira file s imenom projekta smješten u Build/Debug/ unutar mape projekta. U oba slučaja unix dozvole su postavljene tako da je file executable, dakle

-rwxr-xr-x

Koliko se sjećam (ali davno je to bilo), na Unixu je bilo nakon toga dovoljno utipkati ime programa i enter i program bi se pokrenuo. Ovdje, međutim, dobijem poruku "command not found". Isto i nakon što sa chmod 0777 pretvorim dozvole u

-rwxrwxrwx

Isto i ako pokušam pokrenuti sa sudo.

Što sam to zaboravio? Ili na Appleu ima negdje neka kvačica koja onemogućava pokretanje izvršne datoteke ako nije na određenom mjestu na disku?
23.01.2011 | 16:16
Eh... Skužio sam da umjesto

a.out

moram tipkati

./a.out

i onda radi.

Ali - ostaje pitanje - zašto? I može li se to kako izbjeći?
23.01.2011 | 16:43
Ili na Appleu ima negdje neka kvačica koja onemogućava pokretanje izvršne datoteke ako nije na određenom mjestu na disku?

To je unixov feature. Izvršavanje aplikacija u terminalu ovisi o search pathu ("executable search path" ) koji je pohranjen u $PATH env varijabli.

Current directory ("." ) nije u search pathu iz sigurnosnih razloga - tako je najjednostavnije spriječiti izvršavanje malicioznih naredbi (trojani!). Iz perspektive "kućnog Mac usera" to vjerojatno zvuči paranoično ali kada u višekorisničkom sustavu nečiji folder ima "write" privilegiju za sve usere, kada bi "." bio u executable search pathu, netko bi mogao u njega kopirati svoju verziju, recimo, "pwd" naredbe koja radi nešto nevaljalo - i ta verzija bi se izvršila prije sistemske, samo zato što je u lokalnom pathu - točnije, izvršio bi je user u čijem je lokalnom pathu, ne znajući da će pokrenuti "trojana" umjesto sistemske naredbe. Pa su tome doskočili sa "./" - teško da ćeš slučajno napisati "./pwd".

Ako ti je tlaka uvijek pisati "./" dodaj folder u kojem je novokompajlirani exe u path i moći ćeš ga pozivati samo s imenom exe datoteke.
23.01.2011 | 16:58
OK, hvala na tumačenju, ali ipak se ne mogu složiti da je to Unix feature. Radio sam na Unixu dosta i to nije bilo tako. Odnosno, nije bilo "by default".

I, naravno, nitko nije stavljao da je njegov folder otvoren za pisanje svima.

No, nema veze. Sve je jasno, hvala!
23.01.2011 | 17:16
OK, hvala na tumačenju, ali ipak se ne mogu složiti da je to Unix feature. Radio sam na Unixu dosta i to nije bilo tako. Odnosno, nije bilo "by default".

Ne sjećam se kad sam instalirao zadnji unix od nule, a s obzirom na različitost distibucija ne bih stavljao ruku u vatru kako je (ili kako je bio) podešen defaultni path. U svim unixima koje trenutnu koristim nije u pathu pa pretpostavljam da su admini to prihvatili kao "dobru praksu".

Tebi definitivno nitko ne brani dodati "." u path.

export PATH=$PATH:.
23.01.2011 | 17:50
ja ti mogu samo oko Xcodea reć kako ga pokrenut u Terminalu, budući da nisam zadovoljan sa Xcodeovom konzolom.

img.skitch.com/20110123-gjxm1esip5jwh2xgmqfq92tf1s.png
23.01.2011 | 18:19
A može se i mišem odvući u Terminal isto (to sam skužio kasnije). Hvala u svakom slučaju!

Đipi, Unix kojeg sam ja zadnjeg instalirao bio je SCO Unix za PC platformu, 1998. Osim toga sam koristio Unix na onim istim Sun Sparcovima koji su sad naslagani ispod stepenica u Peek & Pokeu, a i tzv. Minix na DEC MicroVAX 350.

Linux nisam koristio skoro ništa. Da ne misliš ti na Linux?
23.01.2011 | 20:17
Djipi je dobro odgovorio. Osobno sam doživio kako je to preporučena sigurnosna politika na Linuxu, FreeBSD-u i Solarisu, a očigledno i na OS X
23.01.2011 | 20:45
OK. Prihvaćam logiku iza toga.
23.01.2011 | 21:45
Current location nije u pathu ni na Solarisu ni na Linuxu ni na AIX-u ni na Tru64 ni na HPUXu ni na NetBSD-u ni na OS X-u.
Iz mojeg iskustva.
Moderatori: Bertone
  • Stranica:
  • 1

Vikalica™

Zadnja poruka: pred 4 sati, 2 minuta
  • smayoo: Za one koji ne znaju čitati misli - [link] :D
  • Borisone: Za one koji ne znaju čitati misli, koja je konfiguracija?
  • VanjusOS: pozdrav, treba li netko Mac mini M2, nekorišteno?
  • kupus: Ima takvih naravno. Iz mog skromnog iskustva takvi su u manjini.
  • smayoo: većina online trgovaca odbija slati na poste restante pa čak i na poštanski pretinac
  • kupus: zasto na osobnu adresu*
  • kupus: Zasto na adresu? Naruci na adresu postanskog ureda, tamo ce te cekat
  • drlovric: Imamo li koga iz Zupanje na forumu da bih mogao naruciti paket na njegovu adresu? :)
  • ecvis17: ok, tnx
  • smayoo: Piši u forum
  • ecvis17: pozdrav svima, imam stari MBP koji maksimalno moze voziti BigSur ... malo nisam vise u toku, gdje se danas mogu pronaci Combo installeri? Tnx
  • cariblanco: Čekao je da Hajduk osvoji prvenstvo i na kraju je odustao ;)
  • Yonkis: Od sada ćemo mjeriti vrijeme pre-JM and post-JM time
  • JOHN: Ako je vjerovao, neka mu dragi Bog pomogne i uzme sebi. Ako nije, opet nema veze……sve u svemu mislim da je živio dobar život!
  • smayoo: Ljudi... ode nam Joža Manolić... Nije šala.
  • accom: ne nadjem...
  • accom: jel postoji tema "must have apps"?
  • Riba: Vjerojtano koliko je Apple mapa detaljna.
  • Yonkis: Ili da otvorim temu u forumu?
  • Yonkis: Jedna osoba dok je bila u Beču, mogao sam vidjeti njenu lokaciju točno na kojem je katu i u kojem dijelu zgrade je bila (iPhone 14 u pitanju). Zna li netko koji su preduvjeti za takvo točno lociranje jer u Hrvatskoj to još nisam nigdje doživio? Vidim lokaciju ali ne u 3D.
  • m@xym: Uostalom, palčevi su na ovom forumu odavno prestali biti relevantni, a nama koji smo redovito ovdje niti ne trebaju da bi smo znali kakav je tko.
  • m@xym: Nerviraj se samo zbog onih koji su ti bitni, a nebitne ignoriraj, inače ćeš ostati bez živaca.
  • Vanjuška: Nema nervoze m@xym, ali da javno prozovem malog žapčića da bog sve vidi i sve zna :D
  • smayoo: Ja nemam.
  • zvone: Servisom naime...
  • zvone: ljudi ima li tko iskustva sa sercisom iklinika?
  • m@xym: Čemu nervoza zbog palčeva?! Evo ti još jedna gore ako te to baš toliko muči.
  • Vanjuška: LOL, puknem post i vidim 1 pozitivan palac gore, a imao sam ih 10 nakon onog Tinovog pushanja. Kaj je Žabac/Jura, opet me imaš na piku? :D
  • Kloba: Predizborna škola Željka Pervana [link]
  • Yonkis: Najljepše je kad ostane u “obitelji” :)
  • imjasminh: Mobitel prodan useru s Jabučnjaka :)
  • Zdravac: :)
  • Zdravac: Jel zna netko bez googlea odakle to?
  • Zdravac: ...Galebi, oj beli tići, poletite dole k jugu, ter moju pozdravite majku...
  • Gjuroo: Moj talent za poeziju nije skriven :)
  • Air: ...možda bi se razvili skriveni talenti za poeziju :)
  • Air: Da uredništvo ima smisla za biznis... brzo bi se reducirao broj vojnih stratega, predsjednika, trenera... :)
  • smayoo: @Air: :D
  • imjasminh: u biti cmd r xD
  • imjasminh: updatane slike mobitela u oglasniku - cmd f5 ako vidite stare slike...
  • imjasminh: Apple iPhone 14, 128GB, Midnight Blue - 89% - Spuštam na 450 EUR - [link]
  • Air: Da uredništvo ima smisla za biznis uvelo bi porez na političke teme, 1c za čitanje, 2c za pisanje po postu.
  • Gjuroo: "Smayoo: 25x je vrlo optimistična procjena :)
  • Bertone: Otvorena tema "Zero-day" pa se slobodno možete maknuti od politike i rata
  • Bertone: Ma znam, ali tko će to čitati :(
  • smayoo: Svatko je slobodan otvoriti kakvu god želi temu koja ne krši opća pravila. Zar je uredništvo krivo što vi, članovi, pokazujete 25 puta veći interes za političke teme, nego za stručne? :)
  • Bertone: ... no u pravu si, lakše je mlatiti o politici nego o stručnim hardversko-softverskim temama :)
  • Bertone: Kad si stavio video, malo sam bacio oko na forum no nisam našao zasebnu temu o sigurnosti u koju bi se mogle staviti vijesti ili linkovi na iste no tražiti ću još malo
  • Gjuroo: Apple teme nam se svele na vikalicu, a forum preuzela politika...
  • Bertone: Još malo o sigurnosti (ako nekoga zanima), [link] i [link]

Za vikanje moraš biti prijavljen.

Prijava

Prisutni jabučari

Bertone, Ender, tino1, zeljacveseljac, Anonimci (753)

Novo na Jabučnjaku

Teme

Poruke

Anketa

Kupujete li profesionalni Mac?

Čekam novi modularni Mac Pro - 48.5%
Novac nije problem, kupujem iMac Pro - 0.7%
Kupujem Valjak, baš je lijep i tih! - 0%
Kupujem polovni Mac Pro tower - 11.8%
Nadogradit ću postojeći Mac Pro tower - 2.9%
Običan iMac 27" mi je dovoljan za posao - 5.9%
Skromnih sam potreba, Mac mini je zakon! - 7.4%
Radim na terenu, mora biti MacBook Pro - 3.7%
Ne diram ništa, stari Mac služi me odlično - 10.3%
Kupujem PC kantu i prelazim na Windowse! - 8.8%

Ukupno glasova: 136
Anketa je završena dana: 08 Svi 2018 - 12:17
Page Speed 1.28 Seconds

Provided by iJoomla SEO