[MacOS10.4.10, wxMac2.8, gcc 4.0.1] Resuscitating an old thread: "Automating" the use of wx-config

David Goldsmith David.L.Goldsmith at noaa.gov
Fri Sep 14 14:08:51 PDT 2007


Yeah, that's what I was beginning to suspect.

DG

Riccardo Cohen wrote:
> I don't know if wxwidget code can work without specific wxwidget 
> initializations and deinit (at exit)
>
> I suggest you build a minimal app (like minimal sample) and test from 
> there.
>
> David Goldsmith wrote:
>> Riccardo Cohen wrote:
>>> I did not know there was a difference between cppflags and cxxflags.
>>> Anyway I really suggest not to use wx-config if you don't use 
>>> wxwidgets. We have built here a small library with no user 
>>> interface. It does not use wxwidgets and we compile it on 
>>> windows,mac,linux without wx-config, without wx lib and headers. We 
>>> use it in many projects including wxwidgets user interfaces with no 
>>> problem.
>>>
>>> Why do you need a "driver" for your class ? what does this class do, 
>>> and what do you want to test ?
>> Other member functions in the class (which someone else wrote), as 
>> well as other classes it is derived from and other member objects and 
>> method arguments which are somehow referenced (compilation w/out wx 
>> yields a load of unresolved wx reference errors at the linking stage) 
>> use wx - it's part of a large wx application, in other words.  
>> However, the particular method I need to test - numerical in nature - 
>> does not use wx; I tried compiling it w/out wx and got can't find 
>> wx/wx.h and wx/setup.h errors.  I found those, added the paths to 
>> them to my CPATH, and got other compile errors which reminded me 
>> about wx-config.
>>
>> DG
>>>
>>> David Goldsmith wrote:
>>>> David Goldsmith wrote:
>>>>> On a hunch, I tried replacing --cppflags w/ -cxxflags and got a 
>>>>> whole slew of compile errors - many steps back, but a big step 
>>>>> forward???  Also, I remembered: is _the_ problem (semi-rhetorical 
>>>>> question: I know it's _a_ problem) that I'm using main, not 
>>>>> declaring a wx.App?  Thanks!
>>>> Except, I don't want to explicitly use any wx features, all I want 
>>>> is a "minimal driver" for a particular class method I want to test; 
>>>> that class (as well as it's parents) has some wx dependencies, but 
>>>> the method I want to test doesn't - if the only reason I'm building 
>>>> against wx is because it seems I have to in order to eliminate 
>>>> "unresolved external reference" link errors, must I still use the 
>>>> wx.App/wx.Frame formalism instead of the main() formalism?  Thanks 
>>>> again!
>>>>
>>>> DG
>>>>>
>>>>> David Goldsmith wrote:
>>>>>> Riccardo Cohen wrote:
>>>>>>> it seems that the resulting config used gcc instead of g++, I 
>>>>>>> couldn't say why
>>>>>> Thanks Riccardo.  Well, my /usr/bin/gcc is a link to gcc-4.0.1, 
>>>>>> not g++-4.0.1.  I can change it manually (I can't see in the 
>>>>>> gcc_select man page how to change it to anything other than a 
>>>>>> version of gcc), but if wx-config should be calling g++ instead 
>>>>>> of gcc, I'd rather fix that, but how?
>>>>>>
>>>>>> DG
>>>>>>>
>>>>>>> David Goldsmith wrote:
>>>>>>>> Matt Connolly wrote:
>>>>>>>>> Actually, to fully make use of the "wx-config" command you can 
>>>>>>>>> do:
>>>>>>>>>
>>>>>>>>> For compiling:
>>>>>>>>>
>>>>>>>>> `wx-config --cc` `wx-config --cppflags` <my_flags> 
>>>>>>>>> <source_files> ...
>>>>>>>>>
>>>>>>>>> For linking:
>>>>>>>>>
>>>>>>>>> `wx-config --ld` `wx-config --libs` <my_flags> <object_files> ...
>>>>>>>>>
>>>>>>>>> -matt
>>>>>>>> Hi, folks!  Haven't used this method in a while and I don't 
>>>>>>>> remember if I had the same problem last time I did.  The above 
>>>>>>>> implies to me that `wx-config --cc` `wx-config --cppflags` 
>>>>>>>> <my_flags> <source_files> will stop after compiling, i.e., not 
>>>>>>>> proceed on to linking, but that is not what I'm observing:
>>>>>>>>
>>>>>>>> dg$ `wx-config --cc` `wx-config --cppflags` -Wno-deprecated -I 
>>>>>>>> ../../../Source/CompCore *cpp ../../../Source/CompCore/*.cpp
>>>>>>>> /usr/bin/ld: Undefined symbols:
>>>>>>>> __Unwind_Resume
>>>>>>>> wxThread::TestDestroy()
>>>>>>>> wxThread::~wxThread()
>>>>>>>> typeinfo for wxThread
>>>>>>>> vtable for __cxxabiv1::__si_class_type_info
>>>>>>>> operator delete(void*)
>>>>>>>> operator new(unsigned long)
>>>>>>>> ___gxx_personality_v0
>>>>>>>> wxStringBase::npos
>>>>>>>> wxStringBase::InitWith(char const*, unsigned long, unsigned long)
>>>>>>>> wxMessageBox(wxString const&, wxString const&, long, wxWindow*, 
>>>>>>>> int, int)
>>>>>>>> vtable for __cxxabiv1::__class_type_info
>>>>>>>> ___cxa_begin_catch
>>>>>>>> ___cxa_end_catch
>>>>>>>> operator new[](unsigned long)
>>>>>>>> _dgbtrf_
>>>>>>>> _dgbtrs_
>>>>>>>> collect2: ld returned 1 exit status
>>>>>>>>
>>>>>>>> i.e., `wx-config --cc` `wx-config --cppflags` <my_flags> 
>>>>>>>> <source_files> is proceeding on to linking - am I just 
>>>>>>>> misinterpreting "For compiling:"?
>>>>>>>>
>>>>>>>> Second Q: why am I getting the (wx) linking errors?
>>>>>>>>
>>>>>>>> DG
>>>>>>>>
>>>>>>>> --------------------------------------------------------------------- 
>>>>>>>>
>>>>>>>> To unsubscribe, e-mail: wx-users-unsubscribe at lists.wxwidgets.org
>>>>>>>> For additional commands, e-mail: wx-users-help at lists.wxwidgets.org
>>>>>>>>
>>>>>>>>
>>>>>>>
>>>>>>
>>>>>
>>>>
>>>
>>
>

-- 
ERD/ORR/NOS/NOAA <http://response.restoration.noaa.gov/emergencyresponse/>




More information about the wx-users mailing list