clang 3.4 can't be configured (part of a selfupdate)

ftp83plus gestos at ftp83plus.net
Sun Jul 31 12:01:51 PDT 2016


Hello all, 

libomp still fails to build as a dependency of clang 3.8 installation as shown in Step 4:

main.log from 
/opt/local/var/macports/logs/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_lang_libomp/libomp/
http://pastebin.com/9YwFQusZ

This is earlier than Step 8 that was modified by Jeremy.

How do I work around this error?

Pat



El 2016-07-31, a las 00:20, Jeremy Huddleston Sequoia escribió:

> 
>> On Jul 30, 2016, at 18:16, Ryan Schmidt <ryandesign at macports.org> wrote:
>> 
>> 
>>> On Jul 30, 2016, at 7:58 AM, [ftp83plus] wrote:
>>> 
>>>> El 29 jul 2016, a las 16:45, Lawrence Velázquez escribió:
>>>> 
>>>>> On Jul 29, 2016, at 1:35 AM, Ken Cunningham wrote:
>>>>> 
>>>>>> /opt/local/bin/clang++-mp-3.3   -pipe -Os -stdlib=libc++   -arch i386 -mmacosx-version-min=10.6 -Wl,-search_paths_first -Wl,-headerpad_max_install_names  -L/opt/local/lib -Wl,-headerpad_max_install_names  CMakeFiles/cmTC_70577.dir/testCXXCompiler.cxx.o  -o cmTC_70577  
>>>>>> ld: warning: ignoring file /usr/lib/libc++.dylib, file was built for unsupported file format ( 0xcf 0xfa 0xed 0xfe 0x 7 0x 0 0x 0 0x 1 0x 3 0x 0 0x 0 0x 0 0x 6 0x 0 0x 0 0x 0 ) which is not the architecture being linked (i386): /usr/lib/libc++.dylib
>>>>> 
>>>>> You're building for -arch i386, but your libc++.dylib does not have
>>>>> that architecture (it's likely going to be x64_86) -- So somewhere
>>>>> ( probably in your macports.conf file, I would think) your
>>>>> architecture is not set correctly.
>>>> 
>>>> The libomp port is being installed +universal. Since it uses the muniversal-1.0 portgroup, MacPorts builds it for each architecture separately, then lipo(1)s everything together at the end.
>>>> 
>>>> The problem is that the i386 build is trying to link to libc++, which in your case appears to be provided by libcxx. But libomp does not declare a dependency on libcxx, so MacPorts did not attempt to rebuild libcxx +universal. You may have to do this yourself.
>>>> 
>>>> vq
>>> 
>>> So should I rebuild libcxx +universal variant first before performing Step 4 of the LibcxxOnOlderSystems?
>> 
>> Jeremy, shouldn't we modify the LibcxxOnOlderSystems instructions to include installing libcxx +universal?
> 
> 
> Something like this should work:
> 
> sudo port -v -s upgrade --enforce-variants libcxx +universal universal_archs="x86_64 i386" configure.compiler=macports-clang-3.8
> 
> or:
> 
> sudo port -v -s upgrade --enforce-variants ld64 +ld64_127
> sudo port -v -s upgrade --enforce-variants libcxx +universal universal_archs="x86_64 i386 ppc" configure.compiler=macports-clang-3.8
> 
> I've updated the wiki as well.

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.macosforge.org/pipermail/macports-users/attachments/20160731/7f130836/attachment.html>


More information about the macports-users mailing list