[MacPorts] #31766: flac @1.2.1: error while compiling with clang from Xcode 4.2

MacPorts noreply at macports.org
Sun Mar 25 02:32:42 PDT 2012


#31766: flac @1.2.1: error while compiling with clang from Xcode 4.2
-----------------------------------------+----------------------------------
  Reporter:  philippe.bernery@…          |       Owner:  ryandesign@…           
      Type:  defect                      |      Status:  reopened               
  Priority:  Normal                      |   Milestone:                         
 Component:  ports                       |     Version:  2.0.3                  
Resolution:                              |    Keywords:  clang                  
      Port:  flac                        |  
-----------------------------------------+----------------------------------
Changes (by jeremyhu@…):

  * status:  closed => reopened
  * resolution:  fixed =>


Comment:

 This is a project bug.  We should actually fix it rather than falling back
 on an old compiler.  The problem is that this file is not correctly
 created:

 {{{
 ./src/libFLAC++/.libs/libFLAC++.6.2.0.dylib-master.o:          Mach-O
 64-bit object x86_64
 }}}

 It was made with:
 {{{
 /usr/bin/clang++ -r -keep_private_externs -nostdlib -o
 .libs/libFLAC++.6.2.0.dylib-master.o  .libs/metadata.o
 .libs/stream_decoder.o .libs/stream_encoder.o
 }}}

 The source files are fine:
 {{{
 $ file .libs/metadata.o .libs/stream_decoder.o .libs/stream_encoder.o
 .libs/metadata.o:       Mach-O universal binary with 2 architectures
 .libs/metadata.o (for architecture x86_64):     Mach-O 64-bit object
 x86_64
 .libs/metadata.o (for architecture i386):       Mach-O object i386
 .libs/stream_decoder.o: Mach-O universal binary with 2 architectures
 .libs/stream_decoder.o (for architecture x86_64):       Mach-O 64-bit
 object x86_64
 .libs/stream_decoder.o (for architecture i386): Mach-O object i386
 .libs/stream_encoder.o: Mach-O universal binary with 2 architectures
 .libs/stream_encoder.o (for architecture x86_64):       Mach-O 64-bit
 object x86_64
 .libs/stream_encoder.o (for architecture i386): Mach-O object i386
 }}}

 And the odd thing is that llvm-g++ does the same thing:
 {{{
 $ /usr/bin/llvm-g++-4.2 -r -keep_private_externs -nostdlib -o
 .libs/libFLAC++.6.2.0.dylib-master.o  .libs/metadata.o
 .libs/stream_decoder.o .libs/stream_encoder.o

 $ file .libs/libFLAC++.6.2.0.dylib-master.o
 .libs/libFLAC++.6.2.0.dylib-master.o: Mach-O 64-bit object x86_64
 }}}

-- 
Ticket URL: <https://trac.macports.org/ticket/31766#comment:5>
MacPorts <http://www.macports.org/>
Ports system for Mac OS


More information about the macports-tickets mailing list