realm / realm-js

Realm is a mobile database: an alternative to SQLite & key-value stores
https://realm.io
Apache License 2.0
5.78k stars 573 forks source link

Duplicate Symbols when trying to compile with a library that correctly references GCDWebServer in its podspec file #3814

Open xploSEoF opened 3 years ago

xploSEoF commented 3 years ago

I've been using realm-js for the better part of the last 5 years in a React Native project, and haven't noticed anything wrong until now.

Goals

We now need a web server in the project, and I've installed react-native-static-server. This has a podspec file, including the GCDWebServer module at ~3.0.

Expected Results

This should compile fine and run fine. CocoaPods should handle the version numbers and match accordingly.

Actual Results

duplicate symbol '_OBJC_IVAR_$_GCDWebServer._disconnectDelay' in:
    /Users/Shared/event/derived/Fenestra-gdmrszbjnenndffhabmlltzkhmco/Build/Products/Debug-iphoneos/GCDWebServer/libGCDWebServer.a(GCDWebServer.o)
    /Users/Shared/event/derived/Fenestra-gdmrszbjnenndffhabmlltzkhmco/Build/Products/Debug-iphoneos/libRealmReact.a(GCDWebServer.o)
duplicate symbol '_OBJC_IVAR_$_GCDWebServer._bindToLocalhost' in:
    /Users/Shared/event/derived/Fenestra-gdmrszbjnenndffhabmlltzkhmco/Build/Products/Debug-iphoneos/GCDWebServer/libGCDWebServer.a(GCDWebServer.o)
    /Users/Shared/event/derived/Fenestra-gdmrszbjnenndffhabmlltzkhmco/Build/Products/Debug-iphoneos/libRealmReact.a(GCDWebServer.o)
duplicate symbol '_GCDWebServerOption_BindToLocalhost' in:
    /Users/Shared/event/derived/Fenestra-gdmrszbjnenndffhabmlltzkhmco/Build/Products/Debug-iphoneos/GCDWebServer/libGCDWebServer.a(GCDWebServer.o)
    /Users/Shared/event/derived/Fenestra-gdmrszbjnenndffhabmlltzkhmco/Build/Products/Debug-iphoneos/libRealmReact.a(GCDWebServer.o)
duplicate symbol '_OBJC_IVAR_$_GCDWebServer._port' in:
    /Users/Shared/event/derived/Fenestra-gdmrszbjnenndffhabmlltzkhmco/Build/Products/Debug-iphoneos/GCDWebServer/libGCDWebServer.a(GCDWebServer.o)
    /Users/Shared/event/derived/Fenestra-gdmrszbjnenndffhabmlltzkhmco/Build/Products/Debug-iphoneos/libRealmReact.a(GCDWebServer.o)
duplicate symbol '_OBJC_IVAR_$_GCDWebServer._dnsPort' in:
    /Users/Shared/event/derived/Fenestra-gdmrszbjnenndffhabmlltzkhmco/Build/Products/Debug-iphoneos/GCDWebServer/libGCDWebServer.a(GCDWebServer.o)
    /Users/Shared/event/derived/Fenestra-gdmrszbjnenndffhabmlltzkhmco/Build/Products/Debug-iphoneos/libRealmReact.a(GCDWebServer.o)
duplicate symbol '_GCDWebServerOption_Port' in:
    /Users/Shared/event/derived/Fenestra-gdmrszbjnenndffhabmlltzkhmco/Build/Products/Debug-iphoneos/GCDWebServer/libGCDWebServer.a(GCDWebServer.o)
    /Users/Shared/event/derived/Fenestra-gdmrszbjnenndffhabmlltzkhmco/Build/Products/Debug-iphoneos/libRealmReact.a(GCDWebServer.o)
duplicate symbol '_OBJC_IVAR_$_GCDWebServer._dnsSocket' in:
    /Users/Shared/event/derived/Fenestra-gdmrszbjnenndffhabmlltzkhmco/Build/Products/Debug-iphoneos/GCDWebServer/libGCDWebServer.a(GCDWebServer.o)
    /Users/Shared/event/derived/Fenestra-gdmrszbjnenndffhabmlltzkhmco/Build/Products/Debug-iphoneos/libRealmReact.a(GCDWebServer.o)
