Skip to content

Library lacks symbol versions #2786

@SDLBugzilla

Description

@SDLBugzilla

This bug report was migrated from our old Bugzilla tracker.

Reported in version: 2.0.6
Reported for operating system, platform: Linux, x86_64

Comments on the original bug report:

On 2018-01-10 15:43:41 +0000, Jan Engelhardt wrote:

In SDL 2.0.5, SDL_RenderSetIntegerScale was added, but neither the SONAME was changed, nor were symbol versions used to indicate that there is an ABI boundary. This means that package managers which scan ELF files for dependencies will not pick up the news, leading to a system where a program built with SDL-2.0.6 is installable on SDL 2.0.3 systems, but is unrunnable.

$ LD_BIND_NOW=1 chocolate-doom
chocolate-doom: symbol lookup error: chocolate-doom: undefined symbol: SDL_RenderSetIntegerScale

Please add symbol versions. Something like

/* sdl.sym */
SDL_2.0.0 {
global:
SDL_xxx;
SDL_yyy;
...;
local:
*;
};
SDL_2.0.5 {
global:
SDL_RenderSetIntegerScale;
} SDL_2.0.0;

and use with gcc -Wl,--version-script=sdl.sym during build.

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

No projects

Relationships

None yet

Development

No branches or pull requests

Issue actions