2015년 11월 10일 화요일

wxWidgets configure options

C++11 을 지원하기 위해 옵션을 변경하였다. (mac 은 이미 C++11 을 지원하고 있었던 듯)
  • Windows Option
    • --enable-monolithic --disable-shared --enable-optimise --enable-accel --enable-dccache CXXFLAGS="-std=c++11 -D__NO_INLINE__" OBJCXXFLAGS="-std=c++11 -D__NO_INLINE__"
  • Mac Option
    • --enable-monolithic --disable-shared --enable-optimise --enable-accel --enable-dccache CXXFLAGS="-stdlib=libc++ -std=c++11" OBJCXXFLAGS="-stdlib=libc++ -std=c++11" LDFLAGS="-stdlib=libc++"
Windows Option 중 -D__NO_INLINE__ 은 mingw 의 헤더 파일 버그 때문에 넣었다.

C++11 은 개뿔. 특정 플랫폼, 특정 컴파일러에서만 돌아가는 소스 코드를 만들지 않기 위해서는 C++11 을 쓰지 않는 것이 좋겠다는 결정을 내렸다. 예전부터 느꼈던 것이긴 하지만 C++ 은 참 애매한 녀석인 것 같다.

  • Windows Option
    • --enable-monolithic --disable-shared --enable-optimise --enable-accel --enable-dccache 
  • Mac Option
    • --enable-monolithic --disable-shared --enable-optimise --enable-accel --enable-dccache --with-macosx-version-min=10.7 CXXFLAGS="-stdlib=libc++ -std=c++11" OBJCXXFLAGS="-stdlib=libc++ -std=c++11" LDFLAGS="-stdlib=libc++"
참고로 아래 설명을 보면 GCC 에서 C++11 의 지원은 아직 실험적인 것 같다.

Important: GCC's support for C++11 is still experimental. Some features were implemented based on early proposals, and no attempt will be made to maintain backward compatibility when they are updated to match the final C++11 standard.