Regular expressions compile call.

oddvard.myrnes@stoltoffshore.no oddvard.myrnes@stoltoffshore.no
Tue May 8 03:46:00 GMT 2001


Hi Corrina
Many thanks for the quick answer. I have a problem locating the NET
package. Have looked in many ftp sites and can't find any NET package in
either Latest or Contrib. Can you help?
Oddvard
 
 Corinna Vinschen 
 <cygwin@cygwin.com> To: cygwin@cygwin.com 
 Sent by: cc: 
 cygwin-owner@sources. Subject: Re: Regular expressions compile call. 
 redhat.com 
 
 
 07.05.2001 15:25 
 
 
On Mon, May 07, 2001 at 02:33:09PM +0200, oddvard.myrnes@stoltoffshore.no
wrote:
> I am working on a cygwin port from Linux. Straight forward, but one thing
> puzzels me. Why is the regcomp call diffrent. I have to use this pice of
> code to make it work on both platforms:
>> #ifdef cygwin
> regex_t *re;
> #else
> regex_t a, *re;
> re = &a;
> #endif
>> i = regcomp(re, filter, REG_EXTENDED);
>> If I use a preallocated buffer in Cygwin i get an i = 269335288 = random.
> Program gets unstable after the call. If I use a pointer it works.
>> On the linux box (Suse 7.0) I get a segmentation violation trying to run
> with a pointer. Will run fine with a preallocated buffer. They are
oposite
> in behavior. What do I miss?

Cygwin itself contains a very old implementation of regex which
isn't compatible with any standard I'm aware of.
But the Cygwin net distro contains two packages regex-4.4 and
pcre-3.4 which provide libraries which contain POSIX regex APIs.
If you have installed them (recommended), just include the
correct headers
 regex-4.4: regex.h
 pcre-3.4: pcreposix.h
and link with
 regex-4.4: -lregex
 pcre-3.4: -lpcre -lpcreposix
Corinna
--
Corinna Vinschen Please, send mails regarding Cygwin to
Cygwin Developer mailto:cygwin@cygwin.com
Red Hat, Inc.
--
Want to unsubscribe from this list?
Check out: http://cygwin.com/ml/#unsubscribe-simple
--
Want to unsubscribe from this list?
Check out: http://cygwin.com/ml/#unsubscribe-simple


More information about the Cygwin mailing list

AltStyle によって変換されたページ (->オリジナル) /