[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 13:54:45 PDT 2007


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