shell command failed

Felix Drud felix.drud at gmail.com
Wed Oct 24 12:46:03 PDT 2012


Den 23/10/2012 kl. 18.04 skrev Ryan Schmidt <ryandesign at macports.org>:

> On Oct 22, 2012, at 14:28, Felix Emil Drud wrote:
>> On Monday den 22. October 2012 at 21.24, Felix Emil Drud wrote:
>>> On Monday den 22. October 2012 at 06.24, Ryan Schmidt wrote:
>>>>
>>>> On Oct 21, 2012, at 23:06, Felix Drud wrote:
>>>>
>>>>> Ryan Schmidt wrote:
>>>>>
>>>>>> On Oct 20, 2012, at 17:52, Felix Emil Drud wrote:
>>>>>>
>>>>>>> sudo port -f uninstall db46
>>>>>>> sudo port clean --all db46
>>>>>>> sudo port install db46
>>>>>>>
>>>>>>> I did this but received the following error, when executing the last command:
>>>>>>> http://pastebin.com/i4ZN6w1S
>>>>>>
>>>>>> This log says:
>>>>>>
>>>>>> :info:configure configure: error: C compiler cannot create executables
>>>>>> :info:configure See `config.log' for more details.
>>>>>>
>>>>>> Seeing that config.log file might tell us more about why it failed.
>>>>>
>>>>> Any idea where I can find the config.log file?
>>>>
>>>> Yes, it is in the directory identified by the command:
>>>>
>>>> port work db46
>>> Sorry but it is not in that directory.
>>> ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- 21:22:45
>>> felixdrud at Ares ~ : port work db46
>>> /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_databases_db46/db46/work
>>> ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- 21:22:50
>>> felixdrud at Ares ~ : cd /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_databases_db46/db46/work
>>> ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- 21:22:57
>>> felixdrud at Ares /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_databases_db46/db46/work : la
>>> total 16
>>> drwxr-xr-x   6 macports  admin   204 22 Okt 21:16 .
>>> drwxr-xr-x   3 macports  admin   102 22 Okt 21:16 ..
>>> -rw-r--r--   1 macports  admin  1192 22 Okt 21:16 .CC_PRINT_OPTIONS
>>> drwxr-xr-x   2 macports  admin    68 22 Okt 21:16 .home
>>> -rw-r--r--   1 macports  admin   147 22 Okt 21:16 .macports.db46.state
>>> drwxr-xr-x  71 macports  admin  2414 27 Sep  2007 db-4.6.21
>>>
>>>
>>> Would it perhaps help if i completely removed Macports and reinstalled it? Would that be a problem or something?
>> I found it by searching. It was in the "port work db46"/db-4.6.21/build_unix/ directory.
>>
>> http://pastebin.com/WYfnjx21
>
> The relevant error in the config.log appears to be:
>
> ld: library not found for -lcrt1.10.6.o
>
> Please verify: does the file /usr/lib/crt1.10.6.o exist?

No it did not exist.

> I suspect it does not, and that this is the cause of the problem, in which case, uninstalling and reinstalling MacPorts will not help, because that file should be provided by Xcode's command line tools. So as in our FAQ [1], the error "C compiler cannot create executables" indicates that the Xcode command line tools are not installed properly.
>
> [1] https://trac.macports.org/wiki/FAQ#missingxcode
>
> Since you're on Mountain Lion, I assume you have Xcode 4.5.1; if not, you should update. Then open Xcode.app, go to the Preferences window, to the Downloads section, and update or install the command line tools from there.

I recently removed Xcode, by using some script provided by apple. I
then reinstalled the newest version. The problem was that I was
missing the command line tool. I installed it from Xcode preferences
and everything is working fine now. I was able so reinstall db46 and a
perl package that I was missing.

Thank you very much for your time and help.


More information about the macports-users mailing list