1.11M Members

Gnuplot - Build Error.

 
0
 

Anybody know what the below means. I'm building Gnuplot on Windows XP with a MinGW compiler.
It could have something to do with the flags at the top of the message below but I don't know how to work that out.

Error starts 8 lines down.

gcc -DHAVE_CONFIG_H -I. -I..  -I../term -I../term -DBINDIR=\"/usr/local/bin\" -DX11_DRIVER_DIR=\"/usr/local/libexec/gnuplot/4.6\" -DQT_
DRIVER_DIR=\"/usr/local/libexec/gnuplot/4.6\" -DGNUPLOT_SHARE_DIR=\"/usr/local/share/gnuplot/4.6\" -DGNUPLOT_PS_DIR=\"/usr/local/share/
gnuplot/4.6/PostScript\" -DGNUPLOT_JS_DIR=\"/usr/local/share/gnuplot/4.6/js\" -DGNUPLOT_LUA_DIR=\"/usr/local/share/gnuplot/4.6/lua\" -D
CONTACT=\"gnuplot-bugs@lists.sourceforge.net\" -DHELPFILE=\"/usr/local/share/gnuplot/4.6/gnuplot.gih\" -DGNUPLOT_X11=\"`echo gnuplot_x1
1 | sed 's,x,x,'`.exe\" -DXAPPLRESDIR=\"/etc/X11/app-defaults/\"    -g -O2 -MT readline.o -MD -MP -MF .deps/readline.Tpo -c -o readline
.o readline.c
readline.c:220:23: error: termio.h: No such file or directory
readline.c:233: error: 'NCC' undeclared here (not in a function)
readline.c: In function 'set_termio':
readline.c:1250: error: 'TCGETA' undeclared (first use in this function)
readline.c:1250: error: (Each undeclared identifier is reported only once
readline.c:1250: error: for each function it appears in.)
readline.c:1257: error: 'rl_termio' has an incomplete type
readline.c:1283: error: invalid use of undefined type 'struct termio'
readline.c:1283: error: 'BRKINT' undeclared (first use in this function)
readline.c:1283: error: 'PARMRK' undeclared (first use in this function)
readline.c:1283: error: 'INPCK' undeclared (first use in this function)
readline.c:1283: error: 'IUCLC' undeclared (first use in this function)
readline.c:1283: error: 'IXON' undeclared (first use in this function)
readline.c:1283: error: 'IXOFF' undeclared (first use in this function)
readline.c:1284: error: invalid use of undefined type 'struct termio'
readline.c:1284: error: 'IGNBRK' undeclared (first use in this function)
readline.c:1284: error: 'IGNPAR' undeclared (first use in this function)
readline.c:1288: error: invalid use of undefined type 'struct termio'
readline.c:1288: error: 'ICANON' undeclared (first use in this function)
readline.c:1288: error: 'ECHO' undeclared (first use in this function)
readline.c:1288: error: 'ECHOE' undeclared (first use in this function)
readline.c:1288: error: 'ECHOK' undeclared (first use in this function)
readline.c:1288: error: 'ECHONL' undeclared (first use in this function)
readline.c:1288: error: 'NOFLSH' undeclared (first use in this function)
readline.c:1293: error: invalid use of undefined type 'struct termio'
readline.c:1293: error: 'ISIG' undeclared (first use in this function)
readline.c:1294: error: invalid use of undefined type 'struct termio'
readline.c:1294: error: 'VMIN' undeclared (first use in this function)
readline.c:1295: error: invalid use of undefined type 'struct termio'
readline.c:1295: error: 'VTIME' undeclared (first use in this function)
readline.c:1300: error: 'VERASE' undeclared (first use in this function)
readline.c:1300: error: invalid use of undefined type 'struct termio'
readline.c:1301: error: 'VEOF' undeclared (first use in this function)
readline.c:1301: error: invalid use of undefined type 'struct termio'
readline.c:1302: error: 'VKILL' undeclared (first use in this function)
readline.c:1302: error: invalid use of undefined type 'struct termio'
readline.c:1332: error: 'TCSETAW' undeclared (first use in this function)
readline.c: In function 'reset_termio':
readline.c:1361: error: 'TCSETAW' undeclared (first use in this function)
make[3]: *** [readline.o] Error 1
make[3]: Leaving directory `/c/gnuplot/src'
make[2]: *** [all-recursive] Error 1
make[2]: Leaving directory `/c/gnuplot/src'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/c/gnuplot'
make: *** [all] Error 2

xxxx@XXXX-E0A0BDAF9E /c/gnuplot
$

 
0
 

readline.c:220:23: error: termio.h: No such file or directory

Are you sure the path to this file is correct?

 
0
 

I can't even find the file. The file readline.c references it but not sure where termio.h is supposed to be?

Do you know?

 
0
 

Do you have termios.h ?

 
0
 

No, I just did a search on my entire C drive and have nothing of the sort. I can see the alternative in readline.c 'termios' as opposed to 'termio'. I'm sure it's simple.

I noticed on a few posts around the web, there's allot of talk about these being related to linux and unix. Maybe I've forgotton to set something in the makefile which is doing this.

If I knew what the file was I might have a better chance of fixing it.

 
0
 

Appears to be a part of gnulib.

 
0
 

Well, it would make sense.. gnuplot and gnulib.. haha.
I'm not a great interpretor of these things but would gnulib be a dependency of gnuplot?

I'm not overly familiar with the whole gnu thing but it would be handy to know this for the future.

thanks

 
0
 

There's another Makefile specifically for MinGW, when I adjust and use it I get the below errors.

The file gdiplus.h is from libgd of which I have successfully built. For some reason the below error is indicating that libgd can't be found. There's no reference to how it should be found in the Makefile. Is there another file I should adjust to direct gnuplot to libgd? Gnuplot seems to find the other librarys such as libpng and freetype2 but not libgd?

Any clues?

xxxx@XXXX-E0A0BDAF9E /c/gnuplot/config/mingw
$ make all
make TARGET=gnuplot.exe gnuplot.exe
make[1]: Entering directory `/c/gnuplot/config/mingw'
g++ -c  -o wgdiplus.co ../../src/win/wgdiplus.cpp
../../src/win/wgdiplus.cpp:30:21: error: gdiplus.h: No such file or directory
../../src/win/wgdiplus.cpp:32: error: 'Gdiplus' is not a namespace-name
../../src/win/wgdiplus.cpp:32: error: expected namespace-name before ';' token
../../src/win/wgdiplus.cpp: In function 'void gdiplusInit()':
../../src/win/wgdiplus.cpp:42: error: 'GdiplusStartupInput' was not declared in this scope
../../src/win/wgdiplus.cpp:42: error: expected ';' before 'gdiplusStartupInput'
../../src/win/wgdiplus.cpp:43: error: 'gdiplusStartupInput' was not declared in this scope
../../src/win/wgdiplus.cpp:43: error: 'GdiplusStartup' was not declared in this scope
../../src/win/wgdiplus.cpp: In function 'void gdiplusCleanup()':
../../src/win/wgdiplus.cpp:52: error: 'GdiplusShutdown' was not declared in this scope
../../src/win/wgdiplus.cpp: At global scope:
../../src/win/wgdiplus.cpp:57: error: 'Color' does not name a type
../../src/win/wgdiplus.cpp:66: error: expected initializer before '*' token
../../src/win/wgdiplus.cpp: In function 'void gdiplusLineEx(HDC__*, POINT, POINT, UINT, float, COLORREF)':
../../src/win/wgdiplus.cpp:90: error: 'Graphics' was not declared in this scope
../../src/win/wgdiplus.cpp:90: error: expected ';' before 'graphics'
../../src/win/wgdiplus.cpp:95: error: 'graphics' was not declared in this scope
../../src/win/wgdiplus.cpp:95: error: 'SmoothingModeAntiAlias' was not declared in this scope
../../src/win/wgdiplus.cpp:97: error: 'Pen' was not declared in this scope
../../src/win/wgdiplus.cpp:97: error: 'pen' was not declared in this scope
../../src/win/wgdiplus.cpp:97: error: 'gdiplusCreatePen' was not declared in this scope
../../src/win/wgdiplus.cpp:98: error: 'graphics' was not declared in this scope
../../src/win/wgdiplus.cpp:99: error: type '<type error>' argument given to 'delete', expected pointer
../../src/win/wgdiplus.cpp: In function 'void gdiplusPolylineEx(HDC__*, POINT*, int, UINT, float, COLORREF)':
../../src/win/wgdiplus.cpp:112: error: 'Graphics' was not declared in this scope
../../src/win/wgdiplus.cpp:112: error: expected ';' before 'graphics'
../../src/win/wgdiplus.cpp:117: error: 'graphics' was not declared in this scope
../../src/win/wgdiplus.cpp:117: error: 'SmoothingModeAntiAlias' was not declared in this scope
../../src/win/wgdiplus.cpp:119: error: 'Pen' was not declared in this scope
../../src/win/wgdiplus.cpp:119: error: 'pen' was not declared in this scope
../../src/win/wgdiplus.cpp:119: error: 'gdiplusCreatePen' was not declared in this scope
../../src/win/wgdiplus.cpp:120: error: 'Point' was not declared in this scope
../../src/win/wgdiplus.cpp:120: error: 'points' was not declared in this scope
../../src/win/wgdiplus.cpp:120: error: expected type-specifier before 'Point'
../../src/win/wgdiplus.cpp:120: error: expected ';' before 'Point'
../../src/win/wgdiplus.cpp:125: error: 'graphics' was not declared in this scope
../../src/win/wgdiplus.cpp:126: error: type '<type error>' argument given to 'delete', expected pointer
../../src/win/wgdiplus.cpp:127: error: type '<type error>' argument given to 'delete', expected pointer
../../src/win/wgdiplus.cpp: In function 'void gdiplusSolidFilledPolygonEx(HDC__*, POINT*, int, COLORREF, double)':
../../src/win/wgdiplus.cpp:134: error: 'Graphics' was not declared in this scope
../../src/win/wgdiplus.cpp:134: error: expected ';' before 'graphics'
../../src/win/wgdiplus.cpp:135: error: 'graphics' was not declared in this scope
../../src/win/wgdiplus.cpp:135: error: 'SmoothingModeAntiAlias' was not declared in this scope
../../src/win/wgdiplus.cpp:137: error: 'Color' was not declared in this scope
../../src/win/wgdiplus.cpp:137: error: expected ';' before 'gdipColor'
../../src/win/wgdiplus.cpp:138: error: 'Point' was not declared in this scope
../../src/win/wgdiplus.cpp:138: error: 'points' was not declared in this scope
../../src/win/wgdiplus.cpp:138: error: expected type-specifier before 'Point'
../../src/win/wgdiplus.cpp:138: error: expected ';' before 'Point'
../../src/win/wgdiplus.cpp:143: error: 'SolidBrush' was not declared in this scope
../../src/win/wgdiplus.cpp:143: error: expected ';' before 'brush'
../../src/win/wgdiplus.cpp:144: error: 'brush' was not declared in this scope
../../src/win/wgdiplus.cpp:145: error: type '<type error>' argument given to 'delete', expected pointer
../../src/win/wgdiplus.cpp: In function 'void gdiplusPatternFilledPolygonEx(HDC__*, POINT*, int, COLORREF, double, COLORREF, BOOL, int)
':
../../src/win/wgdiplus.cpp:152: error: 'Graphics' was not declared in this scope
../../src/win/wgdiplus.cpp:152: error: expected ';' before 'graphics'
../../src/win/wgdiplus.cpp:153: error: 'graphics' was not declared in this scope
../../src/win/wgdiplus.cpp:153: error: 'SmoothingModeAntiAlias' was not declared in this scope
../../src/win/wgdiplus.cpp:155: error: 'Color' was not declared in this scope
../../src/win/wgdiplus.cpp:155: error: expected ';' before 'gdipColor'
../../src/win/wgdiplus.cpp:156: error: expected ';' before 'gdipBackColor'
../../src/win/wgdiplus.cpp:157: error: 'Brush' was not declared in this scope
../../src/win/wgdiplus.cpp:157: error: 'brush' was not declared in this scope
../../src/win/wgdiplus.cpp:159: error: 'HatchStyle' does not name a type
../../src/win/wgdiplus.cpp:165: error: expected type-specifier before 'SolidBrush'
../../src/win/wgdiplus.cpp:165: error: expected ';' before 'SolidBrush'
../../src/win/wgdiplus.cpp:168: error: expected type-specifier before 'SolidBrush'
../../src/win/wgdiplus.cpp:168: error: expected ';' before 'SolidBrush'
../../src/win/wgdiplus.cpp:171: error: expected type-specifier before 'HatchBrush'
../../src/win/wgdiplus.cpp:171: error: expected ';' before 'HatchBrush'
../../src/win/wgdiplus.cpp:173: error: 'Point' was not declared in this scope
../../src/win/wgdiplus.cpp:173: error: 'points' was not declared in this scope
../../src/win/wgdiplus.cpp:173: error: expected type-specifier before 'Point'
../../src/win/wgdiplus.cpp:173: error: expected ';' before 'Point'
../../src/win/wgdiplus.cpp:179: error: type '<type error>' argument given to 'delete', expected pointer
../../src/win/wgdiplus.cpp:180: error: type '<type error>' argument given to 'delete', expected pointer
../../src/win/wgdiplus.cpp: In function 'void gdiplusCircleEx(HDC__*, POINT*, int, UINT, float, COLORREF)':
../../src/win/wgdiplus.cpp:187: error: 'Graphics' was not declared in this scope
../../src/win/wgdiplus.cpp:187: error: expected ';' before 'graphics'
../../src/win/wgdiplus.cpp:188: error: 'graphics' was not declared in this scope
../../src/win/wgdiplus.cpp:188: error: 'SmoothingModeAntiAlias' was not declared in this scope
../../src/win/wgdiplus.cpp:190: error: 'Pen' was not declared in this scope
../../src/win/wgdiplus.cpp:190: error: 'pen' was not declared in this scope
../../src/win/wgdiplus.cpp:190: error: 'gdiplusCreatePen' was not declared in this scope
../../src/win/wgdiplus.cpp:192: error: type '<type error>' argument given to 'delete', expected pointer
make[1]: *** [wgdiplus.co] Error 1
make[1]: Leaving directory `/c/gnuplot/config/mingw'

make: *** [console] Error 2

 
0
 

Really... Nobody has ever used Gnuplot?

 
0
 

I have tried a newer version, this time with a different error.

It looks like gnuplot is trying to find a 'hcw' file. That's found in HTML Help Workshop package supposedly. But it's not there.

Anybody know what else this may be called? An hcw file must be something else now.

 
0
 

What about building this in Cygwin? Or do you have to run it natively, without Cygwin dlls? Cygwin is much better for porting Linux code to Windows than MingW, in my experience at least. I usually get too frustrated with MingW and go back to Cygwin and a real GCC/G++ compiler set... :-)

 
0
 

I usually get too frustrated with MingW and go back to Cygwin and a real GCC/G++ compiler set... :-)

haha.. good advice. Your definetly right not the frustration part. I have thought of Cygwin and I think you're right about that. The issue is with MinGW itself in this case. There's a few dozen headers and lib files missing from it. If I apply the instructions on the below link, it actually builds.

http://www.codeproject.com/Tips/75491/GDI-Programming-With-MinGW

Having said that, I really don't want to be relying on dll's for anything so I try my best to solve MinGW issues if I can. Trying to build projects statically linked.

You
This article has been dead for over six months: Start a new discussion instead
Post:
Start New Discussion
Tags Related to this Article