duplicate symbol '_OBJC_IVAR_$_GCDWebServer._authenticationDigestAccounts' in:
    /Users/Shared/event/derived/Fenestra-gdmrszbjnenndffhabmlltzkhmco/Build/Products/Debug-iphoneos/GCDWebServer/libGCDWebServer.a(GCDWebServer.o)
    /Users/Shared/event/derived/Fenestra-gdmrszbjnenndffhabmlltzkhmco/Build/Products/Debug-iphoneos/libRealmReact.a(GCDWebServer.o)
duplicate symbol '_GCDWebServerOption_AuthenticationAccounts' in:
    /Users/Shared/event/derived/Fenestra-gdmrszbjnenndffhabmlltzkhmco/Build/Products/Debug-iphoneos/GCDWebServer/libGCDWebServer.a(GCDWebServer.o)
    /Users/Shared/event/derived/Fenestra-gdmrszbjnenndffhabmlltzkhmco/Build/Products/Debug-iphoneos/libRealmReact.a(GCDWebServer.o)
duplicate symbol '_OBJC_IVAR_$_GCDWebServer._authenticationBasicAccounts' in:
    /Users/Shared/event/derived/Fenestra-gdmrszbjnenndffhabmlltzkhmco/Build/Products/Debug-iphoneos/GCDWebServer/libGCDWebServer.a(GCDWebServer.o)
    /Users/Shared/event/derived/Fenestra-gdmrszbjnenndffhabmlltzkhmco/Build/Products/Debug-iphoneos/libRealmReact.a(GCDWebServer.o)
duplicate symbol '_OBJC_IVAR_$_GCDWebServer._dnsAddress' in:
    /Users/Shared/event/derived/Fenestra-gdmrszbjnenndffhabmlltzkhmco/Build/Products/Debug-iphoneos/GCDWebServer/libGCDWebServer.a(GCDWebServer.o)
    /Users/Shared/event/derived/Fenestra-gdmrszbjnenndffhabmlltzkhmco/Build/Products/Debug-iphoneos/libRealmReact.a(GCDWebServer.o)
duplicate symbol '_GCDWebServerAuthenticationMethod_DigestAccess' in:
    /Users/Shared/event/derived/Fenestra-gdmrszbjnenndffhabmlltzkhmco/Build/Products/Debug-iphoneos/GCDWebServer/libGCDWebServer.a(GCDWebServer.o)
    /Users/Shared/event/derived/Fenestra-gdmrszbjnenndffhabmlltzkhmco/Build/Products/Debug-iphoneos/libRealmReact.a(GCDWebServer.o)
duplicate symbol '_OBJC_IVAR_$_GCDWebServer._connectionClass' in:
    /Users/Shared/event/derived/Fenestra-gdmrszbjnenndffhabmlltzkhmco/Build/Products/Debug-iphoneos/GCDWebServer/libGCDWebServer.a(GCDWebServer.o)
    /Users/Shared/event/derived/Fenestra-gdmrszbjnenndffhabmlltzkhmco/Build/Products/Debug-iphoneos/libRealmReact.a(GCDWebServer.o)
duplicate symbol '_GCDWebServerOption_ConnectionClass' in:
    /Users/Shared/event/derived/Fenestra-gdmrszbjnenndffhabmlltzkhmco/Build/Products/Debug-iphoneos/GCDWebServer/libGCDWebServer.a(GCDWebServer.o)
    /Users/Shared/event/derived/Fenestra-gdmrszbjnenndffhabmlltzkhmco/Build/Products/Debug-iphoneos/libRealmReact.a(GCDWebServer.o)
