[ Makojdis @ 21.05.2001. 18:51 ] @
Da li neko zna kako se pravi *.h datoteka interesujeme samo struktura da bih mogao da ubacim svoje funkcije |
[ Makojdis @ 21.05.2001. 18:51 ] @
[ Vojislav Milunovic @ 21.05.2001. 20:14 ] @
Pa nema tu nekog redosleda ;o)
Ako oces da pravis svoje funkcije onda se koriste libovi a ne *.h *.h sluzi za neke standardne definicije recimo kao sto su errno ili za deklaraciju funkcija (ne definisanje): primer jednog *.h file-a bi bilo : #ifdef PREDATOR #undef PREDATOR #endif #define PREDATOR 10 extern int predator(int,int,char *); typedef int predator_voja; itd... [ Makojdis @ 21.05.2001. 20:29 ] @
Kako da napravim lib???/
[ Vojislav Milunovic @ 22.05.2001. 13:20 ] @
#cat >gg.c
int pr(){ return write(1,"gg\n",3); } #gcc -c gg.c #ld -shared gg.o -o gg.so [ Makojdis @ 22.05.2001. 17:28 ] @
Nisam bas siguran da sam shvatio......
Sta je sta ovde, meni treba da ubacim deset funkcija i da ih posle koristim u programima [ Vojislav Milunovic @ 22.05.2001. 19:38 ] @
Imas vise nacina da to uradis :
1. mozes sve da ubacis u neki heder file i preprocesor C komapjlera (cpp) ce da ih sve ubaci u jedan file zajedno sa tim funkcijama 2. napravi shared lib kao sto sam gore pokazao i Linuj program sa gcc -ogg gg.c -L/root -lgg 3. napravi 2 file-a 1. sa main funkcijom koji ce da poziva druge te funkcije i 2. sa tim funckijama i radi vako -> gcc -c gg.c gcc -c gg1.c gcc gg1.o gg.o -o gg_final [ Makojdis @ 22.05.2001. 22:40 ] @
Jel ovo radi u turboC-u za windows???
[ Vojislav Milunovic @ 23.05.2001. 00:08 ] @
Pa mozes ti da radis i ovako ako oces ->
#cat gg1 int a,b; #cat gg.c int main(){ #include"gg1" } # a da li to radi u turbo C to ne znam (neverujem da ovo sa ld radi jel je to za UNIX) ali ove ostale tehnike pravljenje .o filova moze...napravis vise objekta i onda ih ulinkujes u jedan executabilan file.Samo nemoj da u .o filovima definises funkcije kao static ko nezelis da budu private. Naime te funkcije se nemogu pozvati izvan tog .o file-a.Znaci nemoj da stavljas static nikako na funkciju ako ce ti trebati u svim filovima tog programa Copyright (C) 2001-2025 by www.elitesecurity.org. All rights reserved.
|