octave-maintainers
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: MinGW: 'QUnixTerminalImpl' has not been declared


From: Philip Nienhuis
Subject: Re: MinGW: 'QUnixTerminalImpl' has not been declared
Date: Thu, 20 Sep 2012 22:28:45 +0200
User-agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.1.11) Gecko/20100701 SeaMonkey/2.0.6

Michael Goffioul wrote:
On Thu, Sep 20, 2012 at 4:07 PM, Philip Nienhuis
<address@hidden <mailto:address@hidden>> wrote:

    Michael Goffioul wrote
     > On Thu, Sep 20, 2012 at 5:46 AM, Daniel J Sebald &lt;

     > daniel.sebald@

     > &gt;wrote:
     >
     >>
     >>>  In the attached patch I replaced setenv with octave_putenv since
     >>>> "lo-utils.h" is already include in the list of header files.
     >>>> (octave_env::putenv() is a simple call to octave_putenv. John,
    if we
     >>>> should be using OOP over library call, let us know.) Please
    give that a
     >>>> try under MinGW.
     >>>>
     >>>
     >>> OK using your patch the build continues until:
     >>>
     >>> :
     >>> libtool: compile: g++ -shared-libgcc -DHAVE_CONFIG_H -I.
     >>> -I../../octave/libgui -I..
     >>> -IX:/programs/msys/home/**Philip/qt4/qt-everywhere-**
     >>> opensource-src-4.7.4/include
     >>> -IX:/programs/msys/home/**Philip/qt4/qt-everywhere-**
     >>> opensource-src-4.7.4/include/**QtCore
     >>> -IX:/programs/msys/home/**Philip/qt4/qt-everywhere-**
     >>> opensource-src-4.7.4/include/**QtGui
     >>> -I.././octave/libgui/**qterminal/libqterminal -DUNICODE
     >>> -I/x/Programs/gplibs/include -I/x/Programs/OctaveLibs/**include
     >>> -I/x/programs/GnuWin32/include -mieee-fp
     >>> -Ic:/Programs/gplibs/include/**freetype2
    -Ic:/Programs/gplibs/include
     >>> -IX:/Programs/gplibs/include -g -O2 -MT qterminal/libqterminal/**
     >>> qterminal
     >>> _libqterminal_la-moc-**QTerminal.lo -MD -MP -MF
     >>> qterminal/libqterminal/.deps/**qterminal_libqterminal_la-moc-**
     >>> QTerminal.Tpo
     >>> -c qterminal/libqterminal/moc-**QTerminal.cc -DDLL_EXPORT -DPIC -o
     >>> qterminal/libqterminal/.libs/**qterminal_libqterminal_la-moc-**
     >>> QTerminal.oqterminal/**libqterminal/moc-QTerminal.cc:**41:8:
     >>> error: 'QUnixTerminalImpl' has not been declared
     >>> qterminal/libqterminal/moc-**QTerminal.cc: In member function
    'virtual
     >>> void* QTerminal::qt_metacast(const char*)':
     >>> qterminal/libqterminal/moc-**QTerminal.cc:59:12: error:
     >>> 'QUnixTerminalImpl' has not been declared
     >>> qterminal/libqterminal/moc-**QTerminal.cc: In member function
    'virtual
     >>> int
     >>> QTerminal::qt_metacall(**QMetaObject::Call, int, void**)':
     >>> qterminal/libqterminal/moc-**QTerminal.cc:64:11: error:
     >>> 'QUnixTerminalImpl' has not been declared
     >>> make[3]: ***
     >>>
    [qterminal/libqterminal/**qterminal_libqterminal_la-moc-**QTerminal.lo]
     >>> Error 1
     >>> make[3]: Leaving directory `/home/Philip/octdev/oct-3.7/**libgui'
     >>> make[2]: *** [all] Error 2
     >>> make[2]: Leaving directory `/home/Philip/octdev/oct-3.7/**libgui'
     >>> make[1]: *** [all-recursive] Error 1
     >>> make[1]: Leaving directory `/home/Philip/octdev/oct-3.7'
     >>> make: *** [all] Error 2
     >>>
     >>
     >> I haven't forgotten about this compile issue; there hasn't been
    enough
     >> time to get to it.
     >>
     >> Clearly there is no reason a Windows build should want to access
     >> QUnixTerminalImpl, so we'll have to place some conditional
    pre-compile
     >> statements around some code somewhere.  I'll attempt that and
    add the
     >> setenv/putenv fix in the same patch and place it on Savannah bug
    track
     >> Thursday or Friday.  That way if we find more we can update the
    patch in
     >> the bug tracker.
     >>
     >
     > Does the moc command include the flag -DWIN32? (it should)

    You mean in <SRCDIR>/libgui/Makefile.am? It contains:

    :
    MOC_CPPFLAGS =


It's modified in qterminal-module.mk <http://qterminal-module.mk>.

That contains:

:
if WIN32_TERMINAL

qterminal_libqterminal_la_SOURCES = \
  qterminal/libqterminal/win32/QTerminalColors.cpp \
  qterminal/libqterminal/win32/QWinTerminalImpl.cpp

qterminal_libqterminal_la_MOC += \
  qterminal/libqterminal/win32/moc-QWinTerminalImpl.cc

qterminal_libqterminal_la_CPPFLAGS += -DUNICODE

# This flag is required to let MOC know about Q_OS_WIN32.
MOC_CPPFLAGS += -DWIN32
:

so apparently WIN32_TERMINAL wasn't declared properly somewhere.
(BTW IIRC the ".... += -DUNICODE" was from a patch you sent me a while ago.)

Philip


reply via email to

[Prev in Thread] Current Thread [Next in Thread]