duplicate symbol '_OBJC_IVAR_$_GCDWebServer._handlers' in:
    /Users/Shared/event/derived/Fenestra-gdmrszbjnenndffhabmlltzkhmco/Build/Products/Debug-iphoneos/GCDWebServer/libGCDWebServer.a(GCDWebServer.o)
    /Users/Shared/event/derived/Fenestra-gdmrszbjnenndffhabmlltzkhmco/Build/Products/Debug-iphoneos/libRealmReact.a(GCDWebServer.o)
duplicate symbol '_OBJC_IVAR_$_GCDWebServer._options' in:
    /Users/Shared/event/derived/Fenestra-gdmrszbjnenndffhabmlltzkhmco/Build/Products/Debug-iphoneos/GCDWebServer/libGCDWebServer.a(GCDWebServer.o)
    /Users/Shared/event/derived/Fenestra-gdmrszbjnenndffhabmlltzkhmco/Build/Products/Debug-iphoneos/libRealmReact.a(GCDWebServer.o)
duplicate symbol '_GCDWebServerOption_MaxPendingConnections' in:
    /Users/Shared/event/derived/Fenestra-gdmrszbjnenndffhabmlltzkhmco/Build/Products/Debug-iphoneos/GCDWebServer/libGCDWebServer.a(GCDWebServer.o)
    /Users/Shared/event/derived/Fenestra-gdmrszbjnenndffhabmlltzkhmco/Build/Products/Debug-iphoneos/libRealmReact.a(GCDWebServer.o)
duplicate symbol '_OBJC_IVAR_$_GCDWebServer._activeConnections' in:
    /Users/Shared/event/derived/Fenestra-gdmrszbjnenndffhabmlltzkhmco/Build/Products/Debug-iphoneos/GCDWebServer/libGCDWebServer.a(GCDWebServer.o)
    /Users/Shared/event/derived/Fenestra-gdmrszbjnenndffhabmlltzkhmco/Build/Products/Debug-iphoneos/libRealmReact.a(GCDWebServer.o)
duplicate symbol '_OBJC_CLASS_$_GCDWebServer' in:
    /Users/Shared/event/derived/Fenestra-gdmrszbjnenndffhabmlltzkhmco/Build/Products/Debug-iphoneos/GCDWebServer/libGCDWebServer.a(GCDWebServer.o)
    /Users/Shared/event/derived/Fenestra-gdmrszbjnenndffhabmlltzkhmco/Build/Products/Debug-iphoneos/libRealmReact.a(GCDWebServer.o)
duplicate symbol '_OBJC_METACLASS_$_GCDWebServer' in:
    /Users/Shared/event/derived/Fenestra-gdmrszbjnenndffhabmlltzkhmco/Build/Products/Debug-iphoneos/GCDWebServer/libGCDWebServer.a(GCDWebServer.o)
    /Users/Shared/event/derived/Fenestra-gdmrszbjnenndffhabmlltzkhmco/Build/Products/Debug-iphoneos/libRealmReact.a(GCDWebServer.o)
duplicate symbol '_OBJC_IVAR_$_GCDWebServer._disconnectTimer' in:
    /Users/Shared/event/derived/Fenestra-gdmrszbjnenndffhabmlltzkhmco/Build/Products/Debug-iphoneos/GCDWebServer/libGCDWebServer.a(GCDWebServer.o)
    /Users/Shared/event/derived/Fenestra-gdmrszbjnenndffhabmlltzkhmco/Build/Products/Debug-iphoneos/libRealmReact.a(GCDWebServer.o)
duplicate symbol '_OBJC_CLASS_$_GCDWebServerHandler' in:
    /Users/Shared/event/derived/Fenestra-gdmrszbjnenndffhabmlltzkhmco/Build/Products/Debug-iphoneos/GCDWebServer/libGCDWebServer.a(GCDWebServer.o)
    /Users/Shared/event/derived/Fenestra-gdmrszbjnenndffhabmlltzkhmco/Build/Products/Debug-iphoneos/libRealmReact.a(GCDWebServer.o)
