Important: Please read the Qt Code of Conduct -

Cannot recompile on Windows, undefined reference to `__getreent'

  • I'm trying to use Qt on Windows. I found that the Windows binaries are built without rtti enabled. I cannot use them to build the diagram example in chapter 8 of the Qt book (C++ Gui programming with Qt4) because of the lack of rtti. So I am trying to rebuild with rtti enabled.

    But I cannot build, I get a lot of undefined references to __getreent. Can anyone advise what to do?

    cd tools\bootstrap\ && mingw32-make -f Makefile
    mingw32-make[1]: Entering directory c:/Qt/2010.05/qt/src/tools/bootstrap' mingw32-make -f Makefile.Release mingw32-make[2]: Entering directoryc:/Qt/2010.05/qt/src/tools/bootstrap'
    mingw32-make[2]: Nothing to be done for first'. mingw32-make[2]: Leaving directoryc:/Qt/2010.05/qt/src/tools/bootstrap'
    mingw32-make[1]: Leaving directory c:/Qt/2010.05/qt/src/tools/bootstrap' cd tools\moc\ && mingw32-make -f Makefile mingw32-make[1]: Entering directoryc:/Qt/2010.05/qt/src/tools/moc'
    mingw32-make -f Makefile.Release
    mingw32-make[2]: Entering directory c:/Qt/2010.05/qt/src/tools/moc' g++ -enable-stdcall-fixup -Wl,-enable-auto-import -Wl,-enable-runtime-pseudo-rel oc -Wl,-s -Wl,-subsystem,console -mthreads -Wl -o ../../../bin/moc.exe release/m oc.o release/preprocessor.o release/generator.o release/parser.o release/token.o release/main.o -L'c:/Qt/2010.05/qt/src/tools/bootstrap/release' -lbootstrap -l user32 release/preprocessor.o:preprocessor.cpp:(.text+0x4670): undefined reference to
    QFile::open(__sFILE64*, QFlagsQIODevice::OpenModeFlag)'
    release/parser.o:parser.cpp:(.text+0x2d1): undefined reference to __getreent' release/main.o:main.cpp:(.text+0xf): undefined reference to__getreent'
    release/main.o:main.cpp:(.text+0x2b): undefined reference to __getreent' release/main.o:main.cpp:(.text+0x2231): undefined reference to__getreent'
    release/main.o:main.cpp:(.text+0x33fe): undefined reference to __getreent' release/main.o:main.cpp:(.text+0x3689): more undefined references to__getreent
    ' follow
    collect2: ld returned 1 exit status
    mingw32-make[2]: *** [../../../bin/moc.exe] Error 1
    mingw32-make[2]: Leaving directory c:/Qt/2010.05/qt/src/tools/moc' mingw32-make[1]: *** [release] Error 2 mingw32-make[1]: Leaving directoryc:/Qt/2010.05/qt/src/tools/moc'
    mingw32-make: *** [sub-moc-make_default] Error 2


  • Which mingw version is that? How did you configure Qt?

  • peppe, Obviously mingw32 version from Qt SDK 2010.05 :) but configuration flags is really interesting.

  • [quote author="Vass" date="1293580988"]peppe, Obviously mingw32 version from Qt SDK 2010.05 :) but configuration flags is really interesting.[/quote]

    Which is? :)

    (=> not a windows user)

  • peppe, I'm too not a windows user, but I saw on mingw site, mingw not updated from august and current version 1.0 as I understand.

  • I was trying to build under Cygwin(using minge32-make), that explains a lot ofmy problems. Right now it is building under the mingw32 prompt, crossing my fingers.

  • For windows you may download compiled binaries for VS2008.

  • I can build and run my program now, thanks to using mingw32 for everything. I was mistaken to think I could use Cygwin.

Log in to reply