First Last Prev Next    No search results available      Search page      Enter new bug
Bug#: 200047
Alias:
Product:
Component:
Status: RESOLVED
Resolution: FIXED
Assigned To: Gentoo Sound Team <sound@gentoo.org>
Hardware:
OS:
Version:
Priority:
Severity:
Reporter: Ryan Hill <dirtyepic@gentoo.org>
Add CC:
CC:
URL:
Summary:
Status Whiteboard:
Keywords:

Filename Description Type Creator Created Size Actions
twolame-0.3.10-gcc43-c99inline.patch twolame-0.3.10-gcc43-c99inline.patch patch Ryan Hill 2007-11-23 03:40 0000 417 bytes Details | Diff
blah.txt Build log, patch applied and compiler GCC 4.2.2. text/plain Samuli Suominen 2007-11-23 10:03 0000 24.55 KB Details
twolame-0.3.10-gcc43-c99inline.patch twolame-0.3.10-gcc43-c99inline.patch patch Ryan Hill 2007-11-23 23:33 0000 973 bytes Details | Diff
twolame-0.3.10-gcc43-c99inline.patch twolame-0.3.10-gcc43-c99inline.patch patch Ryan Hill 2007-11-24 00:36 0000 502 bytes Details | Diff
Create a New Attachment (proposed patch, testcase, etc.) View All

Bug 200047 depends on: Show dependency tree
Bug 200047 blocks: 198121
Votes: 0    Show votes for this bug    Vote for this bug

Additional Comments: (this is where you put emerge --info)


Not eligible to see or edit group visibility for this bug.






View Bug Activity   |   Format For Printing   |   XML   |   Clone This Bug


Description:   Opened: 2007-11-23 03:40 0000
GCC 4.3 changes the meaning of "inline" with -std=c99 to correspond with the
C99 standard.  This causes an undefined reference error when linking
media-sound/twolame.  The attached patch backported from twolame cvs fixes this
by using extern inline instead.

http://gcc.gnu.org/bugzilla/show_bug.cgi?id=31389
http://gcc.gnu.org/ml/gcc/2006-11/msg00006.html
http://sourceforge.net/tracker/index.php?func=detail&aid=1691689&group_id=136040&atid=735435

x86_64-pc-linux-gnu-gcc -I../build/ -I../libtwolame/ -O2 -g -march=native
-fomit-frame-pointer -pipe -std=c99 -Wunused -Wall -O3 -Wl,-O1
-Wl,--hash-style=gnu -o .libs/twolame frontend.o  /usr/lib64/libsndfile.so
../libtwolame/.libs/libtwolame.so -lm
../libtwolame/.libs/libtwolame.so: undefined reference to `buffer_putbits'
../libtwolame/.libs/libtwolame.so: undefined reference to `buffer_sstell'
../libtwolame/.libs/libtwolame.so: undefined reference to `buffer_put1bit'
collect2: ld returned 1 exit status
make[1]: *** [twolame] Error 1
make[1]: Leaving directory
`/var/tmp/portage/media-sound/twolame-0.3.10/work/twolame-0.3.10/frontend'
make: *** [all-recursive] Error 1

------- Comment #1 From Ryan Hill 2007-11-23 03:40:44 0000 -------
Created an attachment (id=136731) [details]
twolame-0.3.10-gcc43-c99inline.patch

------- Comment #2 From Samuli Suominen 2007-11-23 10:03:47 0000 -------
Created an attachment (id=136747) [details]
Build log, patch applied and compiler GCC 4.2.2.

And with this patch, it breaks building with GCC 4.2.2, can't apply.

------- Comment #3 From Ryan Hill 2007-11-23 23:33:06 0000 -------
Created an attachment (id=136819) [details]
twolame-0.3.10-gcc43-c99inline.patch

bah.

give this a try.

------- Comment #4 From Ryan Hill 2007-11-24 00:36:36 0000 -------
Created an attachment (id=136831) [details]
twolame-0.3.10-gcc43-c99inline.patch

that was a hack.  please ignore. ;)

this works for me with 4.1.2, 4.2.2, and trunk.

------- Comment #5 From Jakub Moc (RETIRED) 2008-01-17 09:18:18 0000 -------
Is this still needed for 0.3.12 (Bug 206309)?

------- Comment #6 From Samuli Suominen 2008-01-17 09:21:54 0000 -------
thanks Ryan, I've added twolame-0.3.12 to portage, this is from upstream
changelog:

What is new in TwoLAME 
======================

Version 0.3.12 (2008-01-09)
---------------------------

- Fixed 'inline' for the forthcoming gcc-4.3
   * thanks to Martin Michlmayr for patch

First Last Prev Next    No search results available      Search page      Enter new bug