duplicate symbol '_OBJC_METACLASS_$_GCDWebServerHandler' in:
    /Users/Shared/event/derived/Fenestra-gdmrszbjnenndffhabmlltzkhmco/Build/Products/Debug-iphoneos/GCDWebServer/libGCDWebServer.a(GCDWebServer.o)
    /Users/Shared/event/derived/Fenestra-gdmrszbjnenndffhabmlltzkhmco/Build/Products/Debug-iphoneos/libRealmReact.a(GCDWebServer.o)
duplicate symbol '_OBJC_IVAR_$_GCDWebServer._sourceGroup' in:
    /Users/Shared/event/derived/Fenestra-gdmrszbjnenndffhabmlltzkhmco/Build/Products/Debug-iphoneos/GCDWebServer/libGCDWebServer.a(GCDWebServer.o)
    /Users/Shared/event/derived/Fenestra-gdmrszbjnenndffhabmlltzkhmco/Build/Products/Debug-iphoneos/libRealmReact.a(GCDWebServer.o)
duplicate symbol '_OBJC_IVAR_$_GCDWebServer._authenticationRealm' in:
    /Users/Shared/event/derived/Fenestra-gdmrszbjnenndffhabmlltzkhmco/Build/Products/Debug-iphoneos/GCDWebServer/libGCDWebServer.a(GCDWebServer.o)
    /Users/Shared/event/derived/Fenestra-gdmrszbjnenndffhabmlltzkhmco/Build/Products/Debug-iphoneos/libRealmReact.a(GCDWebServer.o)
duplicate symbol '_GCDWebServerOption_AuthenticationRealm' in:
    /Users/Shared/event/derived/Fenestra-gdmrszbjnenndffhabmlltzkhmco/Build/Products/Debug-iphoneos/GCDWebServer/libGCDWebServer.a(GCDWebServer.o)
    /Users/Shared/event/derived/Fenestra-gdmrszbjnenndffhabmlltzkhmco/Build/Products/Debug-iphoneos/libRealmReact.a(GCDWebServer.o)
duplicate symbol '_GCDWebServerLogLevel' in:
    /Users/Shared/event/derived/Fenestra-gdmrszbjnenndffhabmlltzkhmco/Build/Products/Debug-iphoneos/GCDWebServer/libGCDWebServer.a(GCDWebServer.o)
    /Users/Shared/event/derived/Fenestra-gdmrszbjnenndffhabmlltzkhmco/Build/Products/Debug-iphoneos/libRealmReact.a(GCDWebServer.o)
duplicate symbol '_GCDWebServerOption_ConnectedStateCoalescingInterval' in:
    /Users/Shared/event/derived/Fenestra-gdmrszbjnenndffhabmlltzkhmco/Build/Products/Debug-iphoneos/GCDWebServer/libGCDWebServer.a(GCDWebServer.o)
    /Users/Shared/event/derived/Fenestra-gdmrszbjnenndffhabmlltzkhmco/Build/Products/Debug-iphoneos/libRealmReact.a(GCDWebServer.o)
duplicate symbol '_OBJC_IVAR_$_GCDWebServer._backgroundTask' in:
    /Users/Shared/event/derived/Fenestra-gdmrszbjnenndffhabmlltzkhmco/Build/Products/Debug-iphoneos/GCDWebServer/libGCDWebServer.a(GCDWebServer.o)
    /Users/Shared/event/derived/Fenestra-gdmrszbjnenndffhabmlltzkhmco/Build/Products/Debug-iphoneos/libRealmReact.a(GCDWebServer.o)
duplicate symbol '_OBJC_IVAR_$_GCDWebServerHandler._asyncProcessBlock' in:
    /Users/Shared/event/derived/Fenestra-gdmrszbjnenndffhabmlltzkhmco/Build/Products/Debug-iphoneos/GCDWebServer/libGCDWebServer.a(GCDWebServer.o)
    /Users/Shared/event/derived/Fenestra-gdmrszbjnenndffhabmlltzkhmco/Build/Products/Debug-iphoneos/libRealmReact.a(GCDWebServer.o)
