当我从Sublime2运行的Ruby程序执行以下命令时(通过后者的“构建”机制)
/usr/local/bin/convert /Users/palfvin/tmp/cover_sheet2.pdf -depth 8 /Users/palfvin/tmp/cover_sheet2.tiff
我收到以下错误:
convert: Postscript delegate failed `/Users/palfvin/tmp/cover_sheet2.pdf': No such file or directory @ error/pdf.c/ReadPDFImage/678.
输入文件存在,此命令从终端运行良好。我修改了Sublime2 Ruby构建设置,以便PATH环境变量与终端中的相同。我在两个环境中都做了convert -list configure
,输出也一样。
我从Convert: Postscript delegate failed收集并且之前的经验表明问题与ghostscript执行有关,但我不能为我的生活找出可能导致这种情况的原因。提前感谢您的帮助。
更新1:在回答第一个答案时,以下是从终端运行ruby而不是Sublime时的其他环境变量,不包括帐号/密码变量(来自Sublime的所有变量完全相同)作为他们的终端对手)。请注意,信息显示为“数组”,因为我通过在两个上下文中获取输出ENV
来获得此信息,将其转换为数组并从另一个数组中减去一个数组。
[["GEM_HOME", "/Users/palfvin/.rvm/gems/ruby-2.0.0-p247@avlats"],
["GEM_PATH", "/Users/palfvin/.rvm/gems/ruby-2.0.0-p247@avlats:/Users/palfvin/.rvm/gems/ruby-2.0.0-p247@global"],
["IRBRC", "/Users/palfvin/.rvm/rubies/ruby-2.0.0-p247/.irbrc"],
["LANG", "en_US.UTF-8"],
["MY_RUBY_HOME", "/Users/palfvin/.rvm/rubies/ruby-2.0.0-p247"],
["OLDPWD", "/Users/palfvin/avlats/spec"],
["PWD", "/Users/palfvin/avlats"],
["RUBY_VERSION", "ruby-2.0.0-p247"],
["SHLVL", "1"],
["TERM", "xterm-256color"],
["TERM_PROGRAM", "Apple_Terminal"],
["TERM_PROGRAM_VERSION", "309"],
["TERM_SESSION_ID", "8A3CDBC4-9495-40DC-A482-3297FE0BA614"],
["_", "/Users/palfvin/.rvm/rubies/ruby-2.0.0-p247/bin/ruby"],
["rvm_bin_path", "/Users/palfvin/.rvm/bin"],
["rvm_path", "/Users/palfvin/.rvm"],
["rvm_prefix", "/Users/palfvin"],
["rvm_version", "1.21.3 (stable)"]]
答案 0 :(得分:0)
很可能它在Ruby运行的用户配置和您自己的用户之间存在一些差异。您需要检查2个用户的环境,特别是对于任何以GS_开头的变量,并确保在两种情况下都相同。