Mailing-List: contact cygwin-help AT sourceware DOT cygnus DOT com; run by ezmlm List-Subscribe: List-Archive: List-Post: List-Help: , Sender: cygwin-owner AT sources DOT redhat DOT com Delivered-To: mailing list cygwin AT sources DOT redhat DOT com Date: Tue, 17 Apr 2001 14:16:02 -0400 (EDT) From: Charles Wilson X-Sender: cwilson AT frontal DOT ibb DOT gatech DOT edu To: Cygwin Users cc: "William D. Kirby" Subject: Re: Readline library global variable rl_complete_with_tilde_expansion In-Reply-To: <3ADC6988.BBC5DBE@yahoo.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Earnie Boyd wrote: > > "William D. Kirby" wrote: > > > > In building gnuplot v3.8f+ the global variable > > rl_complete_with_tilde_expansion causes an error of being undefined in > > plot.c. It is declared as extern int in plot.c, and as int in the > > readline library complete.c. Is this a fault in the readline library or > > in the Cygwin gcc compiler (gcc 2.95.3-3)? > > > > The problem is that plot.c doesn't include the appropriate header to > declare it and is taking matters into it's own hands. Include the > appropriate header and remove the plot.c declaration. It's also only declared in rlprivate.h -- it is NOT a publicly accessible variable and is NOT exported by the DLL. It should NOT be accessed from client programs; gnuplot is broken. It's taking advantage of the fact that all symbols are accessible in static libs, and all symbols are accessible in ELF shared libs. Unfortunately, that little shortcut is not allowed with windows shared libs (dlls). This also explains why plot.c declared the variable itself; rlprivate.h is private -- and is not included in ANY binary dist of readline. Only source dists. --Chuck -- Want to unsubscribe from this list? Check out: http://cygwin.com/ml/#unsubscribe-simple