duplicate symbol '_OBJC_IVAR_$_GCDWebServerHandler._matchBlock' in:
    /Users/Shared/event/derived/Fenestra-gdmrszbjnenndffhabmlltzkhmco/Build/Products/Debug-iphoneos/GCDWebServer/libGCDWebServer.a(GCDWebServer.o)
    /Users/Shared/event/derived/Fenestra-gdmrszbjnenndffhabmlltzkhmco/Build/Products/Debug-iphoneos/libRealmReact.a(GCDWebServer.o)
duplicate symbol '_GCDWebServerOption_RequestNATPortMapping' in:
    /Users/Shared/event/derived/Fenestra-gdmrszbjnenndffhabmlltzkhmco/Build/Products/Debug-iphoneos/GCDWebServer/libGCDWebServer.a(GCDWebServer.o)
    /Users/Shared/event/derived/Fenestra-gdmrszbjnenndffhabmlltzkhmco/Build/Products/Debug-iphoneos/libRealmReact.a(GCDWebServer.o)
duplicate symbol '_OBJC_IVAR_$_GCDWebServer._syncQueue' in:
    /Users/Shared/event/derived/Fenestra-gdmrszbjnenndffhabmlltzkhmco/Build/Products/Debug-iphoneos/GCDWebServer/libGCDWebServer.a(GCDWebServer.o)
    /Users/Shared/event/derived/Fenestra-gdmrszbjnenndffhabmlltzkhmco/Build/Products/Debug-iphoneos/libRealmReact.a(GCDWebServer.o)
duplicate symbol '_OBJC_IVAR_$_GCDWebServer._delegate' in:
    /Users/Shared/event/derived/Fenestra-gdmrszbjnenndffhabmlltzkhmco/Build/Products/Debug-iphoneos/GCDWebServer/libGCDWebServer.a(GCDWebServer.o)
    /Users/Shared/event/derived/Fenestra-gdmrszbjnenndffhabmlltzkhmco/Build/Products/Debug-iphoneos/libRealmReact.a(GCDWebServer.o)
duplicate symbol '_GCDWebServerOption_BonjourType' in:
    /Users/Shared/event/derived/Fenestra-gdmrszbjnenndffhabmlltzkhmco/Build/Products/Debug-iphoneos/GCDWebServer/libGCDWebServer.a(GCDWebServer.o)
    /Users/Shared/event/derived/Fenestra-gdmrszbjnenndffhabmlltzkhmco/Build/Products/Debug-iphoneos/libRealmReact.a(GCDWebServer.o)
duplicate symbol '_GCDWebServerOption_BonjourName' in:
    /Users/Shared/event/derived/Fenestra-gdmrszbjnenndffhabmlltzkhmco/Build/Products/Debug-iphoneos/GCDWebServer/libGCDWebServer.a(GCDWebServer.o)
    /Users/Shared/event/derived/Fenestra-gdmrszbjnenndffhabmlltzkhmco/Build/Products/Debug-iphoneos/libRealmReact.a(GCDWebServer.o)
duplicate symbol '_OBJC_IVAR_$_GCDWebServer._serverName' in:
    /Users/Shared/event/derived/Fenestra-gdmrszbjnenndffhabmlltzkhmco/Build/Products/Debug-iphoneos/GCDWebServer/libGCDWebServer.a(GCDWebServer.o)
    /Users/Shared/event/derived/Fenestra-gdmrszbjnenndffhabmlltzkhmco/Build/Products/Debug-iphoneos/libRealmReact.a(GCDWebServer.o)
duplicate symbol '_GCDWebServerOption_ServerName' in:
    /Users/Shared/event/derived/Fenestra-gdmrszbjnenndffhabmlltzkhmco/Build/Products/Debug-iphoneos/GCDWebServer/libGCDWebServer.a(GCDWebServer.o)
    /Users/Shared/event/derived/Fenestra-gdmrszbjnenndffhabmlltzkhmco/Build/Products/Debug-iphoneos/libRealmReact.a(GCDWebServer.o)
