我有一个大型且复杂的程序包,它可以在两台计算机上编译,但不能在第三台计算机上编译(文件通过zip和scp移动)。错误消息是
In the dependencies for leksah-0.17.0.0:
process-1.4.2.0 from stack configuration does not match >=1.4.3.0 && <1.7
(latest matching version is 1.6.4.0)
needed since leksah is a build target.
我找不到进程1.4.2.0的来源。它不在lts 9.9的解析器中(解析器提供process-1.4.3.0进程库),也不在leksah的cabal文件中。我还应该看哪里? (我在配置中有完全匹配项)。
global-project中的stack.yaml是
flags: {}
extra-package-dbs: []
packages: []
extra-deps: []
resolver: lts-10.4
config.yaml仅包含(除模板之外)compiler-check: match-exact
。
项目stack.yaml是
resolver: lts-9.9
packages:
- '.'
- 'vendor/leksah-server'
- 'vendor/ltk'
- 'vendor/haskellVCSGUI/vcsgui'
#- 'vendor/yi'
- 'vendor/haskellVCSWrapper/vcswrapper'
# Dependency packages to be pulled from upstream that are not in the resolver
# (e.g., acme-missiles-0.3)
extra-deps:
- binary-shared-0.8.3
- haddock-api-2.17.4
- haskell-gi-overloading-0.0
- gi-gtk-hs-0.3.5.0
- gi-gtksource-3.0.15
- gi-javascriptcore-4.0.14
- gi-soup-2.4.14
- gi-webkit2-4.0.14
- gi-gdk-3.0.14
- gi-gdkpixbuf-2.0.14
- gi-glib-2.0.14
- gi-gobject-2.0.14
- gi-gtk-3.0.17
- gi-cairo-1.0.14
- gi-gio-2.0.14
- gi-pango-1.0.15
- gi-atk-2.0.14
- gi-gtkosxapplication-2.0.14
# Override default flag values for local packages and extra-deps
flags:
gi-atk:
enable-overloading: false
gi-cairo:
enable-overloading: false
gi-gdk:
enable-overloading: false
gi-gdkpixbuf:
enable-overloading: false
gi-gio:
enable-overloading: false
gi-glib:
enable-overloading: false
gi-gobject:
enable-overloading: false
gi-gtk:
enable-overloading: false
gi-gtk-hs:
enable-overloading: false
gi-gtksource:
enable-overloading: false
gi-javascriptcore:
enable-overloading: false
gi-pango:
enable-overloading: false
gi-soup:
enable-overloading: false
gi-webkit2:
enable-overloading: false
gi-gtkosxapplication:
enable-overloading: false
# Extra package databases containing global packages
extra-package-dbs: []
阴谋文件包含(第一个是与项目相关的文件,其他文件在软件包中)-他们都不要求process-1.4.2.0
process >=1.4.3.0 && <1.7,
process >= 1.0.1.1,
process >=1.0.1.5 && <1.7,
process >=1.0.1.5 && <1.7,
process >=1.0.1.5 && <1.7,
process >=1.0.1.5 && <1.7,
process >=1.0.1.5 && <1.7,
process >=1.1 && <1.7,
process >=1.1 && <1.7,
process >=1.1 && <1.7,
process >=1.1 && <1.7,
在额外的部门中添加process-1.4.3.0可以解决要求-但是为什么要这样做?它是lts 9.9! -它确实按预期的方式进行了编译-必须选择与其他计算机上不同的其他软件包。