gtk/PlatGTK.cxx: In static member function 'static long int Platform::SendScinti
lla(WindowID, unsigned int, long unsigned int, long int)':
gtk/PlatGTK.cxx:2049:43: error: 'SCINTILLA' was not declared in this scope
return scintilla_send_message(SCINTILLA(w), msg, wParam, lParam);
^
gtk/PlatGTK.cxx:2049:65: error: 'scintilla_send_message' was not declared in thi
s scope
return scintilla_send_message(SCINTILLA(w), msg, wParam, lParam);
^
gtk/PlatGTK.cxx: In static member function 'static long int Platform::SendScinti
llaPointer(WindowID, unsigned int, long unsigned int, void)':
gtk/PlatGTK.cxx:2054:43: error: 'SCINTILLA' was not declared in this scope
return scintilla_send_message(SCINTILLA(w), msg, wParam,
^
gtk/PlatGTK.cxx:2055:64: error: 'scintilla_send_message' was not declared in thi
s scope
reinterpret_cast<sptr_t>(lParam));
^
gtk/PlatGTK.cxx: In static member function 'static long int Platform::SendScinti
lla(WindowID, unsigned int, long unsigned int, long int)':
gtk/PlatGTK.cxx:2050:1: warning: control reaches end of non-void function [-Wret
urn-type]
}
^
gtk/PlatGTK.cxx: In static member function 'static long int Platform::SendScinti
llaPointer(WindowID, unsigned int, long unsigned int, void</sptr_t>)':
gtk/PlatGTK.cxx:2056:1: warning: control reaches end of non-void function [-Wret
urn-type]
}
^
make[1]: *** [PlatGTK.o] Error 1
make[1]: Leaving directory `/e/Downloads/geany-1.23.1/scintilla'
make: *** [all] Error 2
I try to compile Geany on Windows 7 with MinGW.
When I compile Geany I have error on Scintilla compilation. I have try to compile
http://prdownloads.sourceforge.net/scintilla/scintilla336.zip?download : it works fine.
Thank you for your help.
Can you try Geany from git, it also uses scintilla 3.3.6
It might just be that
GTKis not defined, which is a weird quirk aboutScintillaWidget.hthat's burned me on a number of occasions. You could test if that's it by doingmake CFLAGS="-DGTK"(or whatever flags like CPPFLAGS or CXXFLAGS or something) when you make it.Last edit: Anonymous 2013-10-28
Thank you for your reply !
Can you try Geany from git, it also uses scintilla 3.3.6 => same error
gtk/PlatGTK.cxx: In static member function 'static long int Platform::SendScinti
lla(WindowID, unsigned int, long unsigned int, long int)':
gtk/PlatGTK.cxx:2055:43: error: 'SCINTILLA' was not declared in this scope
return scintilla_send_message(SCINTILLA(w), msg, wParam, lParam);
^
gtk/PlatGTK.cxx:2055:65: error: 'scintilla_send_message' was not declared in thi
s scope
return scintilla_send_message(SCINTILLA(w), msg, wParam, lParam);
^
gtk/PlatGTK.cxx: In static member function 'static long int Platform::SendScinti
llaPointer(WindowID, unsigned int, long unsigned int, void)':
gtk/PlatGTK.cxx:2060:43: error: 'SCINTILLA' was not declared in this scope
return scintilla_send_message(SCINTILLA(w), msg, wParam,
^
gtk/PlatGTK.cxx:2061:64: error: 'scintilla_send_message' was not declared in thi
s scope
reinterpret_cast<sptr_t>(lParam));
^
gtk/PlatGTK.cxx: In static member function 'static long int Platform::SendScinti
lla(WindowID, unsigned int, long unsigned int, long int)':
gtk/PlatGTK.cxx:2056:1: warning: control reaches end of non-void function [-Wret
urn-type]
}
^
gtk/PlatGTK.cxx: In static member function 'static long int Platform::SendScinti
llaPointer(WindowID, unsigned int, long unsigned int, void</sptr_t>)':
gtk/PlatGTK.cxx:2062:1: warning: control reaches end of non-void function [-Wret
urn-type]
}
^
make[1]: *** [PlatGTK.o] Error 1
make[1]: Leaving directory `/e/Downloads/geany-master/scintilla'
make: *** [all] Error 2
Last edit: neoxeo 2013-10-28
With CFLAGS="-DGTK" and Github version with 3.3.6
Sorry, I'm a newbee with MinGW, I hope that syntax is good.
$ make -f makefile.win32
make -C tagmanager/ctags -f makefile.win32
make[1]: Entering directory
/e/Downloads/geany-master/tagmanager/ctags' make[1]: Nothing to be done forall'.make[1]: Leaving directory
/e/Downloads/geany-master/tagmanager/ctags' make -C tagmanager/mio -f makefile.win32 make[1]: Entering directory/e/Downloads/geany-master/tagmanager/mio'make[1]: Nothing to be done for
all'. make[1]: Leaving directory/e/Downloads/geany-master/tagmanager/mio'make -C tagmanager/src -f makefile.win32
make[1]: Entering directory
/e/Downloads/geany-master/tagmanager/src' make[1]: Nothing to be done forall'.make[1]: Leaving directory
/e/Downloads/geany-master/tagmanager/src' make CFLAGS="-DGTK" -C scintilla -f makefile.win32 make[1]: Entering directory/e/Downloads/geany-master/scintilla'g++ -DNDEBUG -Os -Wall -Wno-missing-braces -Wno-char-subscripts -DGTK -DSCI_LEXE
R -I include -I src -I lexlib -I . -IC:/libs/include/gtk-2.0 -IC:/libs/lib/gtk-2
.0/include -IC:/libs/include/atk-1.0 -IC:/libs/include/cairo -IC:/libs/include/g
dk-pixbuf-2.0 -IC:/libs/include/pango-1.0 -IC:/libs/include/glib-2.0 -IC:/libs/l
ib/glib-2.0/include -IC:/libs/include -IC:/libs/include/gettext -mms-bitfields -
DG_THREADS_IMPL_NONE -c gtk/PlatGTK.cxx
gtk/PlatGTK.cxx: In static member function 'static long int Platform::SendScinti
lla(WindowID, unsigned int, long unsigned int, long int)':
gtk/PlatGTK.cxx:2055:43: error: 'SCINTILLA' was not declared in this scope
return scintilla_send_message(SCINTILLA(w), msg, wParam, lParam);
^
gtk/PlatGTK.cxx:2055:65: error: 'scintilla_send_message' was not declared in thi
s scope
return scintilla_send_message(SCINTILLA(w), msg, wParam, lParam);
^
gtk/PlatGTK.cxx: In static member function 'static long int Platform::SendScinti
llaPointer(WindowID, unsigned int, long unsigned int, void)':
gtk/PlatGTK.cxx:2060:43: error: 'SCINTILLA' was not declared in this scope
return scintilla_send_message(SCINTILLA(w), msg, wParam,
^
gtk/PlatGTK.cxx:2061:64: error: 'scintilla_send_message' was not declared in thi
s scope
reinterpret_cast<sptr_t>(lParam));
^
gtk/PlatGTK.cxx: In static member function 'static long int Platform::SendScinti
lla(WindowID, unsigned int, long unsigned int, long int)':
gtk/PlatGTK.cxx:2056:1: warning: control reaches end of non-void function [-Wret
urn-type]
}
^
gtk/PlatGTK.cxx: In static member function 'static long int Platform::SendScinti
llaPointer(WindowID, unsigned int, long unsigned int, void</sptr_t>)':
gtk/PlatGTK.cxx:2062:1: warning: control reaches end of non-void function [-Wret
urn-type]
}
^
make[1]: *** [PlatGTK.o] Error 1
make[1]: Leaving directory `/e/Downloads/geany-master/scintilla'
make: *** [all] Error 2
I don't undestand why Scintilla 3.3.6 without Geany compile fine, and why I have this error when I try to compile Geany. If I have no good GTK define, scintilla 3.3.6 won't compile fine.
Thank you again for your reply and your help.
I don't know how you compiled scintilla by itself, but are you sure you compiled the GTK version. Scintilla has a windows native version as well, which I would have thought was the default build on Windows. Geany uses the GTK version of scintilla on all platforms since Geany is a GTK application.
You are right, Lex. I think I have use windows version (on http://www.scintilla.org/ScintillaDownload.html I have choose Zip file).
I have also download the "tgz format (1200K) commonly used on Linux and compatible operating systems" and try to compile Scintilla in MSYS mode. No problem, the 2 dll was create.
In source code, for zip or tgz (windows or Linux), there is "scintilla\gtk" directory.
Try to compile scite, scite.exe is generated and all is OK.
Last edit: neoxeo 2013-10-28
If I remember correctly, to build the GTK+ platform Scintilla, you need to be inside the "gtk" directory. It won't make any .dlls, it should just dump an .a file into the "bin" directory. But either way, there's a huge difference between building upstream Scintilla and Geany: build systems :)
I know I'm a newbee, thank you to try to help me.
Ok. Go to Scintilla 3.3.6 GTK directory, and run a make => no error and scintilla.a created in bin directory.
Do you think, that is needed to modify Makefile.am and/or makefile.win32 in geany-master\scintilla directory ?
No idea to help me ?
GTK compilation of scintilla is ok, but in Geany always have the same error.
Thank you.
Can you post the whole command that make fails on, which should start 'g++'. Also which makefile are you using?
Hi Nick,
Here is the command line :
g++ -DNDEBUG -Os -Wall -Wno-missing-braces -Wno-char-subscripts -DGTK -DSCI_LEXER -I include -I src -I lexlib -I . -Ie:/Compiler/gtk_bundle/
k-2.0 -Ie:/Compiler/gtk_bundle/lib/gtk-2.0/include -Ie:/Compiler/gtk_bundle/include/atk-1.0 -Ie:/Compiler/gtk_bundle/include/cairo -Ie:/Comp
undle/include/gdk-pixbuf-2.0 -Ie:/Compiler/gtk_bundle/include/pango-1.0 -Ie:/Compiler/gtk_bundle/include/glib-2.0 -Ie:/Compiler/gtk_bundle/l
0/include -Ie:/Compiler/gtk_bundle/include -Ie:/Compiler/gtk_bundle/include/gettext -mms-bitfields -DG_THREADS_IMPL_NONE -c gtk/PlatGTK.cxx
gtk/PlatGTK.cxx: In static member function 'static long int Platform::SendScintilla(WindowID, unsigned int, long unsigned int, long int)':
gtk/PlatGTK.cxx:2057:43: error: 'SCINTILLA' was not declared in this scope
return scintilla_send_message(SCINTILLA(w), msg, wParam, lParam);
^
gtk/PlatGTK.cxx:2057:65: error: 'scintilla_send_message' was not declared in this scope
return scintilla_send_message(SCINTILLA(w), msg, wParam, lParam);
^
gtk/PlatGTK.cxx: In static member function 'static long int Platform::SendScintillaPointer(WindowID, unsigned int, long unsigned int, void)
gtk/PlatGTK.cxx:2062:43: error: 'SCINTILLA' was not declared in this scope
return scintilla_send_message(SCINTILLA(w), msg, wParam,
^
gtk/PlatGTK.cxx:2063:64: error: 'scintilla_send_message' was not declared in this scope
reinterpret_cast<sptr_t>(lParam));
^
gtk/PlatGTK.cxx: In static member function 'static long int Platform::SendScintilla(WindowID, unsigned int, long unsigned int, long int)':
gtk/PlatGTK.cxx:2058:1: warning: control reaches end of non-void function [-Wreturn-type]
}
^
gtk/PlatGTK.cxx: In static member function 'static long int Platform::SendScintillaPointer(WindowID, unsigned int, long unsigned int, void</sptr_t>)
gtk/PlatGTK.cxx:2064:1: warning: control reaches end of non-void function [-Wreturn-type]
}
^
makefile.win32:61: recipe for target 'PlatGTK.o' failed
mingw32-make[1]: *** [PlatGTK.o] Error 1
mingw32-make[1]: Leaving directory 'E:/Downloads/geany-master/scintilla'
makefile.win32:33: recipe for target 'all' failed
mingw32-make: *** [all] Error 2
Last edit: neoxeo 2013-10-30
E:\Downloads\geany-master>mingw32-make -f makefile.win32
or
E:\Downloads\geany-master\scintilla>mingw32-make -f makefile.win32
g++ -DNDEBUG -Os -Wall -Wno-missing-braces -Wno-char-subscripts -DGTK -DSCI_LEXER -I include -I src -I lexlib -I . -Ie:/Compiler/gtk_bundle/inclu
k-2.0 -Ie:/Compiler/gtk_bundle/lib/gtk-2.0/include -Ie:/Compiler/gtk_bundle/include/atk-1.0 -Ie:/Compiler/gtk_bundle/include/cairo -Ie:/Compiler/
undle/include/gdk-pixbuf-2.0 -Ie:/Compiler/gtk_bundle/include/pango-1.0 -Ie:/Compiler/gtk_bundle/include/glib-2.0 -Ie:/Compiler/gtk_bundle/lib/gl
0/include -Ie:/Compiler/gtk_bundle/include -Ie:/Compiler/gtk_bundle/include/gettext -mms-bitfields -DG_THREADS_IMPL_NONE -c gtk/PlatGTK.cxx
gtk/PlatGTK.cxx: In static member function 'static long int Platform::SendScintilla(WindowID, unsigned int, long unsigned int, long int)':
gtk/PlatGTK.cxx:2057:43: error: 'SCINTILLA' was not declared in this scope
return scintilla_send_message(SCINTILLA(w), msg, wParam, lParam);
^
gtk/PlatGTK.cxx:2057:65: error: 'scintilla_send_message' was not declared in this scope
return scintilla_send_message(SCINTILLA(w), msg, wParam, lParam);
^
gtk/PlatGTK.cxx: In static member function 'static long int Platform::SendScintillaPointer(WindowID, unsigned int, long unsigned int, void)':
gtk/PlatGTK.cxx:2062:43: error: 'SCINTILLA' was not declared in this scope
return scintilla_send_message(SCINTILLA(w), msg, wParam,
^
gtk/PlatGTK.cxx:2063:64: error: 'scintilla_send_message' was not declared in this scope
reinterpret_cast<sptr_t>(lParam));
^
gtk/PlatGTK.cxx: In static member function 'static long int Platform::SendScintilla(WindowID, unsigned int, long unsigned int, long int)':
gtk/PlatGTK.cxx:2058:1: warning: control reaches end of non-void function [-Wreturn-type]
}
^
gtk/PlatGTK.cxx: In static member function 'static long int Platform::SendScintillaPointer(WindowID, unsigned int, long unsigned int, void</sptr_t>)':
gtk/PlatGTK.cxx:2064:1: warning: control reaches end of non-void function [-Wreturn-type]
}
^
makefile.win32:61: recipe for target 'PlatGTK.o' failed
mingw32-make: *** [PlatGTK.o] Error 1
You could also try to compile with the alternate Waf build system.
To try this you first need to install Python and then in the Geany source directory:
python waf configure
python waf build
And see if it succeeds.
I just tried it myself and building with Waf succeeds, at least on my very old, not up2dae Windows XP VM.
And as Scintilla itself builds also, it seems related to the hand-written Makefiles.
Thank you Enrico for your.
I'll test that tomorrow and will give you result...
The result of waf compilation :
E:\Downloads\geany-master>python waf configure
Setting top to : E:\Downloads\geany-master
Setting out to : E:\Downloads\geany-master_build_
Checking for waf version in 1.6.1-1.8.0 : ok
Checking for 'gcc' (c compiler) : E:\Compiler\MinGW\bin\gcc.exe
Checking for header fcntl.h : yes
Checking for header fnmatch.h : not found
Checking for header glob.h : yes
Checking for header sys/time.h : yes
Checking for header sys/types.h : yes
Checking for header sys/stat.h : yes
Checking for function fgetpos : yes
Checking for function ftruncate : yes
Checking for function mkstemp : not found
Checking for function strstr : yes
Checking for 'g++' (c++ compiler) : E:\Compiler\MinGW\bin\g++.exe
Checking for program windres : E:\Compiler\MinGW\bin\windres.exe
Checking for program msgfmt : E:\Compiler\MinGW\bin\msgfmt.exe
Checking for program perl : E:\Compiler\MinGW\msys\1.0\bin\perl.exe
Checking for program pkg-config : E:\Compiler\MinGW\bin\pkg-config.exe
Checking for 'gtk+-2.0' >= 2.16.0 : yes
Checking for 'glib-2.0' >= 2.20.0 : yes
Checking for 'gmodule-2.0' : yes
Checking for 'gio-2.0' : yes
Checking for 'gtk+-2.0' version : yes
Checking for 'gthread-2.0' : yes
Summary:
Install Geany 1.24 in : geany-1.24
Using GTK version : 2.24.10
Build with plugin support : yes
Use virtual terminal support : no
'configure' finished successfully (17.819s)
E:\Downloads\geany-master>python waf build
Waf: Entering directory `E:\Downloads\geany-master_build_'
[ 1/193] winrc: geany_private.rc -> build\geany_private.rc.o
[ 2/193] geanyfunctions.h: plugins\genapi.py src\plugins.c
[ 3/193] subst_pc: geany.pc.in -> build\geany.pc
[ 4/193] c: plugins\splitwindow.c -> build\plugins\splitwindow.c.13.o
[ 5/193] c: plugins\saveactions.c -> build\plugins\saveactions.c.12.o
[ 6/193] c: plugins\demoplugin.c -> build\plugins\demoplugin.c.8.o
[ 7/193] c: src\ui_utils.c -> build\src\ui_utils.c.5.o
...
[ 95/193] c: tagmanager\ctags\ctags.c -> build\tagmanager\ctags\ctags.c.1.o
[ 96/193] c: tagmanager\ctags\html.c -> build\tagmanager\ctags\html.c.1.o
In file included from ..\tagmanager\ctags\ctags.c:85:0:
e:\compiler\mingw\include\dir.h:37:2: warning: #warning WARNING - The dir.h file is obsolete and will be removed; use io.h instead. [-Wcpp]
#warning WARNING - The dir.h file is obsolete and will be removed; use io.h instead.
^
[ 97/193] c: tagmanager\ctags\keyword.c -> build\tagmanager\ctags\keyword.c.1.o
[ 98/193] c: tagmanager\ctags\sort.c -> build\tagmanager\ctags\sort.c.1.o
[ 99/193] c: tagmanager\ctags\latex.c -> build\tagmanager\ctags\latex.c.1.o
...
[134/193] cxx: scintilla\lexers\LexPO.cxx -> build\scintilla\lexers\LexPO.cxx.4.o
[135/193] cxx: scintilla\gtk\ScintillaGTK.cxx -> build\scintilla\gtk\ScintillaGTK.cxx.4.o
...
[149/193] cxx: scintilla\gtk\PlatGTK.cxx -> build\scintilla\gtk\PlatGTK.cxx.4.o
[150/193] cxx: scintilla\lexlib\LexerModule.cxx -> build\scintilla\lexlib\LexerModule.cxx.4.o
...
[162/193] c: src\socket.c -> build\src\socket.c.5.o
[163/193] c: src\msgwindow.c -> build\src\msgwindow.c.5.o
In file included from ..\src\socket.c:70:0:
e:\compiler\mingw\include\ws2tcpip.h:38:2: error: #error "ws2tcpip.h is not compatible with winsock.h. Include winsock2.h instead."
#error "ws2tcpip.h is not compatible with winsock.h. Include winsock2.h instead."
^
In file included from ..\src\socket.c:70:0:
e:\compiler\mingw\include\ws2tcpip.h:147:8: error: redefinition of 'struct ip_mreq'
struct ip_mreq {
^
In file included from e:\compiler\mingw\include\windows.h:93:0,
from E:\Compiler\gtk_bundle\include\gtk-2.0/gdk/gdkwin32.h:35,
from ..\src\socket.c:67:
e:\compiler\mingw\include\winsock.h:315:8: note: originally defined here
struct ip_mreq {
^
Waf: Leaving directory `E:\Downloads\geany-master_build_'
Build failed
-> task in 'geany' failed (exit status 1):
{task 27363152: c socket.c -> socket.c.5.o}
['E:\Compiler\MinGW\bin\gcc.exe', '-DHAVE_CONFIG_H', '-DGTK', '-mms-bitfields', '-mms-bitfields', '-mms-bitfields', '-mms-bitfields', '-mms-bitfie
lds', '-IE:\Downloads\geany-master\build', '-IE:\Downloads\geany-master', '-IE:\Downloads\geany-master\build\scintilla\include', '-IE:\
Downloads\geany-master\scintilla\include', '-IE:\Downloads\geany-master\build\tagmanager\src', '-IE:\Downloads\geany-master\tagmanager\s
rc', '-IE:\Compiler\gtk_bundle\include\gtk-2.0', '-IE:\Compiler\gtk_bundle\lib\gtk-2.0\include', '-IE:\Compiler\gtk_bundle\include\atk-1.
0', '-IE:\Compiler\gtk_bundle\include\cairo', '-IE:\Compiler\gtk_bundle\include\gdk-pixbuf-2.0', '-IE:\Compiler\gtk_bundle\include\pango-1
.0', '-IE:\Compiler\gtk_bundle\include\glib-2.0', '-IE:\Compiler\gtk_bundle\lib\glib-2.0\include', '-IE:\Compiler\gtk_bundle\include', '-I
E:\Compiler\gtk_bundle\include\freetype2', '-IE:\Compiler\gtk_bundle\include\libpng14', '-DHAVE_FCNTL_H=1', '-DHAVE_GLOB_H=1', '-DHAVE_SYS_TIM
E_H=1', '-DHAVE_SYS_TYPES_H=1', '-DHAVE_SYS_STAT_H=1', '-DHAVE_STDLIB_H=1', '-DSTDC_HEADERS=1', '-DHAVE_REGCOMP=1', '-DHAVE_FGETPOS=1', '-DHAVE_FTRUNC
ATE=1', '-DHAVE_STRSTR=1', '-DHAVE_GTK=1', '-DHAVE_GLIB=1', '-DHAVE_GMODULE=1', '-DHAVE_GIO=1', '-DGTK_VERSION="2.24.10"', '-DHAVE_GTHREAD=1', '-DPREF
IX="geany-1.24"', '-DBINDIR="geany-1.24\bin"', '-DDOCDIR="geany-1.24\doc"', '-DLIBDIR="geany-1.24"', '-DLOCALEDIR="sharelocale"', '-DENABLE_NLS=1',
'-DGEANY_LOCALEDIR=""', '-DGEANY_DATADIR="data"', '-DGEANY_DOCDIR="geany-1.24\doc"', '-DGEANY_LIBDIR=""', '-DGEANY_PREFIX=""', '-DPACKAGE="geany"', '
-DVERSION="1.24"', '-DREVISION="-1"', '-DGETTEXT_PACKAGE="geany"', '-DHAVE_PLUGINS=1', '-DHAVE_SOCKET=1', '-DG_LOG_DOMAIN="Geany"', '-DGEANY_PRIVATE',
'..\src\socket.c', '-c', '-o', 'src\socket.c.5.o']
We can see that :
[135/193] cxx: scintilla\gtk\ScintillaGTK.cxx -> build\scintilla\gtk\ScintillaGTK.cxx.4.o
[149/193] cxx: scintilla\gtk\PlatGTK.cxx -> build\scintilla\gtk\PlatGTK.cxx.4.o
compiled fine but an other error :(
Last edit: neoxeo 2013-10-31
Try to replace ws2tcpip.h by winsock.h in socket.c :
E:\Downloads\geany-master>python waf build
Waf: Entering directory `E:\Downloads\geany-master_build_'
[ 4/193] cshlib: build\plugins\classbuilder.c.7.o -> build\classbuilder.dll build\libclassbuilder.dll.a
[ 15/193] cshlib: build\plugins\export.c.9.o -> build\export.dll build\libexport.dll.a
[ 17/193] cshlib: build\plugins\filebrowser.c.10.o -> build\filebrowser.dll build\libfilebrowser.dll.a
[ 17/193] cshlib: build\plugins\htmlchars.c.11.o -> build\htmlchars.dll build\libhtmlchars.dll.a
[181/193] c: src\navqueue.c -> build\src\navqueue.c.5.o
[182/193] c: src\win32.c -> build\src\win32.c.5.o
[183/193] c: src\notebook.c -> build\src\notebook.c.5.o
[184/193] c: src\keybindings.c -> build\src\keybindings.c.5.o
[186/193] c: src\socket.c -> build\src\socket.c.5.o
[186/193] cxxstlib: build\scintilla\lexlib\CharacterSet.cxx.4.o build\scintilla\lexers\LexMatlab.cxx.4.o build\scintilla\lexers\LexHTML.cxx.4.o
build\scintilla\lexers\LexCSS.cxx.4.o build\scintilla\lexers\LexForth.cxx.4.o build\scintilla\src\AutoComplete.cxx.4.o build\scintilla\lexers\
LexLua.cxx.4.o build\scintilla\lexers\LexPO.cxx.4.o build\scintilla\lexers\LexMarkdown.cxx.4.o build\scintilla\lexers\LexNsis.cxx.4.o build\sc
intilla\lexlib\WordList.cxx.4.o build\scintilla\lexers\LexCmake.cxx.4.o build\scintilla\lexers\LexTCL.cxx.4.o build\scintilla\lexlib\CharacterCa
tegory.cxx.4.o build\scintilla\lexers\LexPowerShell.cxx.4.o build\scintilla\lexers\LexBash.cxx.4.o build\scintilla\src\ViewStyle.cxx.4.o build
\scintilla\lexers\LexHaskell.cxx.4.o build\scintilla\lexers\LexLaTeX.cxx.4.o build\scintilla\lexers\LexYAML.cxx.4.o build\scintilla\lexers\LexPe
rl.cxx.4.o build\scintilla\lexers\LexCOBOL.cxx.4.o build\scintilla\src\Indicator.cxx.4.o build\scintilla\lexers\LexOthers.cxx.4.o build\scinti
lla\lexers\LexFortran.cxx.4.o build\scintilla\src\CaseConvert.cxx.4.o build\scintilla\lexers\LexAda.cxx.4.o build\scintilla\lexers\LexSQL.cxx.4.
o build\scintilla\lexers\LexR.cxx.4.o build\scintilla\gtk\ScintillaGTK.cxx.4.o build\scintilla\lexers\LexRuby.cxx.4.o build\scintilla\lexlib\S
tyleContext.cxx.4.o build\scintilla\src\Selection.cxx.4.o build\scintilla\src\CaseFolder.cxx.4.o build\scintilla\gtk\PlatGTK.cxx.4.o build\sci
ntilla\lexlib\LexerModule.cxx.4.o build\scintilla\src\CallTip.cxx.4.o build\scintilla\src\XPM.cxx.4.o build\scintilla\src\PositionCache.cxx.4.o
build\scintilla\gtk\scintilla-marshal.c.4.o build\scintilla\src\Style.cxx.4.o build\scintilla\lexers\LexTxt2tags.cxx.4.o build\scintilla\src\R
ESearch.cxx.4.o build\scintilla\src\UniConversion.cxx.4.o build\scintilla\src\Decoration.cxx.4.o build\scintilla\src\Document.cxx.4.o build\sc
intilla\src\Editor.cxx.4.o build\scintilla\src\CellBuffer.cxx.4.o build\scintilla\src\CharClassify.cxx.4.o build\scintilla\src\LineMarker.cxx.4.
o build\scintilla\lexlib\Accessor.cxx.4.o build\scintilla\src\ScintillaBase.cxx.4.o build\scintilla\lexlib\LexerSimple.cxx.4.o build\scintilla
\src\PerLine.cxx.4.o build\scintilla\src\KeyMap.cxx.4.o build\scintilla\lexlib\LexerBase.cxx.4.o build\scintilla\src\ContractionState.cxx.4.o b
uild\scintilla\lexlib\PropSetSimple.cxx.4.o build\scintilla\lexlib\LexerNoExceptions.cxx.4.o build\scintilla\src\ExternalLexer.cxx.4.o build\sc
intilla\lexers\LexVHDL.cxx.4.o build\scintilla\lexers\LexLisp.cxx.4.o build\scintilla\lexers\LexCaml.cxx.4.o build\scintilla\lexers\LexBasic.cxx
.4.o build\scintilla\lexers\LexD.cxx.4.o build\scintilla\lexers\LexCPP.cxx.4.o build\scintilla\src\RunStyles.cxx.4.o build\scintilla\lexers\Le
xErlang.cxx.4.o build\scintilla\lexers\LexAsm.cxx.4.o build\scintilla\lexers\LexVerilog.cxx.4.o build\scintilla\lexers\LexAbaqus.cxx.4.o build
\scintilla\lexers\LexPython.cxx.4.o build\scintilla\src\Catalogue.cxx.4.o build\scintilla\lexers\LexPascal.cxx.4.o -> build\libscintilla.a
__[187/193] c: src\geanyobject.c -> build\src\geanyobject.c.5.o
..\src\socket.c: In function 'socket_lock_input_cb':
..\src\socket.c:598:2: error: unknown type name 'socklen_t'
socklen_t caddr_len = sizeof(caddr);
^
Waf: Leaving directory `E:\Downloads\geany-master_build_'
Build failed __
-> task in 'geany' failed (exit status 1):
{task 27597456: c socket.c -> socket.c.5.o}
['E:\Compiler\MinGW\bin\gcc.exe', '-DHAVE_CONFIG_H', '-DGTK', '-mms-bitfields', '-mms-bitfields', '-mms-bitfields', '-mms-bitfields', '-mms-bitfie
lds', '-IE:\Downloads\geany-master\build', '-IE:\Downloads\geany-master', '-IE:\Downloads\geany-master\build\scintilla\include', '-IE:\
Downloads\geany-master\scintilla\include', '-IE:\Downloads\geany-master\build\tagmanager\src', '-IE:\Downloads\geany-master\tagmanager\s
rc', '-IE:\Compiler\gtk_bundle\include\gtk-2.0', '-IE:\Compiler\gtk_bundle\lib\gtk-2.0\include', '-IE:\Compiler\gtk_bundle\include\atk-1.
0', '-IE:\Compiler\gtk_bundle\include\cairo', '-IE:\Compiler\gtk_bundle\include\gdk-pixbuf-2.0', '-IE:\Compiler\gtk_bundle\include\pango-1
.0', '-IE:\Compiler\gtk_bundle\include\glib-2.0', '-IE:\Compiler\gtk_bundle\lib\glib-2.0\include', '-IE:\Compiler\gtk_bundle\include', '-I
E:\Compiler\gtk_bundle\include\freetype2', '-IE:\Compiler\gtk_bundle\include\libpng14', '-DHAVE_FCNTL_H=1', '-DHAVE_GLOB_H=1', '-DHAVE_SYS_TIM
E_H=1', '-DHAVE_SYS_TYPES_H=1', '-DHAVE_SYS_STAT_H=1', '-DHAVE_STDLIB_H=1', '-DSTDC_HEADERS=1', '-DHAVE_REGCOMP=1', '-DHAVE_FGETPOS=1', '-DHAVE_FTRUNC
ATE=1', '-DHAVE_STRSTR=1', '-DHAVE_GTK=1', '-DHAVE_GLIB=1', '-DHAVE_GMODULE=1', '-DHAVE_GIO=1', '-DGTK_VERSION="2.24.10"', '-DHAVE_GTHREAD=1', '-DPREF
IX="geany-1.24"', '-DBINDIR="geany-1.24\bin"', '-DDOCDIR="geany-1.24\doc"', '-DLIBDIR="geany-1.24"', '-DLOCALEDIR="sharelocale"', '-DENABLE_NLS=1',
'-DGEANY_LOCALEDIR=""', '-DGEANY_DATADIR="data"', '-DGEANY_DOCDIR="geany-1.24\doc"', '-DGEANY_LIBDIR=""', '-DGEANY_PREFIX=""', '-DPACKAGE="geany"', '
-DVERSION="1.24"', '-DREVISION="-1"', '-DGETTEXT_PACKAGE="geany"', '-DHAVE_PLUGINS=1', '-DHAVE_SOCKET=1', '-DG_LOG_DOMAIN="Geany"', '-DGEANY_PRIVATE',
'..\src\socket.c', '-c', '-o', 'src\socket.c.5.o']
Last edit: neoxeo 2013-10-31
Always use Make from the root source directory and make sure to do a full "make clean" as the GNU Makefiles don't correctly handle dependencies between files when it fails partway through (in my experience, I never investigated why), so you have to do a clean to get everything rebuilt correctly.
One thing you could try for the GNU make files is to put
#error "I should fail"ininclude/ScintillaWidget.hinside of the#if defined(GTK)guards to see if it results in that error message being printed at compile time. I've seen those errors a number of times and it has always been because of symbols fromScintillaWidget.hwere missing (for me because of missing-DGTKbut it is defined in your output).FWIW, I also experienced those same errors using Waf last time I tried, I think something is different for the socket stuff on Win7 than previous version maybe.
Hi Mathew,
I have put #error "I should fail" in include/ScintillaWidget.h inside of the #if defined(GTK) :
__ #ifndef SCINTILLAWIDGET_H __
__ #define SCINTILLAWIDGET_H __
__ #if defined(GTK) __
__ #error "I should fail" __
__ #ifdef __cplusplus __
__ extern "C" { __
__ #endif __
Same error and no error message ""I should fail".
Thanks
Last edit: neoxeo 2013-11-04
i try to build geany with MinGW on Windows 7 64bit tonight, i encounter the same problem, i fix this by moving scintilla makefile from geany/scintilla to geany/scintilla/gtk(BTW this is where the official scintilla put the makefile), and edit the content to meet the path change.
I am not clear if this is a bug of the makefile or MinGW gcc, i'll try to build geany under linux mint with another machine when i get time. Meanwhile someone please temporarily fix this.
@winterland, which "makefile" are you using? There may be confusion between several build systems and/or using wrong letter casing/extensions in filename; the main one is for Automake/Autotools which has name
Makefile.am(which generates aMakefilein the build directory), another ismakefile.win32which is some simple GNU Make file that some people use to build Geany on Windows (but not the official releases, those use Waf build system), and finally there's amakefilethat upstream Scintilla uses, that is not part of or distributed with Geany that is used to build the upstream Scintilla GTK+ tree.Which "makefile" do you mean?
Already sent PR on github, more detail here:
https://github.com/geany/geany/pull/243
Hi, I still have this problem. In previous version I solved entering in the scintilla/gtk
directory and running directly the compiler command after some change in the include path:
g++ -DNDEBUG -Os -Wall -Wno-missing-braces -Wno-char-subscripts -DGTK -DSCI_LEXER -I ../include -I ../src -I ../lexlib -I . -IC:/libs/include/gtk-2.0 -IC:/libs/lib/gtk-2.0/include -IC:/libs/include/atk-1.0 -IC:/libs/include/cairo -IC:/libs/include/gdk-pixbuf-2.0 -IC:/libs/include/pango-1.0 -IC:/libs/include/glib-2.0 -IC:/libs/lib/glib-2.0/include -IC:/libs/include -IC:/libs/include/gettext -mms-bitfields -DG_THREADS_IMPL_NONE -c PlatGTK.cxx
but now make -f makefile.win32 is trying to compile again the PlatGTK.cxx, although the .o was properly created with the above command...
EDIT: I changed the makefile in scintilla:
... SRCOBJS=\ gtk/PlatGTK.o \ gtk/ScintillaGTK.o \ Accessor.o \ CharacterCategory.o \ src/CaseConvert.o \ CaseFolder.o \ CharacterSet.o \ LexerBase.o \ LexerModule.o \ LexerNoExceptions.o \ LexerSimple.o \ PropSetSimple.o \ StyleContext.o \ WordList.o \ src/AutoComplete.o \ src/CallTip.o \ ...and compiled with the command above all the file in scintilla/src but I have now problem with ld "ld.exe: cannot find -liberty"
EDIT 2: I reinstalled libliberty from the link in
http://www.geany.org/Support/CrossCompile
and now it is ok
Last edit: pingoo 2014-06-30