duplicate symbol '_GCDWebServerLogMessage' in:
    /Users/Shared/event/derived/Fenestra-gdmrszbjnenndffhabmlltzkhmco/Build/Products/Debug-iphoneos/GCDWebServer/libGCDWebServer.a(GCDWebServer.o)
    /Users/Shared/event/derived/Fenestra-gdmrszbjnenndffhabmlltzkhmco/Build/Products/Debug-iphoneos/libRealmReact.a(GCDWebServer.o)
duplicate symbol '_OBJC_IVAR_$_GCDWebServer._dnsSource' in:
    /Users/Shared/event/derived/Fenestra-gdmrszbjnenndffhabmlltzkhmco/Build/Products/Debug-iphoneos/GCDWebServer/libGCDWebServer.a(GCDWebServer.o)
    /Users/Shared/event/derived/Fenestra-gdmrszbjnenndffhabmlltzkhmco/Build/Products/Debug-iphoneos/libRealmReact.a(GCDWebServer.o)
duplicate symbol '_OBJC_IVAR_$_GCDWebServer._dnsService' in:
    /Users/Shared/event/derived/Fenestra-gdmrszbjnenndffhabmlltzkhmco/Build/Products/Debug-iphoneos/GCDWebServer/libGCDWebServer.a(GCDWebServer.o)
    /Users/Shared/event/derived/Fenestra-gdmrszbjnenndffhabmlltzkhmco/Build/Products/Debug-iphoneos/libRealmReact.a(GCDWebServer.o)
duplicate symbol '_OBJC_IVAR_$_GCDWebServer._resolutionService' in:
    /Users/Shared/event/derived/Fenestra-gdmrszbjnenndffhabmlltzkhmco/Build/Products/Debug-iphoneos/GCDWebServer/libGCDWebServer.a(GCDWebServer.o)
    /Users/Shared/event/derived/Fenestra-gdmrszbjnenndffhabmlltzkhmco/Build/Products/Debug-iphoneos/libRealmReact.a(GCDWebServer.o)
duplicate symbol '_OBJC_IVAR_$_GCDWebServer._registrationService' in:
    /Users/Shared/event/derived/Fenestra-gdmrszbjnenndffhabmlltzkhmco/Build/Products/Debug-iphoneos/GCDWebServer/libGCDWebServer.a(GCDWebServer.o)
    /Users/Shared/event/derived/Fenestra-gdmrszbjnenndffhabmlltzkhmco/Build/Products/Debug-iphoneos/libRealmReact.a(GCDWebServer.o)
duplicate symbol '_GCDWebServerOption_AuthenticationMethod' in:
    /Users/Shared/event/derived/Fenestra-gdmrszbjnenndffhabmlltzkhmco/Build/Products/Debug-iphoneos/GCDWebServer/libGCDWebServer.a(GCDWebServer.o)
    /Users/Shared/event/derived/Fenestra-gdmrszbjnenndffhabmlltzkhmco/Build/Products/Debug-iphoneos/libRealmReact.a(GCDWebServer.o)
duplicate symbol '_OBJC_IVAR_$_GCDWebServer._suspendInBackground' in:
    /Users/Shared/event/derived/Fenestra-gdmrszbjnenndffhabmlltzkhmco/Build/Products/Debug-iphoneos/GCDWebServer/libGCDWebServer.a(GCDWebServer.o)
    /Users/Shared/event/derived/Fenestra-gdmrszbjnenndffhabmlltzkhmco/Build/Products/Debug-iphoneos/libRealmReact.a(GCDWebServer.o)
duplicate symbol '_GCDWebServerOption_AutomaticallySuspendInBackground' in:
    /Users/Shared/event/derived/Fenestra-gdmrszbjnenndffhabmlltzkhmco/Build/Products/Debug-iphoneos/GCDWebServer/libGCDWebServer.a(GCDWebServer.o)
    /Users/Shared/event/derived/Fenestra-gdmrszbjnenndffhabmlltzkhmco/Build/Products/Debug-iphoneos/libRealmReact.a(GCDWebServer.o)
