weixin_39987138 2020-11-20 21:02
浏览 0

ABI change without SONAME bump

FluidSynth 1.1.4 breaks the binary compatibility with the previous releases as it dropped one public symbol:

dpkg-gensymbols: warning: debian/libfluidsynth1/DEBIAN/symbols doesn't match completely debian/libfluidsynth1.symbols
--- debian/libfluidsynth1.symbols (libfluidsynth1_1.1.4-1_amd64)
+++ dpkg-gensymbolsWTLLjv 2011-08-05 07:51:13.943270426 +0000
@@ -89,6 +89,7 @@

fluid_adsr_env_set_data 1.1.3
fluid_allpass_getfeedback 1.1.3
fluid_allpass_init 1.1.3

+ fluid_allpass_release 1.1.4-1

fluid_allpass_setbuffer 1.1.3
fluid_allpass_setfeedback 1.1.3
fluid_alsa_audio_driver_settings 1.1.3

@@ -121,6 +122,7 @@

fluid_comb_getdamp 1.1.3
fluid_comb_getfeedback 1.1.3
fluid_comb_init 1.1.3

+ fluid_comb_release 1.1.4-1

fluid_comb_setbuffer 1.1.3
fluid_comb_setdamp 1.1.3
fluid_comb_setfeedback 1.1.3

@@ -157,7 +159,7 @@

fluid_defsfont_add_sample 1.1.3
fluid_defsfont_get_name 1.1.3
fluid_defsfont_get_preset 1.1.3

- fluid_defsfont_get_sample 1.1.3
+#MISSING: 1.1.4-1# fluid_defsfont_get_sample 1.1.3

fluid_defsfont_iteration_next 1.1.3
fluid_defsfont_iteration_start 1.1.3
fluid_defsfont_load 1.1.3

This means an ABI-change but no SONAME bump has happen'd, could you please fix that?

Reported by: quadrispro

Original Ticket: fluidsynth/tickets/98

该提问来源于开源项目:FluidSynth/fluidsynth

  • 写回答

6条回答 默认 最新

  • weixin_39987138 2020-11-20 21:02
    关注

    I admit not knowing much about this, so excuse me if this is a dumb question, but... could you explain it a little, especially considering that fluid_defsfont_get_sample is not part of the public API? So any external program using this function is broken in itself, if it breaks from this symbol being removed.
    (The reason it's not declared static, and thus present in the first place, is because it is used between different source code files, not between libraries.)

    Original comment by: diwic

    评论

报告相同问题?