Underlinking of pthread on Linux with -Wl,--as-needed -Wl,--no-undefined

Issue #1410 resolved
Rémi Verschelde
created an issue

When building love 11.1 on Linux (Mageia 6 x86_64) with the -Wl,--as-needed -Wl,--no-undefined linker flags (as per policy when packaging for Mageia, as well as various other distros, to prevent underlinking issues), this error pops up on linking:

$ LC_ALL=C make
make  all-recursive
make[1]: Entering directory '/home/akien/Mageia/Checkout/love/BUILD/love-11.1'
Making all in src
make[2]: Entering directory '/home/akien/Mageia/Checkout/love/BUILD/love-11.1/src'
make[3]: Entering directory '/home/akien/Mageia/Checkout/love/BUILD/love-11.1/src'
/bin/sh ../libtool  --tag=CXX   --mode=link g++  -O2 -g -pipe -Wformat -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -fstack-protector --param=ssp-buffer-size=4 -std=c++11 -module -export-dynamic -Wl,--as-needed -Wl,--no-undefined -Wl,-z,relro -Wl,-O1 -Wl,--build-id -Wl,--enable-new-dtags -release 11.1 -Wl,--as-needed -Wl,--no-undefined -Wl,-z,relro -Wl,-O1 -Wl,--build-id -Wl,--enable-new-dtags -o liblove.la -rpath /usr/lib64 ./common/android.lo ./common/b64.lo ./common/Data.lo ./common/delay.lo ./common/deprecation.lo ./common/Exception.lo ./common/halffloat.lo ./common/Matrix.lo ./common/Memoizer.lo ./common/memory.lo ./common/Module.lo ./common/Object.lo ./common/pixelformat.lo ./common/Reference.lo ./common/runtime.lo ./common/Stream.lo ./common/StringMap.lo ./common/types.lo ./common/utf8.lo ./common/Variant.lo ./common/Vector.lo ./modules/audio/Audio.lo ./modules/audio/Effect.lo ./modules/audio/Filter.lo ./modules/audio/null/Audio.lo ./modules/audio/null/RecordingDevice.lo ./modules/audio/null/Source.lo ./modules/audio/openal/Audio.lo ./modules/audio/openal/Effect.lo ./modules/audio/openal/Filter.lo ./modules/audio/openal/Pool.lo ./modules/audio/openal/RecordingDevice.lo ./modules/audio/openal/Source.lo ./modules/audio/RecordingDevice.lo ./modules/audio/Source.lo ./modules/audio/wrap_Audio.lo ./modules/audio/wrap_RecordingDevice.lo ./modules/audio/wrap_Source.lo ./modules/data/ByteData.lo ./modules/data/CompressedData.lo ./modules/data/Compressor.lo ./modules/data/DataModule.lo ./modules/data/DataView.lo ./modules/data/HashFunction.lo ./modules/data/wrap_ByteData.lo ./modules/data/wrap_CompressedData.lo ./modules/data/wrap_Data.lo ./modules/data/wrap_DataModule.lo ./modules/data/wrap_DataView.lo ./modules/event/Event.lo ./modules/event/sdl/Event.lo ./modules/event/wrap_Event.lo ./modules/filesystem/DroppedFile.lo ./modules/filesystem/File.lo ./modules/filesystem/FileData.lo ./modules/filesystem/Filesystem.lo ./modules/filesystem/physfs/File.lo ./modules/filesystem/physfs/Filesystem.lo ./modules/filesystem/wrap_DroppedFile.lo ./modules/filesystem/wrap_File.lo ./modules/filesystem/wrap_FileData.lo ./modules/filesystem/wrap_Filesystem.lo ./modules/font/BMFontRasterizer.lo ./modules/font/Font.lo ./modules/font/freetype/Font.lo ./modules/font/freetype/TrueTypeRasterizer.lo ./modules/font/GlyphData.lo ./modules/font/ImageRasterizer.lo ./modules/font/Rasterizer.lo ./modules/font/TrueTypeRasterizer.lo ./modules/font/wrap_Font.lo ./modules/font/wrap_GlyphData.lo ./modules/font/wrap_Rasterizer.lo ./modules/graphics/Buffer.lo ./modules/graphics/Canvas.lo ./modules/graphics/Deprecations.lo ./modules/graphics/depthstencil.lo ./modules/graphics/Drawable.lo ./modules/graphics/Font.lo ./modules/graphics/Graphics.lo ./modules/graphics/Image.lo ./modules/graphics/Mesh.lo ./modules/graphics/opengl/Buffer.lo ./modules/graphics/opengl/Canvas.lo ./modules/graphics/opengl/FenceSync.lo ./modules/graphics/opengl/Graphics.lo ./modules/graphics/opengl/Image.lo ./modules/graphics/opengl/OpenGL.lo ./modules/graphics/opengl/Shader.lo ./modules/graphics/opengl/ShaderStage.lo ./modules/graphics/opengl/StreamBuffer.lo ./modules/graphics/ParticleSystem.lo ./modules/graphics/Polyline.lo ./modules/graphics/Quad.lo ./modules/graphics/Shader.lo ./modules/graphics/ShaderStage.lo ./modules/graphics/SpriteBatch.lo ./modules/graphics/StreamBuffer.lo ./modules/graphics/Text.lo ./modules/graphics/Texture.lo ./modules/graphics/vertex.lo ./modules/graphics/Video.lo ./modules/graphics/Volatile.lo ./modules/graphics/wrap_Canvas.lo ./modules/graphics/wrap_Font.lo ./modules/graphics/wrap_Graphics.lo ./modules/graphics/wrap_Image.lo ./modules/graphics/wrap_Mesh.lo ./modules/graphics/wrap_ParticleSystem.lo ./modules/graphics/wrap_Quad.lo ./modules/graphics/wrap_Shader.lo ./modules/graphics/wrap_SpriteBatch.lo ./modules/graphics/wrap_Text.lo ./modules/graphics/wrap_Texture.lo ./modules/graphics/wrap_Video.lo ./modules/image/CompressedImageData.lo ./modules/image/CompressedSlice.lo ./modules/image/FormatHandler.lo ./modules/image/Image.lo ./modules/image/ImageDataBase.lo ./modules/image/ImageData.lo ./modules/image/magpie/ASTCHandler.lo ./modules/image/magpie/ddsHandler.lo ./modules/image/magpie/EXRHandler.lo ./modules/image/magpie/KTXHandler.lo ./modules/image/magpie/PKMHandler.lo ./modules/image/magpie/PNGHandler.lo ./modules/image/magpie/PVRHandler.lo ./modules/image/magpie/STBHandler.lo ./modules/image/wrap_CompressedImageData.lo ./modules/image/wrap_Image.lo ./modules/image/wrap_ImageData.lo ./modules/joystick/Joystick.lo ./modules/joystick/sdl/Joystick.lo ./modules/joystick/sdl/JoystickModule.lo ./modules/joystick/wrap_Joystick.lo ./modules/joystick/wrap_JoystickModule.lo ./modules/keyboard/Keyboard.lo ./modules/keyboard/sdl/Keyboard.lo ./modules/keyboard/wrap_Keyboard.lo ./modules/love/love.lo ./modules/math/BezierCurve.lo ./modules/math/MathModule.lo ./modules/math/RandomGenerator.lo ./modules/math/Transform.lo ./modules/math/wrap_BezierCurve.lo ./modules/math/wrap_Math.lo ./modules/math/wrap_RandomGenerator.lo ./modules/math/wrap_Transform.lo ./modules/mouse/Cursor.lo ./modules/mouse/sdl/Cursor.lo ./modules/mouse/sdl/Mouse.lo ./modules/mouse/wrap_Cursor.lo ./modules/mouse/wrap_Mouse.lo ./modules/physics/Body.lo ./modules/physics/box2d/Body.lo ./modules/physics/box2d/ChainShape.lo ./modules/physics/box2d/CircleShape.lo ./modules/physics/box2d/Contact.lo ./modules/physics/box2d/DistanceJoint.lo ./modules/physics/box2d/EdgeShape.lo ./modules/physics/box2d/Fixture.lo ./modules/physics/box2d/FrictionJoint.lo ./modules/physics/box2d/GearJoint.lo ./modules/physics/box2d/Joint.lo ./modules/physics/box2d/MotorJoint.lo ./modules/physics/box2d/MouseJoint.lo ./modules/physics/box2d/Physics.lo ./modules/physics/box2d/PolygonShape.lo ./modules/physics/box2d/PrismaticJoint.lo ./modules/physics/box2d/PulleyJoint.lo ./modules/physics/box2d/RevoluteJoint.lo ./modules/physics/box2d/RopeJoint.lo ./modules/physics/box2d/Shape.lo ./modules/physics/box2d/WeldJoint.lo ./modules/physics/box2d/WheelJoint.lo ./modules/physics/box2d/World.lo ./modules/physics/box2d/wrap_Body.lo ./modules/physics/box2d/wrap_ChainShape.lo ./modules/physics/box2d/wrap_CircleShape.lo ./modules/physics/box2d/wrap_Contact.lo ./modules/physics/box2d/wrap_DistanceJoint.lo ./modules/physics/box2d/wrap_EdgeShape.lo ./modules/physics/box2d/wrap_Fixture.lo ./modules/physics/box2d/wrap_FrictionJoint.lo ./modules/physics/box2d/wrap_GearJoint.lo ./modules/physics/box2d/wrap_Joint.lo ./modules/physics/box2d/wrap_MotorJoint.lo ./modules/physics/box2d/wrap_MouseJoint.lo ./modules/physics/box2d/wrap_Physics.lo ./modules/physics/box2d/wrap_PolygonShape.lo ./modules/physics/box2d/wrap_PrismaticJoint.lo ./modules/physics/box2d/wrap_PulleyJoint.lo ./modules/physics/box2d/wrap_RevoluteJoint.lo ./modules/physics/box2d/wrap_RopeJoint.lo ./modules/physics/box2d/wrap_Shape.lo ./modules/physics/box2d/wrap_WeldJoint.lo ./modules/physics/box2d/wrap_WheelJoint.lo ./modules/physics/box2d/wrap_World.lo ./modules/physics/Joint.lo ./modules/physics/Shape.lo ./modules/sound/Decoder.lo ./modules/sound/lullaby/CoreAudioDecoder.lo ./modules/sound/lullaby/GmeDecoder.lo ./modules/sound/lullaby/ModPlugDecoder.lo ./modules/sound/lullaby/Sound.lo ./modules/sound/lullaby/VorbisDecoder.lo ./modules/sound/lullaby/WaveDecoder.lo ./modules/sound/Sound.lo ./modules/sound/SoundData.lo ./modules/sound/wrap_Decoder.lo ./modules/sound/wrap_Sound.lo ./modules/sound/wrap_SoundData.lo ./modules/sound/lullaby/Mpg123Decoder.lo ./modules/system/sdl/System.lo ./modules/system/System.lo ./modules/system/wrap_System.lo ./modules/thread/Channel.lo ./modules/thread/LuaThread.lo ./modules/thread/sdl/Thread.lo ./modules/thread/sdl/threads.lo ./modules/thread/ThreadModule.lo ./modules/thread/threads.lo ./modules/thread/wrap_Channel.lo ./modules/thread/wrap_LuaThread.lo ./modules/thread/wrap_ThreadModule.lo ./modules/timer/Timer.lo ./modules/timer/wrap_Timer.lo ./modules/touch/sdl/Touch.lo ./modules/touch/wrap_Touch.lo ./modules/video/theora/OggDemuxer.lo ./modules/video/theora/TheoraVideoStream.lo ./modules/video/theora/Video.lo ./modules/video/VideoStream.lo ./modules/video/wrap_Video.lo ./modules/video/wrap_VideoStream.lo ./modules/window/sdl/Window.lo ./modules/window/Window.lo ./modules/window/wrap_Window.lo ./libraries/Box2D/Collision/b2BroadPhase.lo ./libraries/Box2D/Collision/b2CollideCircle.lo ./libraries/Box2D/Collision/b2CollideEdge.lo ./libraries/Box2D/Collision/b2CollidePolygon.lo ./libraries/Box2D/Collision/b2Collision.lo ./libraries/Box2D/Collision/b2Distance.lo ./libraries/Box2D/Collision/b2DynamicTree.lo ./libraries/Box2D/Collision/b2TimeOfImpact.lo ./libraries/Box2D/Collision/Shapes/b2ChainShape.lo ./libraries/Box2D/Collision/Shapes/b2CircleShape.lo ./libraries/Box2D/Collision/Shapes/b2EdgeShape.lo ./libraries/Box2D/Collision/Shapes/b2PolygonShape.lo ./libraries/Box2D/Common/b2BlockAllocator.lo ./libraries/Box2D/Common/b2Draw.lo ./libraries/Box2D/Common/b2Math.lo ./libraries/Box2D/Common/b2Settings.lo ./libraries/Box2D/Common/b2StackAllocator.lo ./libraries/Box2D/Common/b2Timer.lo ./libraries/Box2D/Dynamics/b2Body.lo ./libraries/Box2D/Dynamics/b2ContactManager.lo ./libraries/Box2D/Dynamics/b2Fixture.lo ./libraries/Box2D/Dynamics/b2Island.lo ./libraries/Box2D/Dynamics/b2WorldCallbacks.lo ./libraries/Box2D/Dynamics/b2World.lo ./libraries/Box2D/Dynamics/Contacts/b2ChainAndCircleContact.lo ./libraries/Box2D/Dynamics/Contacts/b2ChainAndPolygonContact.lo ./libraries/Box2D/Dynamics/Contacts/b2CircleContact.lo ./libraries/Box2D/Dynamics/Contacts/b2Contact.lo ./libraries/Box2D/Dynamics/Contacts/b2ContactSolver.lo ./libraries/Box2D/Dynamics/Contacts/b2EdgeAndCircleContact.lo ./libraries/Box2D/Dynamics/Contacts/b2EdgeAndPolygonContact.lo ./libraries/Box2D/Dynamics/Contacts/b2PolygonAndCircleContact.lo ./libraries/Box2D/Dynamics/Contacts/b2PolygonContact.lo ./libraries/Box2D/Dynamics/Joints/b2DistanceJoint.lo ./libraries/Box2D/Dynamics/Joints/b2FrictionJoint.lo ./libraries/Box2D/Dynamics/Joints/b2GearJoint.lo ./libraries/Box2D/Dynamics/Joints/b2Joint.lo ./libraries/Box2D/Dynamics/Joints/b2MotorJoint.lo ./libraries/Box2D/Dynamics/Joints/b2MouseJoint.lo ./libraries/Box2D/Dynamics/Joints/b2PrismaticJoint.lo ./libraries/Box2D/Dynamics/Joints/b2PulleyJoint.lo ./libraries/Box2D/Dynamics/Joints/b2RevoluteJoint.lo ./libraries/Box2D/Dynamics/Joints/b2RopeJoint.lo ./libraries/Box2D/Dynamics/Joints/b2WeldJoint.lo ./libraries/Box2D/Dynamics/Joints/b2WheelJoint.lo ./libraries/Box2D/Rope/b2Rope.lo ./libraries/ddsparse/ddsparse.lo ./libraries/enet/enet.lo ./libraries/enet/libenet/callbacks.lo ./libraries/enet/libenet/compress.lo ./libraries/enet/libenet/host.lo ./libraries/enet/libenet/list.lo ./libraries/enet/libenet/packet.lo ./libraries/enet/libenet/peer.lo ./libraries/enet/libenet/protocol.lo ./libraries/enet/libenet/unix.lo ./libraries/enet/libenet/win32.lo ./libraries/glad/glad.lo ./libraries/glslang/glslang/GenericCodeGen/CodeGen.lo ./libraries/glslang/glslang/GenericCodeGen/Link.lo ./libraries/glslang/glslang/MachineIndependent/Constant.lo ./libraries/glslang/glslang/MachineIndependent/glslang_tab.lo ./libraries/glslang/glslang/MachineIndependent/InfoSink.lo ./libraries/glslang/glslang/MachineIndependent/Initialize.lo ./libraries/glslang/glslang/MachineIndependent/Intermediate.lo ./libraries/glslang/glslang/MachineIndependent/intermOut.lo ./libraries/glslang/glslang/MachineIndependent/IntermTraverse.lo ./libraries/glslang/glslang/MachineIndependent/iomapper.lo ./libraries/glslang/glslang/MachineIndependent/limits.lo ./libraries/glslang/glslang/MachineIndependent/linkValidate.lo ./libraries/glslang/glslang/MachineIndependent/parseConst.lo ./libraries/glslang/glslang/MachineIndependent/ParseContextBase.lo ./libraries/glslang/glslang/MachineIndependent/ParseHelper.lo ./libraries/glslang/glslang/MachineIndependent/PoolAlloc.lo ./libraries/glslang/glslang/MachineIndependent/preprocessor/PpAtom.lo ./libraries/glslang/glslang/MachineIndependent/preprocessor/PpContext.lo ./libraries/glslang/glslang/MachineIndependent/preprocessor/Pp.lo ./libraries/glslang/glslang/MachineIndependent/preprocessor/PpScanner.lo ./libraries/glslang/glslang/MachineIndependent/preprocessor/PpTokens.lo ./libraries/glslang/glslang/MachineIndependent/propagateNoContraction.lo ./libraries/glslang/glslang/MachineIndependent/reflection.lo ./libraries/glslang/glslang/MachineIndependent/RemoveTree.lo ./libraries/glslang/glslang/MachineIndependent/Scan.lo ./libraries/glslang/glslang/MachineIndependent/ShaderLang.lo ./libraries/glslang/glslang/MachineIndependent/SymbolTable.lo ./libraries/glslang/glslang/MachineIndependent/Versions.lo ./libraries/glslang/glslang/OSDependent/Unix/ossource.lo ./libraries/glslang/OGLCompilersDLL/InitializeDll.lo ./libraries/lodepng/lodepng.lo ./libraries/lua53/lstrlib.lo ./libraries/lua53/lutf8lib.lo ./libraries/luasocket/libluasocket/auxiliar.lo ./libraries/luasocket/libluasocket/buffer.lo ./libraries/luasocket/libluasocket/compat.lo ./libraries/luasocket/libluasocket/except.lo ./libraries/luasocket/libluasocket/inet.lo ./libraries/luasocket/libluasocket/io.lo ./libraries/luasocket/libluasocket/luasocket.lo ./libraries/luasocket/libluasocket/mime.lo ./libraries/luasocket/libluasocket/options.lo ./libraries/luasocket/libluasocket/select.lo ./libraries/luasocket/libluasocket/serial.lo ./libraries/luasocket/libluasocket/tcp.lo ./libraries/luasocket/libluasocket/timeout.lo ./libraries/luasocket/libluasocket/udp.lo ./libraries/luasocket/libluasocket/unix.lo ./libraries/luasocket/libluasocket/unixtcp.lo ./libraries/luasocket/libluasocket/unixudp.lo ./libraries/luasocket/libluasocket/usocket.lo ./libraries/luasocket/luasocket.lo ./libraries/lz4/lz4.lo ./libraries/lz4/lz4hc.lo ./libraries/noise1234/noise1234.lo ./libraries/noise1234/simplexnoise1234.lo ./libraries/physfs/physfs_archiver_7z.lo ./libraries/physfs/physfs_archiver_dir.lo ./libraries/physfs/physfs_archiver_grp.lo ./libraries/physfs/physfs_archiver_hog.lo ./libraries/physfs/physfs_archiver_iso9660.lo ./libraries/physfs/physfs_archiver_mvl.lo ./libraries/physfs/physfs_archiver_qpak.lo ./libraries/physfs/physfs_archiver_slb.lo ./libraries/physfs/physfs_archiver_unpacked.lo ./libraries/physfs/physfs_archiver_vdf.lo ./libraries/physfs/physfs_archiver_wad.lo ./libraries/physfs/physfs_archiver_zip.lo ./libraries/physfs/physfs_byteorder.lo ./libraries/physfs/physfs.lo ./libraries/physfs/physfs_platform_haiku.lo ./libraries/physfs/physfs_platform_os2.lo ./libraries/physfs/physfs_platform_posix.lo ./libraries/physfs/physfs_platform_qnx.lo ./libraries/physfs/physfs_platform_unix.lo ./libraries/physfs/physfs_platform_windows.lo ./libraries/physfs/physfs_platform_winrt.lo ./libraries/physfs/physfs_unicode.lo    ./libraries/Wuff/wuff.lo ./libraries/Wuff/wuff_convert.lo ./libraries/Wuff/wuff_internal.lo ./libraries/Wuff/wuff_memory.lo ./libraries/xxHash/xxhash.lo -lSDL2 -lfreetype -lluajit-5.1  -lopenal -lz -lmodplug  -lvorbisfile -ltheoradec -logg -lmpg123 -lgme 
libtool: link: g++  -fPIC -DPIC -shared -nostdlib /usr/lib/gcc/x86_64-mageia-linux-gnu/5.5.0/../../../../lib64/crti.o /usr/lib/gcc/x86_64-mageia-linux-gnu/5.5.0/crtbeginS.o  ./common/.libs/android.o ./common/.libs/b64.o ./common/.libs/Data.o ./common/.libs/delay.o ./common/.libs/deprecation.o ./common/.libs/Exception.o ./common/.libs/halffloat.o ./common/.libs/Matrix.o ./common/.libs/Memoizer.o ./common/.libs/memory.o ./common/.libs/Module.o ./common/.libs/Object.o ./common/.libs/pixelformat.o ./common/.libs/Reference.o ./common/.libs/runtime.o ./common/.libs/Stream.o ./common/.libs/StringMap.o ./common/.libs/types.o ./common/.libs/utf8.o ./common/.libs/Variant.o ./common/.libs/Vector.o ./modules/audio/.libs/Audio.o ./modules/audio/.libs/Effect.o ./modules/audio/.libs/Filter.o ./modules/audio/null/.libs/Audio.o ./modules/audio/null/.libs/RecordingDevice.o ./modules/audio/null/.libs/Source.o ./modules/audio/openal/.libs/Audio.o ./modules/audio/openal/.libs/Effect.o ./modules/audio/openal/.libs/Filter.o ./modules/audio/openal/.libs/Pool.o ./modules/audio/openal/.libs/RecordingDevice.o ./modules/audio/openal/.libs/Source.o ./modules/audio/.libs/RecordingDevice.o ./modules/audio/.libs/Source.o ./modules/audio/.libs/wrap_Audio.o ./modules/audio/.libs/wrap_RecordingDevice.o ./modules/audio/.libs/wrap_Source.o ./modules/data/.libs/ByteData.o ./modules/data/.libs/CompressedData.o ./modules/data/.libs/Compressor.o ./modules/data/.libs/DataModule.o ./modules/data/.libs/DataView.o ./modules/data/.libs/HashFunction.o ./modules/data/.libs/wrap_ByteData.o ./modules/data/.libs/wrap_CompressedData.o ./modules/data/.libs/wrap_Data.o ./modules/data/.libs/wrap_DataModule.o ./modules/data/.libs/wrap_DataView.o ./modules/event/.libs/Event.o ./modules/event/sdl/.libs/Event.o ./modules/event/.libs/wrap_Event.o ./modules/filesystem/.libs/DroppedFile.o ./modules/filesystem/.libs/File.o ./modules/filesystem/.libs/FileData.o ./modules/filesystem/.libs/Filesystem.o ./modules/filesystem/physfs/.libs/File.o ./modules/filesystem/physfs/.libs/Filesystem.o ./modules/filesystem/.libs/wrap_DroppedFile.o ./modules/filesystem/.libs/wrap_File.o ./modules/filesystem/.libs/wrap_FileData.o ./modules/filesystem/.libs/wrap_Filesystem.o ./modules/font/.libs/BMFontRasterizer.o ./modules/font/.libs/Font.o ./modules/font/freetype/.libs/Font.o ./modules/font/freetype/.libs/TrueTypeRasterizer.o ./modules/font/.libs/GlyphData.o ./modules/font/.libs/ImageRasterizer.o ./modules/font/.libs/Rasterizer.o ./modules/font/.libs/TrueTypeRasterizer.o ./modules/font/.libs/wrap_Font.o ./modules/font/.libs/wrap_GlyphData.o ./modules/font/.libs/wrap_Rasterizer.o ./modules/graphics/.libs/Buffer.o ./modules/graphics/.libs/Canvas.o ./modules/graphics/.libs/Deprecations.o ./modules/graphics/.libs/depthstencil.o ./modules/graphics/.libs/Drawable.o ./modules/graphics/.libs/Font.o ./modules/graphics/.libs/Graphics.o ./modules/graphics/.libs/Image.o ./modules/graphics/.libs/Mesh.o ./modules/graphics/opengl/.libs/Buffer.o ./modules/graphics/opengl/.libs/Canvas.o ./modules/graphics/opengl/.libs/FenceSync.o ./modules/graphics/opengl/.libs/Graphics.o ./modules/graphics/opengl/.libs/Image.o ./modules/graphics/opengl/.libs/OpenGL.o ./modules/graphics/opengl/.libs/Shader.o ./modules/graphics/opengl/.libs/ShaderStage.o ./modules/graphics/opengl/.libs/StreamBuffer.o ./modules/graphics/.libs/ParticleSystem.o ./modules/graphics/.libs/Polyline.o ./modules/graphics/.libs/Quad.o ./modules/graphics/.libs/Shader.o ./modules/graphics/.libs/ShaderStage.o ./modules/graphics/.libs/SpriteBatch.o ./modules/graphics/.libs/StreamBuffer.o ./modules/graphics/.libs/Text.o ./modules/graphics/.libs/Texture.o ./modules/graphics/.libs/vertex.o ./modules/graphics/.libs/Video.o ./modules/graphics/.libs/Volatile.o ./modules/graphics/.libs/wrap_Canvas.o ./modules/graphics/.libs/wrap_Font.o ./modules/graphics/.libs/wrap_Graphics.o ./modules/graphics/.libs/wrap_Image.o ./modules/graphics/.libs/wrap_Mesh.o ./modules/graphics/.libs/wrap_ParticleSystem.o ./modules/graphics/.libs/wrap_Quad.o ./modules/graphics/.libs/wrap_Shader.o ./modules/graphics/.libs/wrap_SpriteBatch.o ./modules/graphics/.libs/wrap_Text.o ./modules/graphics/.libs/wrap_Texture.o ./modules/graphics/.libs/wrap_Video.o ./modules/image/.libs/CompressedImageData.o ./modules/image/.libs/CompressedSlice.o ./modules/image/.libs/FormatHandler.o ./modules/image/.libs/Image.o ./modules/image/.libs/ImageDataBase.o ./modules/image/.libs/ImageData.o ./modules/image/magpie/.libs/ASTCHandler.o ./modules/image/magpie/.libs/ddsHandler.o ./modules/image/magpie/.libs/EXRHandler.o ./modules/image/magpie/.libs/KTXHandler.o ./modules/image/magpie/.libs/PKMHandler.o ./modules/image/magpie/.libs/PNGHandler.o ./modules/image/magpie/.libs/PVRHandler.o ./modules/image/magpie/.libs/STBHandler.o ./modules/image/.libs/wrap_CompressedImageData.o ./modules/image/.libs/wrap_Image.o ./modules/image/.libs/wrap_ImageData.o ./modules/joystick/.libs/Joystick.o ./modules/joystick/sdl/.libs/Joystick.o ./modules/joystick/sdl/.libs/JoystickModule.o ./modules/joystick/.libs/wrap_Joystick.o ./modules/joystick/.libs/wrap_JoystickModule.o ./modules/keyboard/.libs/Keyboard.o ./modules/keyboard/sdl/.libs/Keyboard.o ./modules/keyboard/.libs/wrap_Keyboard.o ./modules/love/.libs/love.o ./modules/math/.libs/BezierCurve.o ./modules/math/.libs/MathModule.o ./modules/math/.libs/RandomGenerator.o ./modules/math/.libs/Transform.o ./modules/math/.libs/wrap_BezierCurve.o ./modules/math/.libs/wrap_Math.o ./modules/math/.libs/wrap_RandomGenerator.o ./modules/math/.libs/wrap_Transform.o ./modules/mouse/.libs/Cursor.o ./modules/mouse/sdl/.libs/Cursor.o ./modules/mouse/sdl/.libs/Mouse.o ./modules/mouse/.libs/wrap_Cursor.o ./modules/mouse/.libs/wrap_Mouse.o ./modules/physics/.libs/Body.o ./modules/physics/box2d/.libs/Body.o ./modules/physics/box2d/.libs/ChainShape.o ./modules/physics/box2d/.libs/CircleShape.o ./modules/physics/box2d/.libs/Contact.o ./modules/physics/box2d/.libs/DistanceJoint.o ./modules/physics/box2d/.libs/EdgeShape.o ./modules/physics/box2d/.libs/Fixture.o ./modules/physics/box2d/.libs/FrictionJoint.o ./modules/physics/box2d/.libs/GearJoint.o ./modules/physics/box2d/.libs/Joint.o ./modules/physics/box2d/.libs/MotorJoint.o ./modules/physics/box2d/.libs/MouseJoint.o ./modules/physics/box2d/.libs/Physics.o ./modules/physics/box2d/.libs/PolygonShape.o ./modules/physics/box2d/.libs/PrismaticJoint.o ./modules/physics/box2d/.libs/PulleyJoint.o ./modules/physics/box2d/.libs/RevoluteJoint.o ./modules/physics/box2d/.libs/RopeJoint.o ./modules/physics/box2d/.libs/Shape.o ./modules/physics/box2d/.libs/WeldJoint.o ./modules/physics/box2d/.libs/WheelJoint.o ./modules/physics/box2d/.libs/World.o ./modules/physics/box2d/.libs/wrap_Body.o ./modules/physics/box2d/.libs/wrap_ChainShape.o ./modules/physics/box2d/.libs/wrap_CircleShape.o ./modules/physics/box2d/.libs/wrap_Contact.o ./modules/physics/box2d/.libs/wrap_DistanceJoint.o ./modules/physics/box2d/.libs/wrap_EdgeShape.o ./modules/physics/box2d/.libs/wrap_Fixture.o ./modules/physics/box2d/.libs/wrap_FrictionJoint.o ./modules/physics/box2d/.libs/wrap_GearJoint.o ./modules/physics/box2d/.libs/wrap_Joint.o ./modules/physics/box2d/.libs/wrap_MotorJoint.o ./modules/physics/box2d/.libs/wrap_MouseJoint.o ./modules/physics/box2d/.libs/wrap_Physics.o ./modules/physics/box2d/.libs/wrap_PolygonShape.o ./modules/physics/box2d/.libs/wrap_PrismaticJoint.o ./modules/physics/box2d/.libs/wrap_PulleyJoint.o ./modules/physics/box2d/.libs/wrap_RevoluteJoint.o ./modules/physics/box2d/.libs/wrap_RopeJoint.o ./modules/physics/box2d/.libs/wrap_Shape.o ./modules/physics/box2d/.libs/wrap_WeldJoint.o ./modules/physics/box2d/.libs/wrap_WheelJoint.o ./modules/physics/box2d/.libs/wrap_World.o ./modules/physics/.libs/Joint.o ./modules/physics/.libs/Shape.o ./modules/sound/.libs/Decoder.o ./modules/sound/lullaby/.libs/CoreAudioDecoder.o ./modules/sound/lullaby/.libs/GmeDecoder.o ./modules/sound/lullaby/.libs/ModPlugDecoder.o ./modules/sound/lullaby/.libs/Sound.o ./modules/sound/lullaby/.libs/VorbisDecoder.o ./modules/sound/lullaby/.libs/WaveDecoder.o ./modules/sound/.libs/Sound.o ./modules/sound/.libs/SoundData.o ./modules/sound/.libs/wrap_Decoder.o ./modules/sound/.libs/wrap_Sound.o ./modules/sound/.libs/wrap_SoundData.o ./modules/sound/lullaby/.libs/Mpg123Decoder.o ./modules/system/sdl/.libs/System.o ./modules/system/.libs/System.o ./modules/system/.libs/wrap_System.o ./modules/thread/.libs/Channel.o ./modules/thread/.libs/LuaThread.o ./modules/thread/sdl/.libs/Thread.o ./modules/thread/sdl/.libs/threads.o ./modules/thread/.libs/ThreadModule.o ./modules/thread/.libs/threads.o ./modules/thread/.libs/wrap_Channel.o ./modules/thread/.libs/wrap_LuaThread.o ./modules/thread/.libs/wrap_ThreadModule.o ./modules/timer/.libs/Timer.o ./modules/timer/.libs/wrap_Timer.o ./modules/touch/sdl/.libs/Touch.o ./modules/touch/.libs/wrap_Touch.o ./modules/video/theora/.libs/OggDemuxer.o ./modules/video/theora/.libs/TheoraVideoStream.o ./modules/video/theora/.libs/Video.o ./modules/video/.libs/VideoStream.o ./modules/video/.libs/wrap_Video.o ./modules/video/.libs/wrap_VideoStream.o ./modules/window/sdl/.libs/Window.o ./modules/window/.libs/Window.o ./modules/window/.libs/wrap_Window.o ./libraries/Box2D/Collision/.libs/b2BroadPhase.o ./libraries/Box2D/Collision/.libs/b2CollideCircle.o ./libraries/Box2D/Collision/.libs/b2CollideEdge.o ./libraries/Box2D/Collision/.libs/b2CollidePolygon.o ./libraries/Box2D/Collision/.libs/b2Collision.o ./libraries/Box2D/Collision/.libs/b2Distance.o ./libraries/Box2D/Collision/.libs/b2DynamicTree.o ./libraries/Box2D/Collision/.libs/b2TimeOfImpact.o ./libraries/Box2D/Collision/Shapes/.libs/b2ChainShape.o ./libraries/Box2D/Collision/Shapes/.libs/b2CircleShape.o ./libraries/Box2D/Collision/Shapes/.libs/b2EdgeShape.o ./libraries/Box2D/Collision/Shapes/.libs/b2PolygonShape.o ./libraries/Box2D/Common/.libs/b2BlockAllocator.o ./libraries/Box2D/Common/.libs/b2Draw.o ./libraries/Box2D/Common/.libs/b2Math.o ./libraries/Box2D/Common/.libs/b2Settings.o ./libraries/Box2D/Common/.libs/b2StackAllocator.o ./libraries/Box2D/Common/.libs/b2Timer.o ./libraries/Box2D/Dynamics/.libs/b2Body.o ./libraries/Box2D/Dynamics/.libs/b2ContactManager.o ./libraries/Box2D/Dynamics/.libs/b2Fixture.o ./libraries/Box2D/Dynamics/.libs/b2Island.o ./libraries/Box2D/Dynamics/.libs/b2WorldCallbacks.o ./libraries/Box2D/Dynamics/.libs/b2World.o ./libraries/Box2D/Dynamics/Contacts/.libs/b2ChainAndCircleContact.o ./libraries/Box2D/Dynamics/Contacts/.libs/b2ChainAndPolygonContact.o ./libraries/Box2D/Dynamics/Contacts/.libs/b2CircleContact.o ./libraries/Box2D/Dynamics/Contacts/.libs/b2Contact.o ./libraries/Box2D/Dynamics/Contacts/.libs/b2ContactSolver.o ./libraries/Box2D/Dynamics/Contacts/.libs/b2EdgeAndCircleContact.o ./libraries/Box2D/Dynamics/Contacts/.libs/b2EdgeAndPolygonContact.o ./libraries/Box2D/Dynamics/Contacts/.libs/b2PolygonAndCircleContact.o ./libraries/Box2D/Dynamics/Contacts/.libs/b2PolygonContact.o ./libraries/Box2D/Dynamics/Joints/.libs/b2DistanceJoint.o ./libraries/Box2D/Dynamics/Joints/.libs/b2FrictionJoint.o ./libraries/Box2D/Dynamics/Joints/.libs/b2GearJoint.o ./libraries/Box2D/Dynamics/Joints/.libs/b2Joint.o ./libraries/Box2D/Dynamics/Joints/.libs/b2MotorJoint.o ./libraries/Box2D/Dynamics/Joints/.libs/b2MouseJoint.o ./libraries/Box2D/Dynamics/Joints/.libs/b2PrismaticJoint.o ./libraries/Box2D/Dynamics/Joints/.libs/b2PulleyJoint.o ./libraries/Box2D/Dynamics/Joints/.libs/b2RevoluteJoint.o ./libraries/Box2D/Dynamics/Joints/.libs/b2RopeJoint.o ./libraries/Box2D/Dynamics/Joints/.libs/b2WeldJoint.o ./libraries/Box2D/Dynamics/Joints/.libs/b2WheelJoint.o ./libraries/Box2D/Rope/.libs/b2Rope.o ./libraries/ddsparse/.libs/ddsparse.o ./libraries/enet/.libs/enet.o ./libraries/enet/libenet/.libs/callbacks.o ./libraries/enet/libenet/.libs/compress.o ./libraries/enet/libenet/.libs/host.o ./libraries/enet/libenet/.libs/list.o ./libraries/enet/libenet/.libs/packet.o ./libraries/enet/libenet/.libs/peer.o ./libraries/enet/libenet/.libs/protocol.o ./libraries/enet/libenet/.libs/unix.o ./libraries/enet/libenet/.libs/win32.o ./libraries/glad/.libs/glad.o ./libraries/glslang/glslang/GenericCodeGen/.libs/CodeGen.o ./libraries/glslang/glslang/GenericCodeGen/.libs/Link.o ./libraries/glslang/glslang/MachineIndependent/.libs/Constant.o ./libraries/glslang/glslang/MachineIndependent/.libs/glslang_tab.o ./libraries/glslang/glslang/MachineIndependent/.libs/InfoSink.o ./libraries/glslang/glslang/MachineIndependent/.libs/Initialize.o ./libraries/glslang/glslang/MachineIndependent/.libs/Intermediate.o ./libraries/glslang/glslang/MachineIndependent/.libs/intermOut.o ./libraries/glslang/glslang/MachineIndependent/.libs/IntermTraverse.o ./libraries/glslang/glslang/MachineIndependent/.libs/iomapper.o ./libraries/glslang/glslang/MachineIndependent/.libs/limits.o ./libraries/glslang/glslang/MachineIndependent/.libs/linkValidate.o ./libraries/glslang/glslang/MachineIndependent/.libs/parseConst.o ./libraries/glslang/glslang/MachineIndependent/.libs/ParseContextBase.o ./libraries/glslang/glslang/MachineIndependent/.libs/ParseHelper.o ./libraries/glslang/glslang/MachineIndependent/.libs/PoolAlloc.o ./libraries/glslang/glslang/MachineIndependent/preprocessor/.libs/PpAtom.o ./libraries/glslang/glslang/MachineIndependent/preprocessor/.libs/PpContext.o ./libraries/glslang/glslang/MachineIndependent/preprocessor/.libs/Pp.o ./libraries/glslang/glslang/MachineIndependent/preprocessor/.libs/PpScanner.o ./libraries/glslang/glslang/MachineIndependent/preprocessor/.libs/PpTokens.o ./libraries/glslang/glslang/MachineIndependent/.libs/propagateNoContraction.o ./libraries/glslang/glslang/MachineIndependent/.libs/reflection.o ./libraries/glslang/glslang/MachineIndependent/.libs/RemoveTree.o ./libraries/glslang/glslang/MachineIndependent/.libs/Scan.o ./libraries/glslang/glslang/MachineIndependent/.libs/ShaderLang.o ./libraries/glslang/glslang/MachineIndependent/.libs/SymbolTable.o ./libraries/glslang/glslang/MachineIndependent/.libs/Versions.o ./libraries/glslang/glslang/OSDependent/Unix/.libs/ossource.o ./libraries/glslang/OGLCompilersDLL/.libs/InitializeDll.o ./libraries/lodepng/.libs/lodepng.o ./libraries/lua53/.libs/lstrlib.o ./libraries/lua53/.libs/lutf8lib.o ./libraries/luasocket/libluasocket/.libs/auxiliar.o ./libraries/luasocket/libluasocket/.libs/buffer.o ./libraries/luasocket/libluasocket/.libs/compat.o ./libraries/luasocket/libluasocket/.libs/except.o ./libraries/luasocket/libluasocket/.libs/inet.o ./libraries/luasocket/libluasocket/.libs/io.o ./libraries/luasocket/libluasocket/.libs/luasocket.o ./libraries/luasocket/libluasocket/.libs/mime.o ./libraries/luasocket/libluasocket/.libs/options.o ./libraries/luasocket/libluasocket/.libs/select.o ./libraries/luasocket/libluasocket/.libs/serial.o ./libraries/luasocket/libluasocket/.libs/tcp.o ./libraries/luasocket/libluasocket/.libs/timeout.o ./libraries/luasocket/libluasocket/.libs/udp.o ./libraries/luasocket/libluasocket/.libs/unix.o ./libraries/luasocket/libluasocket/.libs/unixtcp.o ./libraries/luasocket/libluasocket/.libs/unixudp.o ./libraries/luasocket/libluasocket/.libs/usocket.o ./libraries/luasocket/.libs/luasocket.o ./libraries/lz4/.libs/lz4.o ./libraries/lz4/.libs/lz4hc.o ./libraries/noise1234/.libs/noise1234.o ./libraries/noise1234/.libs/simplexnoise1234.o ./libraries/physfs/.libs/physfs_archiver_7z.o ./libraries/physfs/.libs/physfs_archiver_dir.o ./libraries/physfs/.libs/physfs_archiver_grp.o ./libraries/physfs/.libs/physfs_archiver_hog.o ./libraries/physfs/.libs/physfs_archiver_iso9660.o ./libraries/physfs/.libs/physfs_archiver_mvl.o ./libraries/physfs/.libs/physfs_archiver_qpak.o ./libraries/physfs/.libs/physfs_archiver_slb.o ./libraries/physfs/.libs/physfs_archiver_unpacked.o ./libraries/physfs/.libs/physfs_archiver_vdf.o ./libraries/physfs/.libs/physfs_archiver_wad.o ./libraries/physfs/.libs/physfs_archiver_zip.o ./libraries/physfs/.libs/physfs_byteorder.o ./libraries/physfs/.libs/physfs.o ./libraries/physfs/.libs/physfs_platform_haiku.o ./libraries/physfs/.libs/physfs_platform_os2.o ./libraries/physfs/.libs/physfs_platform_posix.o ./libraries/physfs/.libs/physfs_platform_qnx.o ./libraries/physfs/.libs/physfs_platform_unix.o ./libraries/physfs/.libs/physfs_platform_windows.o ./libraries/physfs/.libs/physfs_platform_winrt.o ./libraries/physfs/.libs/physfs_unicode.o ./libraries/Wuff/.libs/wuff.o ./libraries/Wuff/.libs/wuff_convert.o ./libraries/Wuff/.libs/wuff_internal.o ./libraries/Wuff/.libs/wuff_memory.o ./libraries/xxHash/.libs/xxhash.o   -O2 -g -fstack-protector -Wl,--as-needed -Wl,--no-undefined -Wl,-z -Wl,relro -Wl,-O1 -Wl,--build-id -Wl,--enable-new-dtags -Wl,--as-needed -Wl,--no-undefined -Wl,-z -Wl,relro -Wl,-O1 -Wl,--build-id -Wl,--enable-new-dtags    -Wl,-rpath -Wl,/usr/lib64 -Wl,-rpath -Wl,/usr/lib64 -lSDL2 -lfreetype -lluajit-5.1 -lopenal -lz /usr/lib64/libmodplug.so -lvorbisfile /usr/lib64/libtheoradec.so /usr/lib64/libogg.so -lmpg123 -lgme -L/usr/lib/gcc/x86_64-mageia-linux-gnu/5.5.0 -L/usr/lib/gcc/x86_64-mageia-linux-gnu/5.5.0/../../../../lib64 -L/lib/../lib64 -L/usr/lib/../lib64 -L/usr/lib/gcc/x86_64-mageia-linux-gnu/5.5.0/../../.. -lstdc++ -lm -lc -lgcc_s /usr/lib/gcc/x86_64-mageia-linux-gnu/5.5.0/crtendS.o /usr/lib/gcc/x86_64-mageia-linux-gnu/5.5.0/../../../../lib64/crtn.o -Wl,-soname -Wl,liblove-11.1.so -o .libs/liblove-11.1.so
./modules/thread/.libs/threads.o: In function `love::thread::disableSignals()':
/home/akien/Mageia/Checkout/love/BUILD/love-11.1/src/modules/thread/threads.cpp:167: undefined reference to `pthread_sigmask'
./modules/thread/.libs/threads.o: In function `love::thread::reenableSignals()':
/home/akien/Mageia/Checkout/love/BUILD/love-11.1/src/modules/thread/threads.cpp:172: undefined reference to `pthread_sigmask'
./libraries/glslang/glslang/OSDependent/Unix/.libs/ossource.o: In function `glslang::OS_AllocTLSIndex()':
/home/akien/Mageia/Checkout/love/BUILD/love-11.1/src/libraries/glslang/glslang/OSDependent/Unix/ossource.cpp:122: undefined reference to `pthread_key_create'
./libraries/glslang/glslang/OSDependent/Unix/.libs/ossource.o: In function `glslang::OS_SetTLSValue(void*, void*)':
/home/akien/Mageia/Checkout/love/BUILD/love-11.1/src/libraries/glslang/glslang/OSDependent/Unix/ossource.cpp:137: undefined reference to `pthread_setspecific'
./libraries/glslang/glslang/OSDependent/Unix/.libs/ossource.o: In function `glslang::OS_FreeTLSIndex(void*)':
/home/akien/Mageia/Checkout/love/BUILD/love-11.1/src/libraries/glslang/glslang/OSDependent/Unix/ossource.cpp:162: undefined reference to `pthread_key_delete'
./libraries/glslang/glslang/OSDependent/Unix/.libs/ossource.o: In function `glslang::InitGlobalLock()':
/home/akien/Mageia/Checkout/love/BUILD/love-11.1/src/libraries/glslang/glslang/OSDependent/Unix/ossource.cpp:175: undefined reference to `pthread_mutexattr_init'
/home/akien/Mageia/Checkout/love/BUILD/love-11.1/src/libraries/glslang/glslang/OSDependent/Unix/ossource.cpp:176: undefined reference to `pthread_mutexattr_settype'
./libraries/glslang/glslang/OSDependent/Unix/.libs/ossource.o: In function `glslang::OS_GetTLSValue(void*)':
/home/akien/Mageia/Checkout/love/BUILD/love-11.1/src/libraries/glslang/glslang/OSDependent/Unix/ossource.cpp:149: undefined reference to `pthread_getspecific'
collect2: error: ld returned 1 exit status
Makefile:3832: recipe for target 'liblove.la' failed

I'm not very proficient with autotools so not sure where to add it, but -lpthread needs to be passed to the linker on Linux (not sure about other Unixes, but might be needed too).

Comments (1)

  1. Log in to comment