Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

opam on windows passes Windows-style filepath to tar #2502

Closed
sishtiaq opened this issue Apr 4, 2016 · 4 comments
Closed

opam on windows passes Windows-style filepath to tar #2502

sishtiaq opened this issue Apr 4, 2016 · 4 comments

Comments

@sishtiaq
Copy link

sishtiaq commented Apr 4, 2016

Original at protz/ocaml-installer#45 but referencing it here too.

I've used the ocaml-installer to install OCaml+Cygwin+opam on my Windows 10 machine. When I do "opam install cmdliner", tar is given a Windows-style filepath

tar xfj C:\cygwin64\home\sishtiaq\.opam\packages.dev\cmdliner.0.9.8\cmdliner-0.9.8.tbz -C C:\cygwin64\tmp\opam-9996-4bcc67

to unpack the package, and falls over.

Even I can't repro it. The exact same setup works fine on my laptop, where tar is invoked as "tar xfj /home/sishtiaq/...".

Any hints on what to look for, how I get more info out of it, who's likely to be passing the wrong path to tar, etc appreciated.

@sishtiaq
Copy link
Author

sishtiaq commented Apr 5, 2016

$ opam config report
# OPAM config report
# opam-version    1.3.0~dev2 (d4f7e01216dbb44af4e7cc6539a1b0afa9be9d2c)
# self-upgrade    no
# os              win32
# external-solver no
# jobs            7
# repositories    0 (http), 1 (version-controlled)
# pinned          0
# current-switch  system*
# last-update     2016-04-05 08:44

@clouds56
Copy link

clouds56 commented Oct 3, 2017

the same opam version, I could still repro this.

#=== ERROR while compiling cppo.0.9.3 =========================================#
# opam-version 1.3.0~dev2 (d4f7e01216dbb44af4e7cc6539a1b0afa9be9d2c)
# os           win32
# command      tar xfz C:\Users\Clouds\.opam\packages.dev\cppo.0.9.3\v0.9.3.tar.gz -C C:\Users\Clouds\AppData\Local\Temp\opam-41140-4bcc67
# path         D:\Programs\cmder\bin
# exit-code    2
# env-file     C:\Users\Clouds\.opam\log\log-41140-ccabea.env
# stdout-file  C:\Users\Clouds\.opam\log\log-41140-ccabea.out
# stderr-file  C:\Users\Clouds\.opam\log\log-41140-ccabea.err
### stderr ###
# tar (child): Cannot connect to C: resolve failed
#
# gzip: stdin: unexpected end of file
# tar: Child returned status 128
# tar: Error is not recoverable: exiting now
tar (GNU tar) 1.29
Copyright (C) 2015 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>.
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.

Written by John Gilmore and Jay Fenlason.

I think on windows, tar should take cygpath -u "$filename" as parameters

@dra27
Copy link
Member

dra27 commented Oct 3, 2017

It does, or rather it will: dra27@ee1e59b

@clouds56
Copy link

clouds56 commented Oct 4, 2017

Thanks! I'm now making a shim to tar as a workaround.
It's great if this could be merged.

@dra27 dra27 closed this as completed Oct 2, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants