lmi
[Top][All Lists]
Advanced

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

Re: [lmi] wx_test: output strings truncated to one character


From: Greg Chicares
Subject: Re: [lmi] wx_test: output strings truncated to one character
Date: Wed, 10 Feb 2016 12:09:22 +0000
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:38.0) Gecko/20100101 Icedove/38.5.0

On 02/10/2016 12:51 AM, Vadim Zeitlin wrote:
[...]
>  If this happens during the application shutdown, it could well be the same
> bug with using the already destroyed global objects that I've just fixed.
> Otherwise I really have no idea :-( Could you please rebuild wxWidgets with
> --enable-debug and just drop the debug DLL in place of the one currently
> being used (and not containing the debug symbols)?

I tried to rebuild with '--enable-debug', and everything looked okay through
the 'configure' step. Then the regex, png, and expat libraries were built,
and they seemed okay; but the code for wx itself failed to build, with no
diagnostic:

/opt/lmi/wx-scratch/wxWidgets-0b821adf903872b6d8b56630d2191c5b9c3362e5/gcc-491-ac28a959aabe36e26ea039ed78a51b54/bk-deps
 \
  /MinGW_/bin/g++ -std=c++11 -c -o monodll_any.o -I./.pch/wxprec_monodll \
  -D__WXMSW__      -DWXBUILDING    -I../src/png  -I../src/regex 
-I../src/expat/lib \
  -I../src/stc/scintilla/include -I../src/stc/scintilla/lexlib 
-I../src/stc/scintilla/src \
  -D__WX__ -DSCI_LEXER -DLINK_LEXERS -DwxUSE_BASE=1 -DWXMAKINGDLL -Wall -Wundef 
\
  -Wunused-parameter -Wno-ctor-dtor-privacy -Woverloaded-virtual 
-D_FILE_OFFSET_BITS=64 \
  
-I/opt/lmi/wx-scratch/wxWidgets-0b821adf903872b6d8b56630d2191c5b9c3362e5/gcc-491-ac28a959aabe36e26ea039ed78a51b54/lib/wx/include/i686-w64-mingw32-msw-unicode-3.1
 \
  -I../include -DWX_PRECOMP -g -O0  ../src/common/any.cpp

Makefile:17443: recipe for target 'monodll_appbase.o' failed
make[2]: *** [monodll_appbase.o] Error 1

I changed into the directory where 'make' had run that command, and copied
and pasted the command from makefile output into the terminal, and...it just
failed with no diagnostic. Here, let me repeat the experiment, but this time
copying and pasting the reformatted line above to make it more readable:

/opt/lmi/wx-scratch/wxWidgets-0b821adf903872b6d8b56630d2191c5b9c3362e5/gcc-491-ac28a959aabe36e26ea039ed78a51b54[0]$/opt/lmi/wx-scratch/wxWidgets-0b821adf903872b6d8b56630d2191c5b9c3362e5/gcc-491-ac28a959aabe36e26ea039ed78a51b54/bk-deps
 \

/MinGW_/bin/g++ -std=c++11 -c -o monodll_any.o -I./.pch/wxprec_monodll \

-D__WXMSW__ -DWXBUILDING -I../src/png -I../src/regex -I../src/expat/lib \

-I../src/stc/scintilla/include -I../src/stc/scintilla/lexlib 
-I../src/stc/scintilla/src \

-D__WX__ -DSCI_LEXER -DLINK_LEXERS -DwxUSE_BASE=1 -DWXMAKINGDLL -Wall -Wundef \

-Wunused-parameter -Wno-ctor-dtor-privacy -Woverloaded-virtual 
-D_FILE_OFFSET_BITS=64 \

-I/opt/lmi/wx-scratch/wxWidgets-0b821adf903872b6d8b56630d2191c5b9c3362e5/gcc-491-ac28a959aabe36e26ea039ed78a51b54/lib/wx/include/i686-w64-mingw32-msw-unicode-3.1
 \

-I../include -DWX_PRECOMP -g -O0 ../src/common/any.cpp



/opt/lmi/wx-scratch/wxWidgets-0b821adf903872b6d8b56630d2191c5b9c3362e5/gcc-491-ac28a959aabe36e26ea039ed78a51b54[1]$

c28a959aabe36e26ea039ed78a51b54[1]$ls mono*

zsh: no matches found: mono*

/opt/lmi/wx-scratch/wxWidgets-0b821adf903872b6d8b56630d2191c5b9c3362e5/gcc-491-ac28a959aabe36e26ea039ed78a51b54[1]$ls
 ../src/common/any.cpp

../src/common/any.cpp

/opt/lmi/wx-scratch/wxWidgets-0b821adf903872b6d8b56630d2191c5b9c3362e5/gcc-491-ac28a959aabe36e26ea039ed78a51b54[0]$


I infer that it failed, because the return code (in my zsh prompt) is "1"
and no 'mono*' file exists (as expected from '-o monodll_any.o'), though the
source file '../src/common/any.cpp' does exist. But I see no diagnostic.

The actual command is "/path/to/bkdeps /another/path/to/g++ ..." so let's try
removing the 'bkdeps' part to see whether that's the problem:

c28a959aabe36e26ea039ed78a51b54[0]$/MinGW_/bin/g++ -std=c++11 -c -o 
monodll_any.o -I./.pch/wxprec_monodll \

-D__WXMSW__ -DWXBUILDING -I../src/png -I../src/regex -I../src/expat/lib \

-I../src/stc/scintilla/include -I../src/stc/scintilla/lexlib 
-I../src/stc/scintilla/src \

-D__WX__ -DSCI_LEXER -DLINK_LEXERS -DwxUSE_BASE=1 -DWXMAKINGDLL -Wall -Wundef \

-Wunused-parameter -Wno-ctor-dtor-privacy -Woverloaded-virtual 
-D_FILE_OFFSET_BITS=64 \

-I/opt/lmi/wx-scratch/wxWidgets-0b821adf903872b6d8b56630d2191c5b9c3362e5/gcc-491-ac28a959aabe36e26ea039ed78a51b54/lib/wx/include/i686-w64-mingw32-msw-unicode-3.1
 \

-I../include -DWX_PRECOMP -g -O0 ../src/common/any.cpp



/opt/lmi/wx-scratch/wxWidgets-0b821adf903872b6d8b56630d2191c5b9c3362e5/gcc-491-ac28a959aabe36e26ea039ed78a51b54[1]$


Same outcome. I'm not out of disk space:

$df

Filesystem     1K-blocks     Used Available Use% Mounted on

C:/cygwin-lmi   12570828 10715240   1855588  86% /


Is the compiler even remotely sane?

/opt/lmi/wx-scratch/wxWidgets-0b821adf903872b6d8b56630d2191c5b9c3362e5/gcc-491-ac28a959aabe36e26ea039ed78a51b54[0]$/MinGW_/bin/g++
 -std=c++11 -dumpversion

4.9.1


Yes. Hmmm...well, could it be a PCH problem?

/opt/lmi/wx-scratch/wxWidgets-0b821adf903872b6d8b56630d2191c5b9c3362e5/gcc-491-ac28a959aabe36e26ea039ed78a51b54[0]$/MinGW_/bin/g++
 -std=c++11 -c -o monodll_any.o  \

-D__WXMSW__ -DWXBUILDING -I../src/png -I../src/regex -I../src/expat/lib \

-I../src/stc/scintilla/include -I../src/stc/scintilla/lexlib 
-I../src/stc/scintilla/src \

-D__WX__ -DSCI_LEXER -DLINK_LEXERS -DwxUSE_BASE=1 -DWXMAKINGDLL -Wall -Wundef \

-Wunused-parameter -Wno-ctor-dtor-privacy -Woverloaded-virtual 
-D_FILE_OFFSET_BITS=64 \

-I/opt/lmi/wx-scratch/wxWidgets-0b821adf903872b6d8b56630d2191c5b9c3362e5/gcc-491-ac28a959aabe36e26ea039ed78a51b54/lib/wx/include/i686-w64-mingw32-msw-unicode-3.1
 \

-I../include -DWX_PRECOMP -g -O0 ../src/common/any.cpp

/opt/lmi/wx-scratch/wxWidgets-0b821adf903872b6d8b56630d2191c5b9c3362e5/gcc-491-ac28a959aabe36e26ea039ed78a51b54[0]$ls
 mono*

monodll_any.o


Yes, that seems likely:

/opt/lmi/wx-scratch/wxWidgets-0b821adf903872b6d8b56630d2191c5b9c3362e5/gcc-491-ac28a959aabe36e26ea039ed78a51b54[0]$ls
 -l ./.pch/wxprec_monodll

total 0

drwxr-xr-x+ 1 earl None 0 Feb 10 04:07 wx


My hypothesis is that this compiler can generate a zero-byte PCH file
that causes compilation to fail with no diagnostic. I'll try rebuilding
without PCH.

BTW...for the time being, I've been trying to build this in msw, which
means that I started up the makefile and went to sleep, figuring that
it would take a good long time--kind of like this:
  https://xkcd.com/303/
but with a bed instead of a sword fight. If I had tried cross building,
I might have solved the problem last night. My hobby: pointing out
situations where all the time we've spent on retooling has an enormous
benefit in return for its considerable cost--lest management see that
work as xkcd 303 with the caption "Retooling!".




reply via email to

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