Conversation
and C++ tr1 or C++11 headers
fixes to remove extraneous paths in some ruby builds to non system paths adds C++tr1 versus C++11 header changes
recomment header makefile section
no more ad hoc checks, use pkg_config fixed flags to update properly from pkg_config
unneeded edit file
unneeded
remove $LIBS, mkmf uses $libs (scons uses $LIBS) remove pig-config updates to $CFLAGS and $LIBS note: Ruby docs of pkg_config source code show $CXXFLAGS updated, but actual source doesn’t do it.
use it to replace to code sections and remove duplicate tests
replaced by function definition
more rigorous testing of compilers
remove
|
i will not add have_std_header because my code doesnt need checks for c+11 pkg_conf will also not added because i already had the correct fix for that, that you did broke with your replacement find_executable is also not needed because currently i only check the name, i enable travis checks for osx too, if i can get my trunk build and tested in osx than the check for the compiler version will not be added. |
|
The wx header code does and you are referencing it. I can't complete the tests let alone compile without those. Sent from my iPhone
|
|
like i said in the other ticket before, update your software (newer gcc or newer clang) and then recompile ruby and wxwidgets again wxwidgets should not use any c+11 features if your compiler wouldnt already support them, and even then they should not be enabled ... didnt that all begin because you tryed to activate c++11 for rwx? |
|
My software is up to date. Test your stuff with clang not just gcc Sent from my iPhone
|
|
Also it is you who are out of date libc++ has replaced libstdc++ with clang and doesn't support those tr1 files only the c++ 11 files headers. TR1 is an optional addendum to C++98. My wxwidgets are built with that libc++ and that is the default on all OSX since 10.6 sdks. Sent from my iPhone
|
|
i currently cant test it on OSX now, but i tested it local on my machine and it did work with clang too (it did show warnings but thats ok) like i said your problem is that you might have the wrong version of clang or gcc (did you try to update them to like i said with macports or brew?) |
|
The problem is that you aren't using libc++ with clang which is the default under BSDs like Darwin and FreeBSD in Linux you need to add -stdlib=c++
|
|
what is your clang version wxwidgets is build against? what is your version of clang, gcc, wxwidgets and ruby? did you use brew or macports as i said to install newer versions? |
|
l Apple LLVM version 6.1.0 (clang-602.0.49) (based on LLVM 3.6.0svn) Target: x86_64-apple-darwin14.3.0 Thread model: posix which is the absolute latest version. and it has the latest libc++ which it and this isthe mkmf.log when those are removed have_macro: checking for wxHAS_EVENT_BIND in wx/wx.h... "gcc In file included from conftest.c:3: In file included from /usr/local/include/wx-3.0/wx/wx.h:15: In file included from /usr/local/include/wx-3.0/wx/object.h:19: In file included from /usr/local/include/wx-3.0/wx/memory.h:15: In file included from /usr/local/include/wx-3.0/wx/string.h:46: /usr/local/include/wx-3.0/wx/strvararg.h:30:18: fatal error: 1 error generated. checked program was: /* begin */ 1: #include "ruby.h" 2: 3: #include <wx/wx.h> 4: /top/ 5: #ifndef wxHAS_EVENT_BIND 6: # error 7: |:/ === wxHAS_EVENT_BIND undefined === /:| 8: #endif /* end */ On Tue, Jun 2, 2015 at 1:09 PM, Hans Mackowiak notifications@github.com
|
|
your ruby seems still be build against gcc then clang |
|
The problem is that the stdc++ library headers used by gcc5.1 look like this x86_64-apple-darwin14.3.0/note that tr1 is a folder and contains unordered_map.h unordered_set unordered_set.h utility wchar.h wctype.hbut libc++ library header contains unordered_set utility valarray vectorNote the absence of tr1 headers On Tue, Jun 2, 2015 at 8:00 PM, Hans Mackowiak notifications@github.com
|
|
the problem is more that it might try to find the wrong folder what does RbConfig::CONFIG["CC"] return in your ruby? as i said before build a new ruby with rvm with adding --clang as parameter so it only builds against clang and not gcc |
limits checks to darwin