macport导出失败,"无法创建目录"

时间:2014-02-05 05:31:04

标签: export port

我已经更新到Mavericks并通过端口安装许多东西但卡住了。这是我得到的:

afsar@Afsars-MacBook-Pro:~# port extract xmlindent
...................................................
--->  Extracting xmlindent
Error: org.macports.extract for port xmlindent returned: command execution failed
Please see the log file for port xmlindent for details:
   /opt/local/var/macports/logs/_Volumes_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_textproc_xmlindent/xmlindent/main.log
To report a bug, follow the instructions in the guide:
http://guide.macports.org/#project.tickets
Error: Processing of port xmlindent failed


我查看了日志文件,发现:

:info:extract --->  Extracting xmlindent-0.2.17.tar.gz
:debug:extract setting option extract.args to '/opt/local/var/macports/distfiles/xmlindent/xmlindent-0.2.17.tar.gz'
:debug:extract Environment: CPATH='/opt/local/include' CC_PRINT_OPTIONS_FILE='/opt/local/var/macports/build/_Volumes_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_textproc_xmlindent/xmlindent/work/.CC_PRINT_OPTIONS' LIBRARY_PATH='/opt/local/lib' CC_PRINT_OPTIONS='YES' MACOSX_DEPLOYMENT_TARGET='10.9'
:debug:extract Assembled command: 'cd "/opt/local/var/macports/build/_Volumes_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_textproc_xmlindent/xmlindent/work" && /usr/bin/gzip -dc '/opt/local/var/macports/distfiles/xmlindent/xmlindent-0.2.17.tar.gz' | /usr/bin/tar -xf -'
:debug:extract Executing command line:  cd "/opt/local/var/macports/build/_Volumes_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_textproc_xmlindent/xmlindent/work" && /usr/bin/gzip -dc '/opt/local/var/macports/distfiles/xmlindent/xmlindent-0.2.17.tar.gz' | /usr/bin/tar -xf -
:info:extract xmlindent-0.2.17/: Can't create 'xmlindent-0.2.17'
:info:extract xmlindent-0.2.17/BUGS: Failed to create dir 'xmlindent-0.2.17'Can't create 'xmlindent-0.2.17/BUGS'
:info:extract xmlindent-0.2.17/ChangeLog: Failed to create dir 'xmlindent-0.2.17'Can't create 'xmlindent-0.2.17/ChangeLog'
.....................................................................


它是说创建目录失败,我认为这是一个权限问题,并在macportsuer内更新了变量root = /opt/local/etc/macports/macports.conf,但没有运气:(

我在网上搜索了更多提示。这似乎是与tclsh有关的问题,但是naah;我的tclsh是最新的(8.5)

然后我猜到它是一个提取问题。 tar失败了。它可能是uid,gid(分配给tarred文件)在我的系统中不存在。所以,尝试编辑/opt/local/share/macports/Tcl/port1.0/portextract.tcl以使用tar -xpof而不是tar -xfpo会告诉tar分配我的端口的uid和gid)并且再没有运气:(

=====================

经过更多故障排除后,我解决了问题。我有一点不同的情况:

  • 我为opt创建了一个分区(在/Volumes/opt中安装),/opt/Volumes/opt的符号链接

我更新了/opt/local/etc/macports/macports.conf的所有路径以使用/Volumes/opt,问题得到解决。我认为tclsh的IO处理不支持符号链接遍历。


感谢

1 个答案:

答案 0 :(得分:0)

我已经解决了问题,并更新了问题描述的底部。