[Interest] SSL compilation error building on Mac

Gil Moses gil at waves.com
Wed May 8 13:18:47 CEST 2013


Hi,

Setup details:
==============
OS: Mac 10.6.8

Package: qt-everywhere-opensource-src-5.0.2

Configure command:
./configure -debug-and-release -platform macx-g++42  -opensource -openssl-linked -no-icu -no-xcb -no-eglfs -no-directfb -no-linuxfb -no-kms -opengl -confirm-license

Build error:
============
g++-4.2 -c -include .pch/debug-shared/QtNetwork_debug -pipe -mmacosx-version-min=10.6 -g -gdwarf-2 -fvisibility=hidden -fvisibility-inlines-hidden -fno-exceptions -Wall -W -fPIC -DQT_NO_LIBUDEV -DQT_NO_EVDEV -DQT_NO_XCB -DQT_NO_USING_NAMESPACE -DQT_BUILD_NETWORK_LIB -DQT_BUILDING_QT -DQT_NO_CAST_TO_ASCII -DQT_ASCII_CAST_WARNINGS -DQT_MOC_COMPAT -DQT_USE_QSTRINGBUILDER -DQT_DEPRECATED_WARNINGS -DQT_DISABLE_DEPRECATED_BEFORE=0x050000 -DQT_NO_EXCEPTIONS -D_LARGEFILE64_SOURCE -D_LARGEFILE_SOURCE -DQT_CORE_LIB -I../../mkspecs/macx-g++42 -I. -I../../include -I../../include/QtNetwork -I../../include/QtNetwork/5.0.2 -I../../include/QtNetwork/5.0.2/QtNetwork -Ikernel -I../../include/QtCore -I../../include/QtCore/5.0.2 -I../../include/QtCore/5.0.2/QtCore -I.moc/debug-shared -F/qt-everywhere-opensource-src-5.0.2/qtbase/lib -o .obj/debug-shared/qsslsocket_openssl_symbols.o ssl/qsslsocket_openssl_symbols.cpp
ssl/qsslsocket_openssl_symbols.cpp: In function 'void q_sk_push(STACK*, void*)':
ssl/qsslsocket_openssl_symbols.cpp:186: error: invalid conversion from 'void*' to 'char*'
ssl/qsslsocket_openssl_symbols.cpp:186: error:   initializing argument 2 of 'int sk_push(STACK*, char*)'
ssl/qsslsocket_openssl_symbols.cpp: In function 'int q_ASN1_STRING_print(BIO*, const ASN1_STRING*)':
ssl/qsslsocket_openssl_symbols.cpp:296: error: invalid conversion from 'const ASN1_STRING*' to 'ASN1_STRING*'
ssl/qsslsocket_openssl_symbols.cpp:296: error:   initializing argument 2 of 'int ASN1_STRING_print(BIO*, ASN1_STRING*)'
make[4]: *** [.obj/debug-shared/qsslsocket_openssl_symbols.o] Error 1
make[3]: *** [debug-all] Error 2
make[2]: *** [sub-network-make_first] Error 2
make[1]: *** [sub-src-make_first] Error 2
make: *** [module-qtbase-make_first] Error 2

========================================================

The 3 relevant appearances of sk_push are below. There is no mention whatsoever to a definition with a second argument of a char*.

- qsslsocket_openssl_symbols_p.cpp:186: DEFINEFUNC2(void, sk_push, STACK *a, a, void *b, b, return, DUMMYARG)

- qsslsocket_openssl_symbols_p.h:93:

#  define DEFINEFUNC2(ret, func, arg1, a, arg2, b, err, funcret) \
    typedef ret (*_q_PTR_##func)(arg1, arg2);         \
    static _q_PTR_##func _q_##func = 0;               \
    ret q_##func(arg1, arg2) { \
        if (!_q_##func) { \
            qWarning("QSslSocket: cannot call unresolved function "#func);\
            err; \
        } \
        funcret _q_##func(a, b); \
    }

- qsslsocket_openssl_symbols_p.h:288: void q_sk_push(STACK *st, void *data);


Please advise,
Gil.



More information about the Interest mailing list