X-Authentication-Warning: delorie.com: mail set sender to djgpp-bounces using -f Date: Fri, 11 May 2007 20:12:39 +0200 From: Michelle Konzack To: djgpp Subject: undefined reference to `strdupa' Message-ID: <20070511181239.GV3209@freenet.de> Mime-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha1; protocol="application/pgp-signature"; boundary="A47bNRIYjYQgpFVi" Content-Disposition: inline X-Message-Flag: Improper configuration of Outlook is a breeding ground for viruses. Please take care your Client is configured correctly. Greetings Michelle. X-Disclaimer-DE: Eine weitere Verwendung oder die Veroeffentlichung dieser Mail oder dieser Mailadresse ist nur mit der Einwilligung des Autors gestattet. Organisation: Michelle's Selbstgebrautes X-Operating-System: Linux devel.private 2.4.27-2-386 X-Uptime: 13:34:56 up 13 days, 17:05, 11 users, load average: 0.21, 0.16, 0.10 X-Homepage-4: http://freenet-homepage.de/dos4michelle/ User-Agent: Mutt/1.5.9i Reply-To: djgpp AT delorie DOT com --A47bNRIYjYQgpFVi Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Content-Transfer-Encoding: quoted-printable Hello, I have a simpel test program which schould split a Courier-Maildir in its levels using: ----8<------------------------------------------------------------------ #include #include #include int main(int argc, char *argv[]) { const char directory[] =3D ".ML_devel DOT djgpp AT delorie_com DOT 2007-04"; const char delimiter[] =3D "."; char *result, *cp; cp =3D strdupa(directory); =20 result =3D strtok(cp, delimiter); printf("Result level 1 =3D %s\n", result); result =3D strtok(NULL, delimiter); printf("Result level 2 =3D %s\n", result); result =3D strtok(NULL, delimiter); printf("Result level 3 =3D %s\n", result); result =3D strtok(NULL, delimiter); printf("Result level 5 =3D %s\n", result); return 0; } ----8<------------------------------------------------------------------ but while compiling it with: $ gcc -Wall -I/usr/include -o z_test z_test.c=20 z_test.c: In function 'main': z_test.c:11: warning: implicit declaration of function 'strdupa' z_test.c:11: warning: assignment makes pointer from integer without a cast /tmp/michelle.konzack.r23246/ccSIU3aN.o: In function `main': z_test.c:(.text+0x37): undefined reference to `strdupa' collect2: ld returned 1 exit status which is the first time I see this error. -- WHY? Oh, I have this and other examples from a GNU-C Book and they are many which are not working. (even with the provided original exanple files) =46rom the glibc documentation: ----[ "/usr/share/doc/glibc-doc/html/libc_5.html" ]--------------------- #include #include #include const char path[] =3D _PATH_STDPATH; int main (void) { char *wr_path =3D strdupa (path); char *cp =3D strtok (wr_path, ":"); while (cp !=3D NULL) { puts (cp); cp =3D strtok (NULL, ":"); } return 0; } ----8<------------------------------------------------------------------ Greetings Michelle Konzack sitting on the line... --=20 Linux-User #280138 with the Linux Counter, http://counter.li.org/ ##################### Debian GNU/Linux Consultant ##################### Michelle Konzack Apt. 917 ICQ #328449886 50, rue de Soultz MSN LinuxMichi 0033/6/61925193 67100 Strasbourg/France IRC #Debian (irc.icq.com) --A47bNRIYjYQgpFVi Content-Type: application/pgp-signature; name="signature.pgp" Content-Description: Digital signature Content-Disposition: inline -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.1 (GNU/Linux) iD8DBQFGRLIWXnHp6ejAnVoRAjqVAJ0dhGh6NtDHN4W2nVoVdYg6B4jgnwCeLyDJ jg3ta6nW9/Mcfl43bpF6abc= =hioz -----END PGP SIGNATURE----- --A47bNRIYjYQgpFVi--