duplicate symbol '_OBJC_IVAR_$_GCDWebServer._connected' in:
    /Users/Shared/event/derived/Fenestra-gdmrszbjnenndffhabmlltzkhmco/Build/Products/Debug-iphoneos/GCDWebServer/libGCDWebServer.a(GCDWebServer.o)
    /Users/Shared/event/derived/Fenestra-gdmrszbjnenndffhabmlltzkhmco/Build/Products/Debug-iphoneos/libRealmReact.a(GCDWebServer.o)
duplicate symbol '_GCDWebServerAuthenticationMethod_Basic' in:
    /Users/Shared/event/derived/Fenestra-gdmrszbjnenndffhabmlltzkhmco/Build/Products/Debug-iphoneos/GCDWebServer/libGCDWebServer.a(GCDWebServer.o)
    /Users/Shared/event/derived/Fenestra-gdmrszbjnenndffhabmlltzkhmco/Build/Products/Debug-iphoneos/libRealmReact.a(GCDWebServer.o)
duplicate symbol '_GCDWebServerOption_AutomaticallyMapHEADToGET' in:
    /Users/Shared/event/derived/Fenestra-gdmrszbjnenndffhabmlltzkhmco/Build/Products/Debug-iphoneos/GCDWebServer/libGCDWebServer.a(GCDWebServer.o)
    /Users/Shared/event/derived/Fenestra-gdmrszbjnenndffhabmlltzkhmco/Build/Products/Debug-iphoneos/libRealmReact.a(GCDWebServer.o)
duplicate symbol '_OBJC_IVAR_$_GCDWebServer._source6' in:
    /Users/Shared/event/derived/Fenestra-gdmrszbjnenndffhabmlltzkhmco/Build/Products/Debug-iphoneos/GCDWebServer/libGCDWebServer.a(GCDWebServer.o)
    /Users/Shared/event/derived/Fenestra-gdmrszbjnenndffhabmlltzkhmco/Build/Products/Debug-iphoneos/libRealmReact.a(GCDWebServer.o)
duplicate symbol '_OBJC_IVAR_$_GCDWebServer._source4' in:
    /Users/Shared/event/derived/Fenestra-gdmrszbjnenndffhabmlltzkhmco/Build/Products/Debug-iphoneos/GCDWebServer/libGCDWebServer.a(GCDWebServer.o)
    /Users/Shared/event/derived/Fenestra-gdmrszbjnenndffhabmlltzkhmco/Build/Products/Debug-iphoneos/libRealmReact.a(GCDWebServer.o)
duplicate symbol '_OBJC_IVAR_$_GCDWebServerConnection._request' in:
    /Users/Shared/event/derived/Fenestra-gdmrszbjnenndffhabmlltzkhmco/Build/Products/Debug-iphoneos/GCDWebServer/libGCDWebServer.a(GCDWebServerConnection.o)
    /Users/Shared/event/derived/Fenestra-gdmrszbjnenndffhabmlltzkhmco/Build/Products/Debug-iphoneos/libRealmReact.a(GCDWebServerConnection.o)
duplicate symbol '_OBJC_IVAR_$_GCDWebServerConnection._socket' in:
    /Users/Shared/event/derived/Fenestra-gdmrszbjnenndffhabmlltzkhmco/Build/Products/Debug-iphoneos/GCDWebServer/libGCDWebServer.a(GCDWebServerConnection.o)
    /Users/Shared/event/derived/Fenestra-gdmrszbjnenndffhabmlltzkhmco/Build/Products/Debug-iphoneos/libRealmReact.a(GCDWebServerConnection.o)
duplicate symbol '_OBJC_IVAR_$_GCDWebServerConnection._server' in:
    /Users/Shared/event/derived/Fenestra-gdmrszbjnenndffhabmlltzkhmco/Build/Products/Debug-iphoneos/GCDWebServer/libGCDWebServer.a(GCDWebServerConnection.o)
    /Users/Shared/event/derived/Fenestra-gdmrszbjnenndffhabmlltzkhmco/Build/Products/Debug-iphoneos/libRealmReact.a(GCDWebServerConnection.o)
