ANSI/C yaziyorsaniz, bir fonksiyonda, tanimlamalari (declarations) herseyden
once yapmalisiniz :).
Yani,
readconfig(conf_file);
u_short port = 54145;
u_short port = 54145;
readconfig(conf_file);
olmali.
On Mon, Mar 22, 2004 at 10:14:06AM +0200, "?zkan KIRIK" wrote:
> Bu arada onceki maili yazarken ufak bi hata yapmisim:
> #include "ornek.c" degil de #include "ornek.h" olacak :)
>
> Compiler'in verdigi hata:
> >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>
> kitap49# gcc -ansi -pedantic -c -W -Wall ipfwadmin.c
>
> ipfwadmin.c: In function `startup':
> ipfwadmin.c:579: warning: pointer targets in passing arg 3 of `getsockname' differ
> in signedness
> ipfwadmin.c: In function `main':
> ipfwadmin.c:620: syntax error before `port'
> ipfwadmin.c:628: `port' undeclared (first use in this function)
> ipfwadmin.c:628: (Each undeclared identifier is reported only once
> ipfwadmin.c:628: for each function it appears in.)
> ipfwadmin.c:630: `log_msg_text' undeclared (first use in this function)
> ipfwadmin.c:637: `client_sock' undeclared (first use in this function)
> ipfwadmin.c:639: `client_name_len' undeclared (first use in this function)
>
> >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
> burada dikkati "syntax error BEFORE 'port'" satirina cekmek istiyorum. readconfig.h
> ta tanimli olan readconfig() fonsiyonunu cagirdigim zaman ortalik karisiyor :))
>
> hata ile ilgii kodun gectigi satirlar:
>
> >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
> Line617: int main(void)
> Line618: {
> Line619: readconfig(conf_file); /* readconfig.h tan cagiriliyor */
> Line620: u_short port = 54145; /* u_short programin baska yerlerinde de
> kullaniliyor ama orda hata vermiyor */
> Line621: int client_sock = -1; /* client_sock tanimli olmasina ragmen hata veriyor
> */
> Line622: struct sockaddr_in client_name;
> Line623: int client_name_len = sizeof(client_name); /* burada tanimlanmasina
> ragmen hata veriyor */
> Line624: char log_msg_text[64];
> Line625: #ifndef DEBUG
> Line626: daemonize();
> Line627: #endif
> Line628: server_sock = startup(&port);
> Line629:
> Line630: sprintf(log_msg_text,"ipfwadmin is started to run on port %d\n", port);
> Line631: log_msg(logfile,log_msg_text);
> ...
> ...
> Line637: client_sock = accept(server_sock,
> Line638: (struct sockaddr *)&client_name,
> Line639: &client_name_len);
> ...
> ...
> ...
> }
> >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>
>
> saygilar.tar.gz
> Ozkan
>
>
>
> *********** REPLY SEPARATOR ***********
>
> On 22.03.2004 at 09:12 Murat Balaban wrote:
>
> >Merhaba,
> >
> >man gcc'den:
> >
> > The `-ansi' option does not cause non-ANSI programs to be re-
> > jected gratuitously. For that, `-pedantic' is required in addi-
> > tion to `-ansi'.
> >
> >-pedantic parametresi de ekler misiniz?
> >
> >Ayrica, sorunun kaynagi bir suru neden olabilir, ANSI/C yaziyor ve semantiklerine
> >dikkat ediyorsaniz, makina ve isletim sistemi arasindaki farklar en son bakmaniz
> >yer olmalidir, bundan emin olabilirsiniz. (buna header'lardaki ufak farklari
> >dahil etmiyorum tabi ki.)
> >
> >gcc'nin verdigi hatayi da paste ederseniz daha fazla bilgi aktarma sansimiz
> >olacaktir.
> >
> >
> >On Sun, Mar 21, 2004 at 10:36:31PM +0200, "?zkan KIRIK" wrote:
> >> Merhabalar,
> >>
> >> C ile yazilim gelistirmek tam basa bela bir olay ya :))
> >> Ama bu sorunlar cozdukce haz veriyor, o yuzden devam ediyorum yazmaya :))
> >>
> >> Neyse konuya girmek istiyorum,
> >> Daha ?nce yazmis oldugum '[freebsd] FreeBSD 5.x ve FreeBSD 4.x te "gcc" farkli
> >> mi?' konulu maile cevaben ANSI/C HP-UX te bile calisir denilmisti
> >>
> >> Ancak kodlarin tamamen ANSI/C uyumlu olmasina ragmen bu sorun devam ediyor.
> >> FreeBSD 5.x ler de derlerlen kullandigim parametreler:
> >>
> >> gcc -ansi -W -Wall -o <output> <filename>
> >>
> >> Ben burada "-ansi" parametresine dikkat cekmek istiyorum. Bu parametre ile
> >> FreeBSD 5.x te derleniyor,
> >> Ayn? sekilde FreeBSD 4.x te derlenmiyor. Compiler'in verdigi hata ise, #include
> >> "ornek.c" ile yazilima dahil ettigim (yani ornek.c de yer alan) fonksiyonlari
> >> cagirdigim noktada meydana geliyor.
> >>
> >> Ben hala deneme yanilmalara devam ediyorum ama .. :))
> >>
> >>
> >> saygilar.tar.gz
> >> Ozkan
> >>
> >>
> >>
> >>
> >>
> >> ---------------------------------------------------------------------
> >> To unsubscribe, e-mail: [EMAIL PROTECTED]
> >> For additional commands, e-mail: [EMAIL PROTECTED]
> >> Liste arsivi: http://lists.enderunix.org ve
> >> http://www.mail-archive.com/[EMAIL PROTECTED]
> >> http://ipucu.EnderUNIX.org - ihtiyac duyacaginiz kisa bilgiler bu sitede!
> >>
> >>
> >
> >--
> >"When all else fails, read the instructions -- Murphy's Technology Laws"
> >
> >Murat Balaban
> >http://www.enderunix.org
> >
> >---------------------------------------------------------------------
> >To unsubscribe, e-mail: [EMAIL PROTECTED]
> >For additional commands, e-mail: [EMAIL PROTECTED]
> >Liste arsivi: http://lists.enderunix.org ve
> >http://www.mail-archive.com/[EMAIL PROTECTED]
> >http://ipucu.EnderUNIX.org - ihtiyac duyacaginiz kisa bilgiler bu sitede!
>
>
>
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]
> Liste arsivi: http://lists.enderunix.org ve
> http://www.mail-archive.com/[EMAIL PROTECTED]
> http://ipucu.EnderUNIX.org - ihtiyac duyacaginiz kisa bilgiler bu sitede!
>
>
--
"When all else fails, read the instructions -- Murphy's Technology Laws"
Murat Balaban
http://www.enderunix.org
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
Liste arsivi: http://lists.enderunix.org ve
http://www.mail-archive.com/[EMAIL PROTECTED]
http://ipucu.EnderUNIX.org - ihtiyac duyacaginiz kisa bilgiler bu sitede!