Summary: | errors compiling mpeglib from source | ||
---|---|---|---|
Product: | mpeglib | Reporter: | ronwaldon |
Component: | general | Assignee: | Martin Vogt <mvogt> |
Status: | RESOLVED FIXED | ||
Severity: | normal | CC: | ismail |
Priority: | NOR | ||
Version: | unspecified | ||
Target Milestone: | --- | ||
Platform: | Compiled Sources | ||
OS: | Linux | ||
Latest Commit: | Version Fixed In: | ||
Attachments: | mpeglib inlining fixes (sorry, no diff, complete sources) |
Description
Bugzilla Maintainers
2002-09-12 06:22:58 UTC
Created attachment 219 [details] mpeglib inlining fixes (sorry, no diff, complete sources) I contacted the mpeglib author, mvogt@rhrk.uni-kl.de, on 2002/08/25 with this problem, but didn't get any reply, neither was the bug fixed as it seems. Original mail to above address follows: -------- Hi, please change all inline assembly labels from "<label>" to "<label>_%=" to prevent duplicate symbol errors caused by inlining due to optimization flags. "%=" generates a unique number per instance and thus inlining becomes possible. Example: label: movl %eax,(%ebc,%ecx,4) decl %ecx jnz label The above is impossible with inlining as there are multiple instances of "label" defined. This is fixed below: label_%=: movl %eax,(%ebc,%ecx,4) decl %ecx jnz label_%= Now every inlined instance has a unique label and thus inining is possible. -------- Just replace two files with the ones in the attached archive (sorry, no time for a unified diff right now) to get rid of this bug. This is fixed in HEAD, but differently. (I did not ported it back) and it only occures when compiling with "--enable-final". The new files do not export the symbols anymore and the lables changed from xxxx: to 1: which means that they are always local lables. Can you close this bug please as its already fixed. *** Bug has been marked as fixed ***. |