duplicate symbol '_OBJC_IVAR_$_GCDWebServerConnection._handler' in:
    /Users/Shared/event/derived/Fenestra-gdmrszbjnenndffhabmlltzkhmco/Build/Products/Debug-iphoneos/GCDWebServer/libGCDWebServer.a(GCDWebServerConnection.o)
    /Users/Shared/event/derived/Fenestra-gdmrszbjnenndffhabmlltzkhmco/Build/Products/Debug-iphoneos/libRealmReact.a(GCDWebServerConnection.o)
duplicate symbol '_OBJC_CLASS_$_GCDWebServerConnection' in:
    /Users/Shared/event/derived/Fenestra-gdmrszbjnenndffhabmlltzkhmco/Build/Products/Debug-iphoneos/GCDWebServer/libGCDWebServer.a(GCDWebServerConnection.o)
    /Users/Shared/event/derived/Fenestra-gdmrszbjnenndffhabmlltzkhmco/Build/Products/Debug-iphoneos/libRealmReact.a(GCDWebServerConnection.o)
duplicate symbol '_OBJC_METACLASS_$_GCDWebServerConnection' in:
    /Users/Shared/event/derived/Fenestra-gdmrszbjnenndffhabmlltzkhmco/Build/Products/Debug-iphoneos/GCDWebServer/libGCDWebServer.a(GCDWebServerConnection.o)
    /Users/Shared/event/derived/Fenestra-gdmrszbjnenndffhabmlltzkhmco/Build/Products/Debug-iphoneos/libRealmReact.a(GCDWebServerConnection.o)
duplicate symbol '_OBJC_IVAR_$_GCDWebServerConnection._response' in:
    /Users/Shared/event/derived/Fenestra-gdmrszbjnenndffhabmlltzkhmco/Build/Products/Debug-iphoneos/GCDWebServer/libGCDWebServer.a(GCDWebServerConnection.o)
    /Users/Shared/event/derived/Fenestra-gdmrszbjnenndffhabmlltzkhmco/Build/Products/Debug-iphoneos/libRealmReact.a(GCDWebServerConnection.o)
duplicate symbol '_OBJC_IVAR

Steps to Reproduce

  1. Create a new React Native project.
  2. Add both realm-js and react-native-static-server using NPM
  3. In the ios folder run pods install
  4. Try building the project

Version of Realm and Tooling

Whilst the versions don't matter as the issue still resides in the latest code, I'll include the ones I'm running in my main codebase.

Proposed Solution

xploSEoF commented 3 years ago

I've an 8k line patch that seems to work well for myself. Could be a good basis to including the GCDWebServer project as a dependency rather than a copy+pasted "duplicate symbol nightmare".

kneth commented 3 years ago

@xploSEoF Thank you for the bug report. We haven't considered the case where another library might use GCWebServer. Also thank you for your proposed solution.

We are currently moving away from using GCWebServer (see https://github.com/realm/realm-js/pull/3792) but I can't give an ETA.

xploSEoF commented 3 years ago

Excellent! Well, I hope that whatever solution you go for in the end considers integrating third party libraries either:

Otherwise, if anyone else needs the patch file for their project, I can provide it.

yungpear commented 3 years ago

@xploSEoF any chance you could send over the patch file? we are running into this issue on our project

xploSEoF commented 3 years ago

@yungpear Sorry for the late reply, I was on holiday when you asked and I overlooked updates on Github.

  1. Put the patch file from this gist https://gist.github.com/xploSEoF/07ef766aa6507574c7bf61cc441dd912 into a folder named "patches"
  2. install "patch-package" and setup according to thier documentation: https://github.com/ds300/patch-package
  3. Then run npx patch-package
huuchi207 commented 2 years ago

@yungpear Sorry for the late reply, I was on holiday when you asked and I overlooked updates on Github.

  1. Put the patch file from this gist https://gist.github.com/xploSEoF/07ef766aa6507574c7bf61cc441dd912 into a folder named "patches"
  2. install "patch-package" and setup according to thier documentation: https://github.com/ds300/patch-package
  3. Then run npx patch-package

You saved my life. why this patch doesn't go to main code?