Learn how easy it is to sync an existing GitHub or Google Code repo to a SourceForge project! See Demo

Close

#1001 Compilation error with MinGW

v1.23.1
closed-fixed
nobody
v1.23.1
5
2015-01-24
2013-10-28
neoxeo
No

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
)':
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

Discussion

1 2 > >> (Page 1 of 2)
  • Lex Trotman
    Lex Trotman
    2013-10-28

    Can you try Geany from git, it also uses scintilla 3.3.6

     
  • Matthew Brush
    Matthew Brush
    2013-10-28

    It might just be that GTK is not defined, which is a weird quirk about ScintillaWidget.h that's burned me on a number of occasions. You could test if that's it by doing make CFLAGS="-DGTK" (or whatever flags like CPPFLAGS or CXXFLAGS or something) when you make it.

     
    Last edit: Matthew Brush 2013-10-28
  • neoxeo
    neoxeo
    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
    )':
    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
  • neoxeo
    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
    )':
    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

     
  • neoxeo
    neoxeo
    2013-10-28

    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.

     
  • Lex Trotman
    Lex Trotman
    2013-10-28

    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.

     
  • neoxeo
    neoxeo
    2013-10-28

    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
  • Matthew Brush
    Matthew Brush
    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 :)

     
  • neoxeo
    neoxeo
    2013-10-28

    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 ?

     
  • neoxeo
    neoxeo
    2013-10-30

    No idea to help me ?

    GTK compilation of scintilla is ok, but in Geany always have the same error.

    Thank you.

     
  • Nick Treleaven
    Nick Treleaven
    2013-10-30

    Can you post the whole command that make fails on, which should start 'g++'. Also which makefile are you using?

     
  • neoxeo
    neoxeo
    2013-10-30

    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
    )
    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
  • neoxeo
    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
    )':
    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

     
  • Enrico Tröger
    Enrico Tröger
    2013-10-30

    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.

     
  • Enrico Tröger
    Enrico Tröger
    2013-10-30

    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.

     
  • neoxeo
    neoxeo
    2013-10-30

    Thank you Enrico for your.

    I'll test that tomorrow and will give you result...

     
  • neoxeo
    neoxeo
    2013-10-31

    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
  • neoxeo
    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
  • Matthew Brush
    Matthew Brush
    2013-11-02

    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" in include/ScintillaWidget.h inside 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 from ScintillaWidget.h were missing (for me because of missing -DGTK but 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.

     
  • neoxeo
    neoxeo
    2013-11-04

    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
  • winterland
    winterland
    2014-04-21

    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.

     
  • Matthew Brush
    Matthew Brush
    2014-04-21

    @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 a Makefile in the build directory), another is makefile.win32 which 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 a makefile that 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?

     
  • pingoo
    pingoo
    2014-06-27

    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
1 2 > >> (Page 1 of 2)