Menu

#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 3 (Page 3 of 3)
  • 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.

     
  • Anonymous

    Anonymous - 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?

     
    • winterland

      winterland - 2014-04-22

      Already sent PR on github, more detail here:

      https://github.com/geany/geany/pull/243

       
  • 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
  • Nick Treleaven

    Nick Treleaven - 2015-01-22
     
  • Nick Treleaven

    Nick Treleaven - 2015-01-24
    • status: open --> closed-fixed
     
<< < 1 2 3 (Page 3 of 3)

Log in to post a comment.