Uploaded image for project: 'Qt'
  1. Qt
  2. QTBUG-139230

tls: duplicate symbol warnings on macos

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Unresolved
    • Icon: P3: Somewhat important P3: Somewhat important
    • None
    • 6.11
    • Network: SSL
    • None
    • macOS

      linking application code with statically linked qt gives:

      ld: warning: duplicate symbol 'QtNamespace::QAsn1Element::QAsn1Element(unsigned char, QtNamespace::QByteArray const&)' in:
          /Users/tim/bin/qt-dev-static/plugins/tls/libqsecuretransportbackend.a[2](unity_0_cxx.cxx.o)
          /Users/tim/bin/qt-dev-static/plugins/tls/libqopensslbackend.a[2](unity_0_cxx.cxx.o)
      ld: warning: duplicate symbol 'QtNamespace::QAsn1Element::fromObjectId(QtNamespace::QByteArray const&)' in:
          /Users/tim/bin/qt-dev-static/plugins/tls/libqsecuretransportbackend.a[2](unity_0_cxx.cxx.o)
          /Users/tim/bin/qt-dev-static/plugins/tls/libqopensslbackend.a[2](unity_0_cxx.cxx.o)
      ld: warning: duplicate symbol 'QtNamespace::QAsn1Element::read(QtNamespace::QByteArray const&)' in:
          /Users/tim/bin/qt-dev-static/plugins/tls/libqsecuretransportbackend.a[2](unity_0_cxx.cxx.o)
          /Users/tim/bin/qt-dev-static/plugins/tls/libqopensslbackend.a[2](unity_0_cxx.cxx.o)
      ld: warning: duplicate symbol 'QtNamespace::QTlsPrivate::X509CertificateBase::valueForExtension(long long) const' in:
          /Users/tim/bin/qt-dev-static/plugins/tls/libqsecuretransportbackend.a[2](unity_0_cxx.cxx.o)
          /Users/tim/bin/qt-dev-static/plugins/tls/libqopensslbackend.a[2](unity_0_cxx.cxx.o)
      ld: warning: duplicate symbol 'QtNamespace::QTlsPrivate::X509CertificateBase::oidForExtension(long long) const' in:
          /Users/tim/bin/qt-dev-static/plugins/tls/libqsecuretransportbackend.a[2](unity_0_cxx.cxx.o)
          /Users/tim/bin/qt-dev-static/plugins/tls/libqopensslbackend.a[2](unity_0_cxx.cxx.o)
      ld: warning: duplicate symbol 'QtNamespace::QAsn1Element::fromInteger(unsigned int)' in:
          /Users/tim/bin/qt-dev-static/plugins/tls/libqsecuretransportbackend.a[2](unity_0_cxx.cxx.o)
          /Users/tim/bin/qt-dev-static/plugins/tls/libqopensslbackend.a[2](unity_0_cxx.cxx.o)
      ld: warning: duplicate symbol 'QtNamespace::QTlsPrivate::X509CertificateBase::numberOfExtensions() const' in:
          /Users/tim/bin/qt-dev-static/plugins/tls/libqsecuretransportbackend.a[2](unity_0_cxx.cxx.o)
          /Users/tim/bin/qt-dev-static/plugins/tls/libqopensslbackend.a[2](unity_0_cxx.cxx.o)
      ld: warning: duplicate symbol 'QtNamespace::QTlsPrivate::X509CertificateBase::subjectInfo(QtNamespace::QSslCertificate::SubjectInfo) const' in:
          /Users/tim/bin/qt-dev-static/plugins/tls/libqsecuretransportbackend.a[2](unity_0_cxx.cxx.o)
          /Users/tim/bin/qt-dev-static/plugins/tls/libqopensslbackend.a[2](unity_0_cxx.cxx.o)
      ld: warning: duplicate symbol 'QtNamespace::QTlsPrivate::TlsKeyBase::pkcs8Header(bool)' in:
          /Users/tim/bin/qt-dev-static/plugins/tls/libqsecuretransportbackend.a[2](unity_0_cxx.cxx.o)
          /Users/tim/bin/qt-dev-static/plugins/tls/libqopensslbackend.a[2](unity_0_cxx.cxx.o)
      ld: warning: duplicate symbol 'QtNamespace::QAsn1Element::QAsn1Element(unsigned char, QtNamespace::QByteArray const&)' in:
          /Users/tim/bin/qt-dev-static/plugins/tls/libqsecuretransportbackend.a[2](unity_0_cxx.cxx.o)
          /Users/tim/bin/qt-dev-static/plugins/tls/libqopensslbackend.a[2](unity_0_cxx.cxx.o)
      ld: warning: duplicate symbol 'QtNamespace::QTlsPrivate::X509CertificateBase::isExtensionSupported(long long) const' in:
          /Users/tim/bin/qt-dev-static/plugins/tls/libqsecuretransportbackend.a[2](unity_0_cxx.cxx.o)
          /Users/tim/bin/qt-dev-static/plugins/tls/libqopensslbackend.a[2](unity_0_cxx.cxx.o)
      ld: warning: duplicate symbol 'vtable for QtNamespace::QTlsPrivate::X509CertificateBase' in:
          /Users/tim/bin/qt-dev-static/plugins/tls/libqsecuretransportbackend.a[2](unity_0_cxx.cxx.o)
          /Users/tim/bin/qt-dev-static/plugins/tls/libqopensslbackend.a[2](unity_0_cxx.cxx.o)
      ld: warning: duplicate symbol 'typeinfo name for QtNamespace::QTlsPrivate::TlsKeyBase' in:
          /Users/tim/bin/qt-dev-static/plugins/tls/libqsecuretransportbackend.a[2](unity_0_cxx.cxx.o)
          /Users/tim/bin/qt-dev-static/plugins/tls/libqopensslbackend.a[2](unity_0_cxx.cxx.o)
      ld: warning: duplicate symbol 'QtNamespace::QAsn1Element::toList() const' in:
          /Users/tim/bin/qt-dev-static/plugins/tls/libqsecuretransportbackend.a[2](unity_0_cxx.cxx.o)
          /Users/tim/bin/qt-dev-static/plugins/tls/libqopensslbackend.a[2](unity_0_cxx.cxx.o)
      ld: warning: duplicate symbol 'typeinfo for QtNamespace::QTlsPrivate::TlsKeyBase' in:
          /Users/tim/bin/qt-dev-static/plugins/tls/libqsecuretransportbackend.a[2](unity_0_cxx.cxx.o)
          /Users/tim/bin/qt-dev-static/plugins/tls/libqopensslbackend.a[2](unity_0_cxx.cxx.o)
      ld: warning: duplicate symbol 'QtNamespace::QTlsPrivate::X509CertificateBase::subjectInfo(QtNamespace::QByteArray const&) const' in:
          /Users/tim/bin/qt-dev-static/plugins/tls/libqsecuretransportbackend.a[2](unity_0_cxx.cxx.o)
          /Users/tim/bin/qt-dev-static/plugins/tls/libqopensslbackend.a[2](unity_0_cxx.cxx.o)
      ld: warning: duplicate symbol 'QtNamespace::QTlsPrivate::X509CertificateBase::nameForExtension(long long) const' in:
          /Users/tim/bin/qt-dev-static/plugins/tls/libqsecuretransportbackend.a[2](unity_0_cxx.cxx.o)
          /Users/tim/bin/qt-dev-static/plugins/tls/libqopensslbackend.a[2](unity_0_cxx.cxx.o)
      ld: warning: duplicate symbol 'typeinfo for QtNamespace::QTlsPrivate::X509CertificateBase' in:
          /Users/tim/bin/qt-dev-static/plugins/tls/libqsecuretransportbackend.a[2](unity_0_cxx.cxx.o)
          /Users/tim/bin/qt-dev-static/plugins/tls/libqopensslbackend.a[2](unity_0_cxx.cxx.o)
      ld: warning: duplicate symbol 'QtNamespace::QAsn1Element::toInteger(bool*) const' in:
          /Users/tim/bin/qt-dev-static/plugins/tls/libqsecuretransportbackend.a[2](unity_0_cxx.cxx.o)
          /Users/tim/bin/qt-dev-static/plugins/tls/libqopensslbackend.a[2](unity_0_cxx.cxx.o)
      ld: warning: duplicate symbol 'typeinfo name for QtNamespace::QTlsPrivate::X509CertificateBase' in:
          /Users/tim/bin/qt-dev-static/plugins/tls/libqsecuretransportbackend.a[2](unity_0_cxx.cxx.o)
          /Users/tim/bin/qt-dev-static/plugins/tls/libqopensslbackend.a[2](unity_0_cxx.cxx.o)
      ld: warning: duplicate symbol 'QtNamespace::QAsn1Element::toString() const' in:
          /Users/tim/bin/qt-dev-static/plugins/tls/libqsecuretransportbackend.a[2](unity_0_cxx.cxx.o)
          /Users/tim/bin/qt-dev-static/plugins/tls/libqopensslbackend.a[2](unity_0_cxx.cxx.o)
      ld: warning: duplicate symbol 'QtNamespace::QTlsPrivate::X509CertificateBase::expiryDate() const' in:
          /Users/tim/bin/qt-dev-static/plugins/tls/libqsecuretransportbackend.a[2](unity_0_cxx.cxx.o)
          /Users/tim/bin/qt-dev-static/plugins/tls/libqopensslbackend.a[2](unity_0_cxx.cxx.o)
      ld: warning: duplicate symbol 'QtNamespace::QAsn1Element::read(QtNamespace::QDataStream&)' in:
          /Users/tim/bin/qt-dev-static/plugins/tls/libqsecuretransportbackend.a[2](unity_0_cxx.cxx.o)
          /Users/tim/bin/qt-dev-static/plugins/tls/libqopensslbackend.a[2](unity_0_cxx.cxx.o)
      ld: warning: duplicate symbol 'QtNamespace::QTlsPrivate::X509CertificateBase::matchLineFeed(QtNamespace::QByteArray const&, int*)' in:
          /Users/tim/bin/qt-dev-static/plugins/tls/libqsecuretransportbackend.a[2](unity_0_cxx.cxx.o)
          /Users/tim/bin/qt-dev-static/plugins/tls/libqopensslbackend.a[2](unity_0_cxx.cxx.o)
      ld: warning: duplicate symbol 'QtNamespace::QTlsPrivate::X509CertificateBase::issuerInfo(QtNamespace::QSslCertificate::SubjectInfo) const' in:
          /Users/tim/bin/qt-dev-static/plugins/tls/libqsecuretransportbackend.a[2](unity_0_cxx.cxx.o)
          /Users/tim/bin/qt-dev-static/plugins/tls/libqopensslbackend.a[2](unity_0_cxx.cxx.o)
      ld: warning: duplicate symbol 'QtNamespace::QAsn1Element::toObjectName() const' in:
          /Users/tim/bin/qt-dev-static/plugins/tls/libqsecuretransportbackend.a[2](unity_0_cxx.cxx.o)
          /Users/tim/bin/qt-dev-static/plugins/tls/libqopensslbackend.a[2](unity_0_cxx.cxx.o)
      ld: warning: duplicate symbol 'QtNamespace::QTlsPrivate::TlsKeyBase::isEncryptedPkcs8(QtNamespace::QByteArray const&)' in:
          /Users/tim/bin/qt-dev-static/plugins/tls/libqsecuretransportbackend.a[2](unity_0_cxx.cxx.o)
          /Users/tim/bin/qt-dev-static/plugins/tls/libqopensslbackend.a[2](unity_0_cxx.cxx.o)
      ld: warning: duplicate symbol 'QtNamespace::QTlsPrivate::systemCaCertificates()' in:
          /Users/tim/bin/qt-dev-static/plugins/tls/libqsecuretransportbackend.a[2](unity_0_cxx.cxx.o)
          /Users/tim/bin/qt-dev-static/plugins/tls/libqopensslbackend.a[2](unity_0_cxx.cxx.o)
      ld: warning: duplicate symbol 'QtNamespace::QTlsPrivate::TlsKeyBase::pemFromDer(QtNamespace::QByteArray const&, QtNamespace::QMap<QtNamespace::QByteArray, QtNamespace::QByteArray> const&) const' in:
          /Users/tim/bin/qt-dev-static/plugins/tls/libqsecuretransportbackend.a[2](unity_0_cxx.cxx.o)
          /Users/tim/bin/qt-dev-static/plugins/tls/libqopensslbackend.a[2](unity_0_cxx.cxx.o)
      ld: warning: duplicate symbol 'QtNamespace::QAsn1Element::toDateTime() const' in:
          /Users/tim/bin/qt-dev-static/plugins/tls/libqsecuretransportbackend.a[2](unity_0_cxx.cxx.o)
          /Users/tim/bin/qt-dev-static/plugins/tls/libqopensslbackend.a[2](unity_0_cxx.cxx.o)
      ld: warning: duplicate symbol 'QtNamespace::QTlsPrivate::X509CertificateBase::isExtensionCritical(long long) const' in:
          /Users/tim/bin/qt-dev-static/plugins/tls/libqsecuretransportbackend.a[2](unity_0_cxx.cxx.o)
          /Users/tim/bin/qt-dev-static/plugins/tls/libqopensslbackend.a[2](unity_0_cxx.cxx.o)
      ld: warning: duplicate symbol 'QtNamespace::QAsn1Element::fromBool(bool)' in:
          /Users/tim/bin/qt-dev-static/plugins/tls/libqsecuretransportbackend.a[2](unity_0_cxx.cxx.o)
          /Users/tim/bin/qt-dev-static/plugins/tls/libqopensslbackend.a[2](unity_0_cxx.cxx.o)
      ld: warning: duplicate symbol 'vtable for QtNamespace::QTlsPrivate::TlsKeyBase' in:
          /Users/tim/bin/qt-dev-static/plugins/tls/libqsecuretransportbackend.a[2](unity_0_cxx.cxx.o)
          /Users/tim/bin/qt-dev-static/plugins/tls/libqopensslbackend.a[2](unity_0_cxx.cxx.o)
      ld: warning: duplicate symbol 'QtNamespace::QAsn1Element::write(QtNamespace::QDataStream&) const' in:
          /Users/tim/bin/qt-dev-static/plugins/tls/libqsecuretransportbackend.a[2](unity_0_cxx.cxx.o)
          /Users/tim/bin/qt-dev-static/plugins/tls/libqopensslbackend.a[2](unity_0_cxx.cxx.o)
      ld: warning: duplicate symbol 'QtNamespace::QTlsPrivate::X509CertificateBase::issuerInfo(QtNamespace::QByteArray const&) const' in:
          /Users/tim/bin/qt-dev-static/plugins/tls/libqsecuretransportbackend.a[2](unity_0_cxx.cxx.o)
          /Users/tim/bin/qt-dev-static/plugins/tls/libqopensslbackend.a[2](unity_0_cxx.cxx.o)
      ld: warning: duplicate symbol 'QtNamespace::QAsn1Element::toInfo() const' in:
          /Users/tim/bin/qt-dev-static/plugins/tls/libqsecuretransportbackend.a[2](unity_0_cxx.cxx.o)
          /Users/tim/bin/qt-dev-static/plugins/tls/libqopensslbackend.a[2](unity_0_cxx.cxx.o)
      ld: warning: duplicate symbol 'QtNamespace::lcX509()' in:
          /Users/tim/bin/qt-dev-static/plugins/tls/libqsecuretransportbackend.a[2](unity_0_cxx.cxx.o)
          /Users/tim/bin/qt-dev-static/plugins/tls/libqopensslbackend.a[2](unity_0_cxx.cxx.o)
      ld: warning: duplicate symbol 'QtNamespace::QTlsPrivate::X509CertificateBase::effectiveDate() const' in:
          /Users/tim/bin/qt-dev-static/plugins/tls/libqsecuretransportbackend.a[2](unity_0_cxx.cxx.o)
          /Users/tim/bin/qt-dev-static/plugins/tls/libqopensslbackend.a[2](unity_0_cxx.cxx.o)
      ld: warning: duplicate symbol 'QtNamespace::QTlsPrivate::TlsKeyBase::pkcs8Footer(bool)' in:
          /Users/tim/bin/qt-dev-static/plugins/tls/libqsecuretransportbackend.a[2](unity_0_cxx.cxx.o)
          /Users/tim/bin/qt-dev-static/plugins/tls/libqopensslbackend.a[2](unity_0_cxx.cxx.o)
      ld: warning: duplicate symbol 'QtNamespace::QAsn1Element::toObjectId() const' in:
          /Users/tim/bin/qt-dev-static/plugins/tls/libqsecuretransportbackend.a[2](unity_0_cxx.cxx.o)
          /Users/tim/bin/qt-dev-static/plugins/tls/libqopensslbackend.a[2](unity_0_cxx.cxx.o)
      ld: warning: duplicate symbol 'QtNamespace::QAsn1Element::toBool(bool*) const' in:
          /Users/tim/bin/qt-dev-static/plugins/tls/libqsecuretransportbackend.a[2](unity_0_cxx.cxx.o)
          /Users/tim/bin/qt-dev-static/plugins/tls/libqopensslbackend.a[2](unity_0_cxx.cxx.o)
      ld: warning: duplicate symbol 'QtNamespace::QTlsPrivate::X509CertificateBase::subjectInfoToString(QtNamespace::QSslCertificate::SubjectInfo)' in:
          /Users/tim/bin/qt-dev-static/plugins/tls/libqsecuretransportbackend.a[2](unity_0_cxx.cxx.o)
          /Users/tim/bin/qt-dev-static/plugins/tls/libqopensslbackend.a[2](unity_0_cxx.cxx.o)
      ld: warning: duplicate symbol 'QtNamespace::QTlsPrivate::X509CertificateBase::version() const' in:
          /Users/tim/bin/qt-dev-static/plugins/tls/libqsecuretransportbackend.a[2](unity_0_cxx.cxx.o)
          /Users/tim/bin/qt-dev-static/plugins/tls/libqopensslbackend.a[2](unity_0_cxx.cxx.o)
      ld: warning: duplicate symbol 'QtNamespace::QTlsPrivate::X509CertificateBase::subjectInfoAttributes() const' in:
          /Users/tim/bin/qt-dev-static/plugins/tls/libqsecuretransportbackend.a[2](unity_0_cxx.cxx.o)
          /Users/tim/bin/qt-dev-static/plugins/tls/libqopensslbackend.a[2](unity_0_cxx.cxx.o)
      ld: warning: duplicate symbol 'QtNamespace::QTlsPrivate::X509CertificateBase::issuerInfoAttributes() const' in:
          /Users/tim/bin/qt-dev-static/plugins/tls/libqsecuretransportbackend.a[2](unity_0_cxx.cxx.o)
          /Users/tim/bin/qt-dev-static/plugins/tls/libqopensslbackend.a[2](unity_0_cxx.cxx.o)
      ld: warning: duplicate symbol 'QtNamespace::QAsn1Element::fromVector(QtNamespace::QList<QtNamespace::QAsn1Element> const&)' in:
          /Users/tim/bin/qt-dev-static/plugins/tls/libqsecuretransportbackend.a[2](unity_0_cxx.cxx.o)
          /Users/tim/bin/qt-dev-static/plugins/tls/libqopensslbackend.a[2](unity_0_cxx.cxx.o)
      ld: warning: duplicate symbol 'QtNamespace::QTlsPrivate::X509CertificateBase::isNull() const' in:
          /Users/tim/bin/qt-dev-static/plugins/tls/libqsecuretransportbackend.a[2](unity_0_cxx.cxx.o)
          /Users/tim/bin/qt-dev-static/plugins/tls/libqopensslbackend.a[2](unity_0_cxx.cxx.o)
      ld: warning: duplicate symbol 'QtNamespace::QTlsPrivate::X509CertificateBase::serialNumber() const' in:
          /Users/tim/bin/qt-dev-static/plugins/tls/libqsecuretransportbackend.a[2](unity_0_cxx.cxx.o)
          /Users/tim/bin/qt-dev-static/plugins/tls/libqopensslbackend.a[2](unity_0_cxx.cxx.o)
      

      reason is that the same classes (X509CertificateBase, QAsn1Element) are compiled into different plugins.

        For Gerrit Dashboard: QTBUG-139230
        # Subject Branch Project Status CR V

            timblechmann tim blechmann
            timblechmann tim blechmann
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

              Created:
              Updated: