Opened 12 years ago

Closed 10 years ago

#34937 closed defect (fixed)

log4cxx @0.10.0_0+universal build fails with clang

Reported by: jamesw@… Owned by: mail@…
Priority: Normal Milestone:
Component: ports Version: 2.1.1
Keywords: clang Cc: ryandesign (Ryan Carsten Schmidt)
Port: log4cxx

Description (last modified by ryandesign (Ryan Carsten Schmidt))

When I tried

sudo port install log4cxx +universal

I got

Error: org.macports.build for port log4cxx returned: command execution failed

but all went well when I did

sudo port install log4cxx +universal configure.compiler=llvm-gcc-4.2

Using Xcode 4.3.3 on Mac OS X 10.7.4.

Attachments (2)

macports-error.txt.zip (15.8 KB) - added by jamesw@… 12 years ago.
build log
main.log (43.3 KB) - added by hansg91@… 11 years ago.
build log

Download all attachments as: .zip

Change History (8)

Changed 12 years ago by jamesw@…

Attachment: macports-error.txt.zip added

build log

comment:1 Changed 12 years ago by ryandesign (Ryan Carsten Schmidt)

Description: modified (diff)
Keywords: clang added
Owner: changed from macports-tickets@… to mail@…

comment:2 Changed 12 years ago by jmroot (Joshua Root)

The problem occurs on line 1124 of the log. Here are lines 1123-1126:

:info:build /bin/sh ../../../libtool --tag=CXX --mode=link /usr/bin/clang++  -pipe -O2 -arch x86_64 -arch i386  -L/opt/local/lib -arch x86_64 -arch i386  -L/opt/local/lib -lapr-1 -lpthread  -L/opt/local/lib -laprutil-1  -ldb-4.6    -lexpat -liconv -o liblog4cxx.la -rpath /opt/local/lib -version-info 10:0:0  - -L/opt/local/lib -lapr-1 -lpthread action.lo appenderattachableimpl.lo appenderskeleton.lo aprinitializer.lo asyncappender.lo basicconfigurator.lo bufferedwriter.lo bytearrayinputstream.lo bytearrayoutputstream.lo bytebuffer.lo cacheddateformat.lo charsetdecoder.lo charsetencoder.lo class.lo classnamepatternconverter.lo classregistration.lo condition.lo configurator.lo consoleappender.lo cyclicbuffer.lo dailyrollingfileappender.lo datagrampacket.lo datagramsocket.lo date.lo dateformat.lo datelayout.lo datepatternconverter.lo defaultloggerfactory.lo defaultconfigurator.lo defaultrepositoryselector.lo domconfigurator.lo exception.lo fallbackerrorhandler.lo file.lo fileappender.lo filedatepatternconverter.lo fileinputstream.lo filelocationpatternconverter.lo fileoutputstream.lo filerenameaction.lo filewatchdog.lo filter.lo filterbasedtriggeringpolicy.lo fixedwindowrollingpolicy.lo formattinginfo.lo fulllocationpatternconverter.lo gzcompressaction.lo hierarchy.lo htmllayout.lo inetaddress.lo inputstream.lo inputstreamreader.lo integer.lo integerpatternconverter.lo layout.lo level.lo levelmatchfilter.lo levelrangefilter.lo levelpatternconverter.lo linelocationpatternconverter.lo lineseparatorpatternconverter.lo literalpatternconverter.lo loggerpatternconverter.lo loggingeventpatternconverter.lo loader.lo locale.lo locationinfo.lo logger.lo loggingevent.lo loglog.lo logmanager.lo logstream.lo manualtriggeringpolicy.lo messagebuffer.lo messagepatternconverter.lo methodlocationpatternconverter.lo mdc.lo mutex.lo nameabbreviator.lo namepatternconverter.lo ndcpatternconverter.lo ndc.lo nteventlogappender.lo objectimpl.lo objectptr.lo objectoutputstream.lo obsoleterollingfileappender.lo odbcappender.lo onlyonceerrorhandler.lo optionconverter.lo outputdebugstringappender.lo outputstream.lo outputstreamwriter.lo patternconverter.lo patternlayout.lo patternparser.lo pool.lo properties.lo propertiespatternconverter.lo propertyconfigurator.lo propertyresourcebundle.lo propertysetter.lo reader.lo relativetimedateformat.lo relativetimepatternconverter.lo resourcebundle.lo rollingfileappender.lo rollingpolicy.lo rollingpolicybase.lo rolloverdescription.lo rootlogger.lo serversocket.lo simpledateformat.lo simplelayout.lo sizebasedtriggeringpolicy.lo smtpappender.lo socket.lo socketappender.lo socketappenderskeleton.lo sockethubappender.lo socketoutputstream.lo strftimedateformat.lo stringhelper.lo stringmatchfilter.lo stringtokenizer.lo synchronized.lo syslogappender.lo syslogwriter.lo system.lo systemerrwriter.lo systemoutwriter.lo telnetappender.lo threadcxx.lo threadlocal.lo threadspecificdata.lo threadpatternconverter.lo throwableinformationpatternconverter.lo timezone.lo timebasedrollingpolicy.lo transform.lo triggeringpolicy.lo transcoder.lo ttcclayout.lo writer.lo writerappender.lo xmllayout.lo xmlsocketappender.lo zipcompressaction.lo  
:info:build /usr/bin/clang++ -r -keep_private_externs -nostdlib -o .libs/liblog4cxx.10.0.0.dylib-master.o  .libs/action.o .libs/appenderattachableimpl.o .libs/appenderskeleton.o .libs/aprinitializer.o .libs/asyncappender.o .libs/basicconfigurator.o .libs/bufferedwriter.o .libs/bytearrayinputstream.o .libs/bytearrayoutputstream.o .libs/bytebuffer.o .libs/cacheddateformat.o .libs/charsetdecoder.o .libs/charsetencoder.o .libs/class.o .libs/classnamepatternconverter.o .libs/classregistration.o .libs/condition.o .libs/configurator.o .libs/consoleappender.o .libs/cyclicbuffer.o .libs/dailyrollingfileappender.o .libs/datagrampacket.o .libs/datagramsocket.o .libs/date.o .libs/dateformat.o .libs/datelayout.o .libs/datepatternconverter.o .libs/defaultloggerfactory.o .libs/defaultconfigurator.o .libs/defaultrepositoryselector.o .libs/domconfigurator.o .libs/exception.o .libs/fallbackerrorhandler.o .libs/file.o .libs/fileappender.o .libs/filedatepatternconverter.o .libs/fileinputstream.o .libs/filelocationpatternconverter.o .libs/fileoutputstream.o .libs/filerenameaction.o .libs/filewatchdog.o .libs/filter.o .libs/filterbasedtriggeringpolicy.o .libs/fixedwindowrollingpolicy.o .libs/formattinginfo.o .libs/fulllocationpatternconverter.o .libs/gzcompressaction.o .libs/hierarchy.o .libs/htmllayout.o .libs/inetaddress.o .libs/inputstream.o .libs/inputstreamreader.o .libs/integer.o .libs/integerpatternconverter.o .libs/layout.o .libs/level.o .libs/levelmatchfilter.o .libs/levelrangefilter.o .libs/levelpatternconverter.o .libs/linelocationpatternconverter.o .libs/lineseparatorpatternconverter.o .libs/literalpatternconverter.o .libs/loggerpatternconverter.o .libs/loggingeventpatternconverter.o .libs/loader.o .libs/locale.o .libs/locationinfo.o .libs/logger.o .libs/loggingevent.o .libs/loglog.o .libs/logmanager.o .libs/logstream.o .libs/manualtriggeringpolicy.o .libs/messagebuffer.o .libs/messagepatternconverter.o .libs/methodlocationpatternconverter.o .libs/mdc.o .libs/mutex.o .libs/nameabbreviator.o .libs/namepatternconverter.o .libs/ndcpatternconverter.o .libs/ndc.o .libs/nteventlogappender.o .libs/objectimpl.o .libs/objectptr.o .libs/objectoutputstream.o .libs/obsoleterollingfileappender.o .libs/odbcappender.o .libs/onlyonceerrorhandler.o .libs/optionconverter.o .libs/outputdebugstringappender.o .libs/outputstream.o .libs/outputstreamwriter.o .libs/patternconverter.o .libs/patternlayout.o .libs/patternparser.o .libs/pool.o .libs/properties.o .libs/propertiespatternconverter.o .libs/propertyconfigurator.o .libs/propertyresourcebundle.o .libs/propertysetter.o .libs/reader.o .libs/relativetimedateformat.o .libs/relativetimepatternconverter.o .libs/resourcebundle.o .libs/rollingfileappender.o .libs/rollingpolicy.o .libs/rollingpolicybase.o .libs/rolloverdescription.o .libs/rootlogger.o .libs/serversocket.o .libs/simpledateformat.o .libs/simplelayout.o .libs/sizebasedtriggeringpolicy.o .libs/smtpappender.o .libs/socket.o .libs/socketappender.o .libs/socketappenderskeleton.o .libs/sockethubappender.o .libs/socketoutputstream.o .libs/strftimedateformat.o .libs/stringhelper.o .libs/stringmatchfilter.o .libs/stringtokenizer.o .libs/synchronized.o .libs/syslogappender.o .libs/syslogwriter.o .libs/system.o .libs/systemerrwriter.o .libs/systemoutwriter.o .libs/telnetappender.o .libs/threadcxx.o .libs/threadlocal.o .libs/threadspecificdata.o .libs/threadpatternconverter.o .libs/throwableinformationpatternconverter.o .libs/timezone.o .libs/timebasedrollingpolicy.o .libs/transform.o .libs/triggeringpolicy.o .libs/transcoder.o .libs/ttcclayout.o .libs/writer.o .libs/writerappender.o .libs/xmllayout.o .libs/xmlsocketappender.o .libs/zipcompressaction.o
:info:build /usr/bin/clang++ -dynamiclib ${wl}-undefined ${wl}dynamic_lookup -o .libs/liblog4cxx.10.0.0.dylib .libs/liblog4cxx.10.0.0.dylib-master.o  -L/opt/local/lib /opt/local/lib/libaprutil-1.dylib -L/opt/local/lib/db46 -ldb-4.6 /opt/local/lib/libexpat.dylib /opt/local/lib/libiconv.dylib /opt/local/lib/libapr-1.dylib -lpthread  -arch x86_64 -arch i386 -arch x86_64 -arch i386 -install_name  /opt/local/lib/liblog4cxx.10.dylib -Wl,-compatibility_version -Wl,11 -Wl,-current_version -Wl,11.0
:info:build ld: warning: ignoring file .libs/liblog4cxx.10.0.0.dylib-master.o, file was built for unsupported file format which is not the architecture being linked (i386)

The first invocation of clang++ uses no -arch flags. Running the exact same commands except with llvm-g++-4.2 instead of clang++ would encounter the same problem, so if it works with llvm-gcc-4.2 then I guess libtool must be doing something different based on the compiler.

comment:3 Changed 11 years ago by hansg91@…

I seem to be getting practically the same error, but your solution does not work for me. I am using MacPorts 2.1.2, XCode 4.5.2 and I am on Mac OSX 10.8.2. I attached my MacPorts log here.

Any help is appreciated.

Changed 11 years ago by hansg91@…

Attachment: main.log added

build log

comment:4 Changed 11 years ago by mail@…

to hansg91@…

Your log shows that the (in this case wrong) clang compiler was used -> /usr/bin/clang++. Maybe you should do a port clean before trying to install with the configure.compiler=llvm-gcc-4.2

comment:5 in reply to:  4 Changed 11 years ago by hansg91@…

Replying to mail@…:

to hansg91@…

Your log shows that the (in this case wrong) clang compiler was used -> /usr/bin/clang++. Maybe you should do a port clean before trying to install with the configure.compiler=llvm-gcc-4.2

Ah thank you and apologies, I did not know I needed to use clean (I tried uninstall though, but thats of no use of course). This fixed my problem.

comment:6 Changed 10 years ago by ryandesign (Ryan Carsten Schmidt)

Cc: ryandesign@… added
Resolution: fixed
Status: newclosed

Fixed in r114181 (maintainer timeout).

Note: See TracTickets for help on using tickets.