Travis Xenial and OF

#1

I know I’ve seen this problem before but I can’t recall what the problem was.
I also know it is advised to run OF on trusty on Travis. However because of SSL issues I’ve switched to Xenial. However with Poco some trouble arises of undefined references:

g++ -o bin/NatNet2OSCbridge_debug obj/linux64/Debug/src/main.o obj/linux64/Debug/src/themes.o obj/linux64/Debug/src/uiWidgets.o obj/linux64/Debug/src/ect_helpers.o obj/linux64/Debug/src/ofxTextInputField.o obj/linux64/Debug/src/ofApp.o obj/linux64/Debug/src/ofxTextButton.o obj/linux64/Debug/src/client.o obj/linux64/Debug/src/ofpy.o ../../../addons/obj/linux64/Debug/ofxImGui/src/EngineOpenGLES.o ../../../addons/obj/linux64/Debug/ofxImGui/src/EngineVk.o ../../../addons/obj/linux64/Debug/ofxImGui/src/Helpers.o ../../../addons/obj/linux64/Debug/ofxImGui/src/Gui.o ../../../addons/obj/linux64/Debug/ofxImGui/src/ofxImGuiLoggerChannel.o ../../../addons/obj/linux64/Debug/ofxImGui/src/DefaultTheme.o ../../../addons/obj/linux64/Debug/ofxImGui/src/BaseEngine.o ../../../addons/obj/linux64/Debug/ofxImGui/src/EngineGLFW.o ../../../addons/obj/linux64/Debug/ofxImGui/libs/imgui/src/imgui_demo.o ../../../addons/obj/linux64/Debug/ofxImGui/libs/imgui/src/imgui_draw.o ../../../addons/obj/linux64/Debug/ofxImGui/libs/imgui/src/imgui.o ../../../addons/obj/linux64/Debug/ofxImGui/libs/imgui/src/imgui_widgets.o ../../../addons/obj/linux64/Debug/ofxNatNet/src/ofxNatNet.o ../../../addons/obj/linux64/Debug/ofxOsc/src/ofxOscMessage.o ../../../addons/obj/linux64/Debug/ofxOsc/src/ofxOscSender.o ../../../addons/obj/linux64/Debug/ofxOsc/src/ofxOscBundle.o ../../../addons/obj/linux64/Debug/ofxOsc/src/ofxOscParameterSync.o ../../../addons/obj/linux64/Debug/ofxOsc/src/ofxOscReceiver.o ../../../addons/obj/linux64/Debug/ofxOsc/libs/oscpack/src/ip/posix/NetworkingUtils.o ../../../addons/obj/linux64/Debug/ofxOsc/libs/oscpack/src/ip/posix/UdpSocket.o ../../../addons/obj/linux64/Debug/ofxOsc/libs/oscpack/src/ip/IpEndpointName.o ../../../addons/obj/linux64/Debug/ofxOsc/libs/oscpack/src/osc/OscTypes.o ../../../addons/obj/linux64/Debug/ofxOsc/libs/oscpack/src/osc/OscOutboundPacketStream.o ../../../addons/obj/linux64/Debug/ofxOsc/libs/oscpack/src/osc/OscReceivedElements.o ../../../addons/obj/linux64/Debug/ofxOsc/libs/oscpack/src/osc/OscPrintReceivedElements.o ../../../addons/obj/linux64/Debug/ofxPoco/src/ofxXmlPoco.o ../../../addons/obj/linux64/Debug/ofxXmlSettings/src/ofxXmlSettings.o ../../../addons/obj/linux64/Debug/ofxXmlSettings/libs/tinyxml.o ../../../addons/obj/linux64/Debug/ofxXmlSettings/libs/tinyxmlparser.o ../../../addons/obj/linux64/Debug/ofxXmlSettings/libs/tinyxmlerror.o ../../../libs/openFrameworksCompiled/lib/linux64/libopenFrameworksDebug.a /home/travis/openFrameworks/addons/ofxPoco/libs/poco/lib/linux64/libPocoNetSSL.a /home/travis/openFrameworks/addons/ofxPoco/libs/poco/lib/linux64/libPocoNet.a /home/travis/openFrameworks/addons/ofxPoco/libs/poco/lib/linux64/libPocoCrypto.a /home/travis/openFrameworks/addons/ofxPoco/libs/poco/lib/linux64/libPocoUtil.a /home/travis/openFrameworks/addons/ofxPoco/libs/poco/lib/linux64/libPocoJSON.a /home/travis/openFrameworks/addons/ofxPoco/libs/poco/lib/linux64/libPocoXML.a /home/travis/openFrameworks/addons/ofxPoco/libs/poco/lib/linux64/libPocoFoundation.a /home/travis/openFrameworks/addons/ofxPoco/libs/poco/lib/linux64/libPocoEncodings.a /home/travis/openFrameworks/addons/ofxPoco/libs/poco/lib/linux64/libPocoZip.a /home/travis/openFrameworks/addons/ofxPoco/libs/poco/lib/linux64/libPocoRedis.a -Wl,-rpath=./libs:./bin/libs -Wl,--as-needed -Wl,--gc-sections -fuse-ld=gold -L/home/travis/openFrameworks/apps/devApps/NatNet2OSCbridge/bin/python/lib/python3.7/config-3.7m-x86_64-linux-gnu -L/home/travis/openFrameworks/apps/devApps/NatNet2OSCbridge/bin/python/lib -lpython3.7m -lcrypt -lpthread -ldl -lutil -lm -Xlinker -export-dynamic -L../../../libs/fmodex/lib/linux64/ -lfmodex -lcrypto -lssl ../../../libs/kiss/lib/linux64/libkiss.a ../../../libs/tess2/lib/linux64/libtess2.a -lz -lgstapp-1.0 -lgstvideo-1.0 -lgstbase-1.0 -lgstreamer-1.0 -ludev -lfontconfig -lfreetype -lsndfile -lopenal -lcurl -lglfw -lpulse-simple -lpulse -lasound -lGLEW -lGLU -lGL -lgtk-3 -lgdk-3 -lpangocairo-1.0 -lpango-1.0 -latk-1.0 -lcairo-gobject -lcairo -lgdk_pixbuf-2.0 -lgio-2.0 -lgobject-2.0 -lglib-2.0 -lglut -lX11 -lXrandr -lXxf86vm -lXi -lXcursor -ldl -lpthread -lfreeimage -lboost_filesystem -lboost_system -lpugixml -luriparser -lXinerama -lrtaudio obj/linux64/Debug/src/main.o:main.cpp:vtable for Poco::Net::Impl::IPv4SocketAddressImpl: error: undefined reference to 'Poco::Net::Impl::IPv4SocketAddressImpl::toString[abi:cxx11]() const' obj/linux64/Debug/src/main.o:main.cpp:vtable for Poco::Net::Impl::IPv6SocketAddressImpl: error: undefined reference to 'Poco::Net::Impl::IPv6SocketAddressImpl::toString[abi:cxx11]() const' /home/travis/openFrameworks/apps/devApps/NatNet2OSCbridge/src/ofApp.cpp:40: error: undefined reference to 'Poco::Net::NetworkInterface::name[abi:cxx11]() const' ../../../addons/ofxNatNet/src/ofxNatNet.cpp:1146: error: undefined reference to 'Poco::Net::NetworkInterface::name[abi:cxx11]() const' ../../../addons/ofxNatNet/src/ofxNatNet.cpp:1147: error: undefined reference to 'Poco::Net::NetworkInterface::displayName[abi:cxx11]() const' ../../../addons/ofxNatNet/src/ofxNatNet.cpp:1174: error: undefined reference to 'Poco::Net::NetworkInterface::name[abi:cxx11]() const' ../../../addons/ofxNatNet/src/ofxNatNet.cpp:326: error: undefined reference to 'Poco::Exception::displayText[abi:cxx11]() const' ../../../addons/ofxNatNet/src/ofxNatNet.cpp:239: error: undefined reference to 'Poco::Exception::displayText[abi:cxx11]() const' ../../../addons/ofxNatNet/src/ofxNatNet.cpp:122: error: undefined reference to 'Poco::Net::IPAddress::IPAddress(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)' ../../../addons/ofxNatNet/src/ofxNatNet.cpp:132: error: undefined reference to 'Poco::Net::IPAddress::IPAddress(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)' ../../../addons/ofxNatNet/src/ofxNatNet.cpp:154: error: undefined reference to 'Poco::Net::SocketAddress::SocketAddress(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, unsigned short)' ../../../addons/ofxNatNet/src/ofxNatNet.cpp:167: error: undefined reference to 'Poco::Net::SocketAddress::SocketAddress(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, unsigned short)' ../../../addons/ofxNatNet/src/ofxNatNet.cpp:126: error: undefined reference to 'Poco::Net::NetworkInterface::forName(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, Poco::Net::NetworkInterface::IPVersion)' ../../../addons/ofxPoco/src/ofxXmlPoco.cpp:456: error: undefined reference to 'Poco::XML::Element::removeAttribute(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)' ../../../addons/ofxPoco/src/ofxXmlPoco.cpp:485: error: undefined reference to 'Poco::XML::Element::removeAttribute(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)' ../../../addons/ofxPoco/src/ofxXmlPoco.cpp:500: error: undefined reference to 'Poco::XML::Element::removeAttribute(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)' ../../../addons/ofxPoco/src/ofxXmlPoco.cpp:392: error: undefined reference to 'Poco::XML::Document::createTextNode(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) const' ../../../addons/ofxPoco/src/ofxXmlPoco.cpp:385: error: undefined reference to 'Poco::XML::Document::createTextNode(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) const' ../../../addons/ofxPoco/src/ofxXmlPoco.cpp:641: error: undefined reference to 'Poco::XML::Document::createAttribute(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) const' ../../../addons/ofxPoco/src/ofxXmlPoco.cpp:642: error: undefined reference to 'Poco::XML::Attr::setValue(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)' ../../../addons/ofxPoco/src/ofxXmlPoco.cpp:682: error: undefined reference to 'Poco::XML::Document::createElement(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) const' ../../../addons/ofxPoco/src/ofxXmlPoco.cpp:687: error: undefined reference to 'Poco::XML::Element::setAttribute(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)' ../../../addons/ofxPoco/src/ofxXmlPoco.cpp:699: error: undefined reference to 'Poco::XML::Element::setAttribute(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)' ../../../addons/ofxPoco/src/ofxXmlPoco.cpp:694: error: undefined reference to 'Poco::XML::Document::createElement(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) const' ../../../addons/ofxPoco/src/ofxXmlPoco.cpp:160: error: undefined reference to 'Poco::XML::Document::createElement(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) const' ../../../addons/ofxPoco/src/ofxXmlPoco.cpp:175: error: undefined reference to 'Poco::XML::Document::createElement(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) const' ../../../addons/ofxPoco/src/ofxXmlPoco.cpp:716: error: undefined reference to 'Poco::XML::DOMParser::parseString(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)' collect2: error: ld returned 1 exit status

Rg,

Arnaud

#2

Did you get this problem resolved?

#3

This was solved in 0.10.1 just re-run the install_dependencies script

#4

I’ve rerun the travis build from of git master. Still the same error:

see: https://api.travis-ci.org/v3/job/508354667/log.txt

End of the log as it’s a huge log:

obj/linux64/Debug/src/main.o:main.cpp:vtable for Poco::Net::Impl::IPv4SocketAddressImpl: error: undefined reference to 'Poco::Net::Impl::IPv4SocketAddressImpl::toString[abi:cxx11]() const'
obj/linux64/Debug/src/main.o:main.cpp:vtable for Poco::Net::Impl::IPv6SocketAddressImpl: error: undefined reference to 'Poco::Net::Impl::IPv6SocketAddressImpl::toString[abi:cxx11]() const'

It is linking to

/home/travis/openFrameworks/addons/ofxPoco/libs/poco/lib/linux64/libPocoNet.a

and using includes from:

-I/home/travis/openFrameworks/addons/ofxPoco/libs/poco/include

This should be right, right?

I’ll have to see if I can reproduce this with a smaller sample

Rg,

Arnaud