Giter VIP home page Giter VIP logo

ocaml-installer's People

Contributors

msprotz avatar protz avatar ttamttam avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

ocaml-installer's Issues

always erase the OCAMLLIB env variable

the old installer didn't clean it up on exit, and we're not installing in the same location, so that's definitely not a good idea to leave the old value in place

wrong pre-populated list of packages in the installer

the readme in fstar's contrib directory is the most up-to-date; then, the webpage (branch "gh-pages") is mildly up-to-date; the list of packages that the installer passes to cygwin's setup.exe is definitely out of date

Add Merlin to the installer

Merlin is an editor-independent tool to ease the development of programs in OCaml. It aims to provide features available in modern IDEs such as:

  • As you type error reporting
  • Auto completion
  • Extraction of type information
  • Source browsing (jump to definition)

It may be very helpful to have Merlin installed with OCaml so that one can easily use Emacs+Tuareg+Merlin (or any other editor supported by Merlin) while developing on Windows. In particular it would make it easier for my students to set up OCaml for studying functional programming.

Please, add Merlin to ocaml-installer.

ocamlc -where reports incorrect path remotely

Running Windows 8, 64bit, using the ocaml 4.00.1 mingw binary.

I installed from the installer into the default directory (C:\OCaml). Locally ocamlc -where reports the correct path and works fine. But through an SSH session ocaml fails and reports the following,

developer@Noland ~
$ which ocamlc
/cygdrive/c/OCaml/bin/ocamlc

developer@Noland ~
$ ocamlc -where
C:/ocamlmgw/lib

Let me know if you need any further information, I have no idea what to even think about this oddity. Thanks for you hard work!

Cannot install core_kernel due to path issues

I followed the install instructions, when I try to install core_kernel, I run into issues [3]. My best guess is that opam is doing the wrong thing because it thinks it's on a windows system[1], even though I'm running inside of cygwin, and because of that it's exporting PATH with semicolon separators instead of colons [2]. I think this causes ppx-jane to not be in the path when opam tries to compile it.

I tried doing opam config set os cygwin which just broke things. Trying to upgrade to 113.33 didn't help either.

This is on a 64-bit system [4]

[1]
$ ocaml
OCaml version 4.02.3
# Sys.os_type
;;
- : string = "Win32"

[2]
$ opam config env
CAML_LD_LIBRARY_PATH="C:\cygwin64\home\msaffer.opam\system\lib\stublibs;C:\OCaml\lib\stublibs"; export CAML_LD_LIBRARY_PATH;
MANPATH="C:\cygwin64\home\msaffer.opam\system\man;/home/msaffer/.opam/system/man:"; export MANPATH;
PATH="C:\cygwin64\home\msaffer.opam\system\bin;C:\cygwin64\usr\local\bin;C:\cygwin64\bin;C:\OCaml\bin;C:\ruby\bin;C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System32\WindowsPowerShell\v1.0;C:\Windows\System32\WindowsPowerShell\v1.0;C:\Chocolatey\bin;C:\Windows\System32\Windows System Resource Manager\bin;C:\Windows\idmu\common;C:\Program Files (x86)\Windows Kits\8.0\Windows Performance Toolkit"; export PATH;

[3]
$ opam install core_kernel
The following actions will be performed:

  • install core_kernel 113.24.00

=-=- Gathering sources =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=

=-=- Processing actions -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
[core_kernel: ./configure C:\cygwin64\home\msaffer.opam\system] Command started
[core_kernel: make] Command started
[ERROR] The compilation of core_kernel failed at "make".

#=== ERROR while compiling core_kernel.113.24.00 ==============================#

opam-version 1.3.0~dev2 (d4f7e01216dbb44af4e7cc6539a1b0afa9be9d2c)

os win32

command bash -c make

path C:\cygwin64\home\msaffer.opam\system\build\core_kernel.113.24.00

exit-code 2

env-file C:\cygwin64\home\msaffer.opam\system\build\core_kernel.113.24.00\core_kernel-22524-ad8886.env

stdout-file C:\cygwin64\home\msaffer.opam\system\build\core_kernel.113.24.00\core_kernel-22524-ad8886.out

stderr-file C:\cygwin64\home\msaffer.opam\system\build\core_kernel.113.24.00\core_kernel-22524-ad8886.err

stdout

[...]

''mv hash_stubs.o src/hash_stubs.o

''C:/cygwin64/home/msaffer/.opam/system/bin/ocamlfind.EXE ocamlc -g -I include -c src/heap_block_stubs.c

''mv heap_block_stubs.o src/heap_block_stubs.o

''C:/cygwin64/home/msaffer/.opam/system/bin/ocamlfind.EXE ocamlc -g -I include -c src/int_math_stubs.c

''mv int_math_stubs.o src/int_math_stubs.o

''C:/cygwin64/home/msaffer/.opam/system/bin/ocamlfind.EXE ocamlc -g -I include -c src/time_ns_stubs.c

''mv time_ns_stubs.o src/time_ns_stubs.o

''C:/cygwin64/home/msaffer/.opam/system/bin/ocamlfind.EXE ocamlmklib -o src/core_kernel_stubs src/bigstring_marshal_stubs.o src/bigstring_stubs.o src/core_array_stubs.o src/core_gc_stubs.o src/exn_stubs.o src/hash_stubs.o src/heap_block_stubs.o src/int_math_stubs.o src/time_ns_stubs.o

''C:/cygwin64/home/msaffer/.opam/system/bin/ocamlfind.EXE ocamldep -package variantslib -package typerep -package sexplib -package ppx_inline_test.runtime-lib -package ppx_expect.collector -package ppx_bench.runtime-lib -package ppx_assert.runtime-lib -package num -package fieldslib -package bin_prot -pp 'ppx-jane -dump-ast -inline-test-lib core_kernel' -predicates ppx_driver -modules src/app[...]

Exit code 2 while executing this command:

''C:/cygwin64/home/msaffer/.opam/system/bin/ocamlfind.EXE ocamldep -package variantslib -package typerep -package sexplib -package ppx_inline_test.runtime-lib -package ppx_expect.collector -package ppx_bench.runtime-lib -package ppx_assert.runtime-lib -package num -package fieldslib -package bin_prot -pp 'ppx-jane -dump-ast -inline-test-lib core_kernel' -predicates ppx_driver -modules src/a[...]

Makefile:15: recipe for target 'build' failed

stderr

W: Cannot find source file matching module 'core_kernel' in library core_kernel

'ppx-jane' is not recognized as an internal or external command,

operable program or batch file.

File "src/applicative.mli", line 1:

Error: Error while running external preprocessor

Command line: ppx-jane -dump-ast -inline-test-lib core_kernel "src/applicative.mli" > C:\cygwin64\tmp\ocamlpp2efe4f

E: Failure("Command ''C:/OCaml/bin/ocamlbuild.EXE' -classic-display -no-log -no-links -install-lib-dir 'C:/OCaml/lib/ocamlbuild' -byte-plugin src/libcore_kernel_stubs.a src/dllcore_kernel_stubs.dll src/core_kernel.cma src/core_kernel.cmxa src/core_kernel.a src/core_kernel.cmxs -use-ocamlfind -plugin-tags 'package(ppx_driver.ocamlbuild)' -tag debug' terminated with error code 2")

make: *** [build] Error 1

=-=- Error report -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
The following actions failed

  • build core_kernel 113.24.00
    No changes have been performed

[4]
$ opam config report

OPAM config report

opam-version 1.3.0~dev2 (d4f7e01216dbb44af4e7cc6539a1b0afa9be9d2c)

self-upgrade no

os win32

external-solver no

jobs 1

repositories 0 (http), 1 (version-controlled)

pinned 0

current-switch system*

last-update 2016-03-10 20:13

$ opam config list

Global OPAM configuration variables

user user
group group
make make
root C:\cygwin64\home\msaffer.opam
prefix C:\cygwin64\home\msaffer.opam\system
lib C:\cygwin64\home\msaffer.opam\system\lib
bin C:\cygwin64\home\msaffer.opam\system\bin
sbin C:\cygwin64\home\msaffer.opam\system\sbin
doc C:\cygwin64\home\msaffer.opam\system\doc
stublibs C:\cygwin64\home\msaffer.opam\system\lib\stublibs
toplevel C:\cygwin64\home\msaffer.opam\system\lib\toplevel
man C:\cygwin64\home\msaffer.opam\system\man
share C:\cygwin64\home\msaffer.opam\system\share
etc C:\cygwin64\home\msaffer.opam\system\etc

Global variables from the environment

ocaml-version 4.02.3 # The version of the currently used OCaml compiler
opam-version 1.3.0~dev2 # The currently running OPAM version
compiler system # The name of the current OCaml compiler (may be more specific than the version, eg: "4.01.0+fp", or "system")
preinstalled true # Whether the compiler was preinstalled on the system, or installed by OPAM
switch system # The local name (alias) of the current switch
jobs 1 # The number of parallel jobs set up in OPAM configuration
ocaml-native true # Whether the OCaml native compilers are available
ocaml-native-tools true # Whether the native ".opt" version of the OCaml toolchain is available
ocaml-native-dynlink true # Whether native dynlink is available on this installation
arch x86_64 # The current arch, as returned by "uname -m"

Package variables ('opam config list PKG' to show)

PKG:name # Name of the package
PKG:version # Version of the package
PKG:depends # Resolved direct dependencies of the package
PKG:installed # Whether the package is installed
PKG:enable # Takes the value "enable" or "disable" depending on whether the package is installed
PKG:pinned # Whether the package is pinned
PKG:bin # Binary directory for this package
PKG:sbin # System binary directory for this package
PKG:lib # Library directory for this package
PKG:man # Man directory for this package
PKG:doc # Doc directory for this package
PKG:share # Share directory for this package
PKG:etc # Etc directory for this package
PKG:build # Directory where the package was built
PKG:hash # Hash of the package archive

'opam install ocamlfind' does not work: patch did not apply

With the Installer for 64-bit OCaml 4.02.3 + OPAM:

$ opam install ocamlfind
The following actions will be performed:

  • install ocamlfind 1.7.1

=-=- Gathering sources =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=

=-=- Processing actions -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=

#=== ERROR while compiling ocamlfind.1.7.1 ====================================#
These patches didn't apply at C:\cygwin64\home\bblanche.opam\system\build\ocamlfind.1.7.1:

  • findlib-1.7.1.patch

=-=- Error report -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
The following actions failed

  • build ocamlfind 1.7.1
    No changes have been performed

I don't really understand what happens because when I try to patch manually, it works:

$ patch -p 1 < findlib-1.7.1.patch
patching file Makefile
patching file src/findlib/findlib_config.mlp
patching file src/findlib/findlib.ml
patching file src/findlib/fl_package_base.ml
patching file src/findlib/fl_split.ml
patching file src/findlib/frontend.ml
patching file src/findlib/Makefile

Installer should read proxy settings

My install failed with errors connecting to hosts for emacs and other things.
It looks like the proxy settings might not be handled

Since NSISdl is supposed to handle this automatically this should be okay, but the following

ExecWait "$DESKTOP\cygwin-setup.exe --quiet-mode
--local-package-dir=c:\cygtmp\
--site=http://cygwin.cict.fr
--packages=curl,make,mingw64-i686-gcc-g++,mingw64-i686-gcc,patch,rlwrap,libreadline6,diffutils,wget,vim
>NUL 2>&1"

may have some issues since
-proxy is not specfied if one exists

I believe the win Registry key is
Win32::Registry::HKEY_CURRENT_USER.open(
"Software\Microsoft\Windows\CurrentVersion\Internet Settings") do |reg|
proxy_uri = reg.read("ProxyServer")

BTW, thanks a ton for this, I'll try to get started on a pull request to resolve this.

package findlib?

S. Le Gall somehow would like to see findlib included. This sounds reasonable, but the findlib code seems to hardcode the path to OCaml at compile-time. There's probably further work needed to make sure it is integrated smoothly.

wipes out ENV variables

Hi Jonathan:

Thanks for putting together this great executable. FYI, the installer wiped out my ENV variables (latest "stable" mingw installer on Windows 7). I am not comfortable enough with this code to figure out why myself right now ... just thought I should let you know.

Cheers, and thanks again!

Is a sandboxed, portable installation possible?

Suppose I simply wanted the simplest possible OCaml setup on Windows, and I was willing to give up the ability to use all the existing tooling such as findlib, ocamlbuild, etc. Suppose, someone on windows just wants to learn how to use OCaml and execute raw ocamlopt/ocamldep commands. It would be best in this case, if all the compiler binaries, and standard lib existed in a sandboxed directory such as ./myDir/bin/, ./myDir/lib.

Is it possible or easy to generate a precompiled distribution such as I've described - without requiring that path variables be changed in a particular way? I don't necessarily care if the size is huge. How much of the ocaml-installer and the resulting compiler toolchain relies on being in some special directory in the windows special directories (or requires that compiled libraries are installed in some special location)? What can be done to create a fully self-contained, portable directory as I've described? Any help is greatly appreciated.

Loading topfind doesn't work

In the interactive toplevel (ocaml), loading topfind fails:

$ ocaml
        OCaml version 4.02.3

# #use "topfind";;
Cannot find file topfind.

The topfind file does exist:

$ test -f /home/mrm/.opam/system/lib/toplevel/topfind ; echo $?
0

And the environment variable is set correctly:

$ set | grep OCAML_TOPLEVEL_PATH
OCAML_TOPLEVEL_PATH=/home/mrm/.opam/system/lib/toplevel

If you put the file into current directory and name it topfind.ml, then #use "topfind" works.

And no, just renaming topfind into topfind.ml (without copying) doesn't work. It's probably that ocaml doesn't use the environment variable correctly, due to some path-related bug.

Installer hangs after "Target was prepended to PATH"

I am running Windows 10, and already have Cygwin installed, though not with the right packages.
I should have admin rights, but didn't run it in admin mode.

Worked on second attempt, its just really slow at that point in the install script so some patience is needed. Maybe a Cygwin problem?

cygwin installer part requests admin access

The default settings for the cygwin installer depends on administrative privileges. So when it is installed without those privileges the cygwin part won't be installed.

Could you document how to connect it to an exisiting or later installed cygwin and/or make it install without privilege needs (if wanted).

-mno-cygwin also doesn't work with latest mingw gcc

First, thanks for doing this - fantastic work.

The issue is that it is not just the version of gcc that ships with cygwin that no longer accepts the -mno-cygwin flag, the version that ships with mingw installer as of 2011-11-18 no longer does either. The work around is to remain on the previous mingw installer version (released on 2011-08-02) .

ocamlopt linking error

After trying to test native compiler on the simple example I get the following error message:

ocamlopt example_test.ml -o test.exe

** Fatal error: hd
File "caml_startup", line 1:
Error: Error during linking

Cygwin was installed manually (due to really slow default mirror). cygwin\bin is properly set in system PATH variable.
Bytecode compiler works fine.

ActiveTCL URL broken?

Hello,

I'm a student in a Computer Science class, learning OCaml and the professor referenced to your installer for Windows users who wanted to program using the standard Eclipse Luna package (I am using the x32 version).
We were assigned a problem set using the tk library, and my Eclipse can't find it. After a lot of trial and error, uninstalling and reinstalling, I think that the reason is because I had not installed the ActiveTCL package when first installing it in September. But now that I try to install it using your latest installer (I am on Ocaml 4.01.0) and trying to just install ActiveTCL (everything else is already installed), I get this error:

"couldn't download the ActiveTCL installer: HTTP/1.1 404 Not Found"

Would you have an idea of what is the problem?

Thank you very much.

Windows User Name With Spaces

Hello,

unfortunately I first had a windows user name containing Spaces. Therefore often files and directories could not been found.
So I used the mkpasswd and modified it in order to change the Cygwin user. And I also changed the User name of my windows account. Now it seems that the installation worked but at the end of each insatllation or update command there comes a message that the \tmp\opam-old user name with spaces-Number cannot be removed.

From where does the system get the old user? Is there a way to omit the problem?

Please, upgrade to flexlink 0.31

It solves some bugs, and especially:
"- Fix bug with empty .a files"
which is triggered when linking with a fresh cygwin environnement

Thanks

The cygwin.cict.fr cygwin mirror used by the installer is being terribly slow and there's no way to choose a different mirror

Right now, it is taking anywhere from a few seconds to a couple of minutes to get a package download started from cygwin.cict.fr

I tried making requests from several different locations in the US with the same outcome.

For example:

 curl  cygwin.cict.fr >/dev/null
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100  1871    0  1871    0     0     39      0 --:--:--  0:00:47 --:--:--   472

With these delays, cygwin installation is taking more than an hour.

Fatal error: cannot open implicit module "Pervasives"

I've can't fix this error that I'm getting when running a make file, after running the installer for OCaml 4.01.0

make[2]: Entering directory '/cygdrive/c/pfff/external/ocamlgraph'
ocamlc -c -I src -I lib -g -dtypes src/sig.mli
>> Fatal error: cannot open implicit module "Pervasives"
Fatal error: exception Misc.Fatal_error
Makefile:493: recipe for target 'src/sig.cmi' failed

It seems to be an error that other people are having, though the fix suggested by the following StackOverflow page doesn't work for me.
http://stackoverflow.com/questions/15712618/why-cant-pervasives-cmi-be-opened

export OCAMLLIB=C:\\OCaml\\lib

I am running Cygwin (installed with the OCaml installer) on Windows 8.1 as an administrator, and I ran chmod 777 -R /cygdrive/c/OCaml so I don't think it's a permissions issue, and I ran a make depend that worked, so I think the paths should be set up. Here's my path.

$ echo $PATH
/usr/local/bin:/usr/bin:/cygdrive/c/OCaml/bin:/cygdrive/c/Ruby200/bin:/cygdrive/c/WINDOWS/system32:/cygdrive/c/WINDOWS:/cygdrive/c/WINDOWS/System32/Wbem:/cygdrive/c/WINDOWS/System32/WindowsPowerShell/v1.0:/cygdrive/c/Program Files (x86)/Common Files/Intuit/QBPOSSDKRuntime:/cygdrive/c/Program Files/nodejs:/cygdrive/c/ProgramData/Composer/bin:/cygdrive/c/dos2unix/bin:/cygdrive/c/Program Files (x86)/Git/cmd:/cygdrive/c/opscode/chef/bin:/cygdrive/c/opscode/chef/embedded/bin:/cygdrive/c/Program Files (x86)/MySQL/MySQL Utilities 1.3.4:/cygdrive/c/HashiCorp/Vagrant/bin:/cygdrive/c/php:/cygdrive/c/php/pear:/cygdrive/c/Program Files/TortoiseGit/bin:/cygdrive/c/Users/Derek/AppData/Roaming/npm:/cygdrive/c/Program Files/Oracle/VirtualBox

At the end of the day, I am trying to compile and run https://github.com/facebook/pfff.

issue on windows 10

apparently the installer will not self-escalate to admin privileges on windows 10

ocamlmklib and flexlink

Not sure this is an installer issue, or a general ocaml issue. I installed 32-bit ocaml via the installer package and it seems ocamlmklib and flexlink aren't fully compatible:

 > ocamlmklib -g -o stuff -I stuff -L stuff
flexlink: unknown option `-g'.
...

> which ocamlmklib
/cygdrive/c/OCaml/bin/ocamlmklib
> which flexlink
/cygdrive/c/OCaml/bin/flexlink
> ocamlmklib -version
ocamlmklib, version 4.02.3

%systemdrive%\cygtmp leftover after installation

I watched the process in NSIS while installing and it set the temporary directory for cygwin setup to this folder. The installer could clean up (or use a temp directory in %TEMP%) so less permanent changes would be left in the system.

Cygwin setup fails to run - HTTP 404

I have just tried running the installer (as my cygwin has version 3.08 installed, and I'm told I need a newer one).
I select Ocaml and Cygwin, and I get a dialog saying:

Couldn't download Cygwin's setup.exe: HTTP/1.1 404 Not Found.

And indeed next time I run ./configure for the application that needs ocaml it still reports version 3.08.

Any suggestions?

Cygwin setup does nothing

system windows xp sp3 x86

Hi I tried the latest 4.00 installer and the cygwin generated does nothing. I do not know if it conflicts with my previously unistalled cygwin remnants. The included emacs and flexlink are old. Moreover the installer is not intuitive. Sorry for my blah-blah, and Iam not intending to a flame war. I feel that the issues are deeper. In my opinion the installer is the issue and it is not a bug or lack of capability of the maintainer. The capability of the maintainer could be used for example to absorb flexlink in ocaml since it generates an unfortunate cyclic depency or even support straight msys/mingw installation without cygwin.

Previously I was able after some adventures (flexlink and mingw objects issues) to install under msys/mingw-w64 combination the stable edition of ocaml and labltk with hand-compiled tcl/tk. My experience shows that instead of the installer an up-to-date .txt file with complete documentation of the procedure is more appropriate. For example

  1. Install cygwin with packages ......
  2. Download flexlink ....
  3. Cross-compile (if possible) or compile under msys/mingw64 the tclt/tk
  4. Setup ocaml makefile.config
  5. Cross-compile ocaml this way ....
  6. install ocaml packages .... e.g. findlib/omake ...

and either ..

  1. Download emacs ......
  2. Install tuareg this way or use marmalade under 24.1
  3. Configure emacs this way

or

  1. Download precompiled gtk2
  2. Compile lablgtk2
  3. Compile xml-light
  4. Compile ocaml-editor

personally I think this is a better approach with many more benefits because with installers of such complex packages , things can go wrong. In this respect, people

  1. Have more satisfaction that they accomplished something
  2. Have a bigger chance to take corrective measures
  3. You do not have to update the installer while providing the "latest" (if possible) installation experience.
  4. User learns something besides an installation.

findlib.cmxa missing

Hello,

I was surprised not to find findlib.cmxa.

Indeed, it is not included in the installer where I would expect it should be, ie $_OUTDIR\lib\site-lib\findlib.

Salutations

more reliable hosting?

I've been trying to download and run the installers in AppVeyor. From my observation, the download process has a 50-50 chance of failure with the error message:

curl -fsS -o ocaml-installer.exe --retry 3 http://gallium.inria.fr/~protzenk/caml-installer/ocaml-4.02.3-i686-mingw64-installer4-opam.exe
curl: (18) transfer closed with 77220558 bytes remaining to read

Is it possible for the installer to be hosted in a more reliable place?

One solution is to use Bintray, which is free for open source projects. You may create an organization and host the installers there.

Another solution is to use Github's releases, which allow attaching binaries to a tagged release.

ocamlopt writes an error message when the output file contains no dot

For instance, the command:

ocamlopt -o cryptoverif str.cmxa parsing_helper.mli parsing_helper.ml occ_map.mli occ_map.ml types.ml ptree.mli parser.mli parser.ml ...

displays:

** Error: Sys_error("cryptoverif: No such file or directory")
File "caml_startup", line 1:
Error: Error during linking

It still generates an executable cryptoverif.exe, which works fine. (So this is not a very serious bug.)
The error message disappears when the command is changed into:

ocamlopt -o cryptoverif.exe str.cmxa parsing_helper.mli parsing_helper.ml occ_map.mli occ_map.ml types.ml ptree.mli parser.mli parser.ml ...

The error happens both with the Installer for 64-bit OCaml 4.02.3 + OPAM and the 32-bit OCaml 4.02.3 + Cygwin32 OPAM.

The installer overwrote my PATH!

Instead of simply appending to the PATH, this ocaml installer decided that it would be a good idea to completely overwrite it, setting it to the value C:\Users\[me]\AppData\Roaming\OCaml\bin. This broke everything; luckily for me I had a registry backup from a while ago which I searched through and found an old PATH setting, but this kind of behavior is extremely unexpected for an installer.

`ocamlc -where` appends `^M` to the end of the output

$ ocamlc -where > foo; cat -v foo
D:/OCaml/lib^M

This also happens with the precompiled gtk+, and I haven't figured out why yet, so it might not be an issue with the installer, but with my installation. But then again, it might be a problem with the installer, so I figured I'd submit a report here.

ocaml in cmd not working

Here is what I get immediately after starting ocaml in cmd :

C:\Users\user>ocaml
        OCaml version 4.00.0+beta2

# Characters -1--1:
  Error: I/O error: Not enough space
# Characters -1--1:
  Error: I/O error: Not enough space
# Characters -1--1:
  Error: I/O error: Not enough space
# Characters -1--1:
  Error: I/O error: Not enough space
# Characters -1--1:
  Error: I/O error: Not enough space
# Characters -1--1:

and it continues indefinitely unitl I hit Ctrl-C :

Characters -1--1:
Fatal error: exception Sys.Break

ocaml in cygwin shell works fine.
OS: Windows 7 (version 6.1.7600)

Error with camlp4r

ocamlc -pp camlp4r yields :

jonathan@farquaad:/tmp $ ocamlc -pp camlp4r test.ml
>> Fatal error: OCaml and preprocessor have incompatible versions
Fatal error: exception Misc.Fatal_error

This doesn't happen on Linux. Strange.

popup in installer

Hi, I am trying to install this on Appveyor, a remote continuous integration builder, using cinst to get the Chocolatey package. Unfortunately, the install hangs because it opens a dialog box and there is no one there to push the buttons.

I require an installation which is entirely command line driven so need switches which can be used to force a background build. On Appveyor, MinGW and MSYS are installed. Cygwin is available too but I do not want to use it (the executable produced by Ocaml must know it is on Windows and use windows native functionality such as \ in filenames).

Are there any switches that can get rid of the dialog box?

odb not working

Consider:

$ curl -O https://raw.github.com/thelema/odb/master/odb.ml
$ ocaml odb.ml extunix
Installing extunix
Installing oUnit
Deps for oUnit satisfied

  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100 52677  100 52677    0     0  31432      0  0:00:01  0:00:01 --:--:--  103k
package downloaded to C:\cygwin\home\user\.odb\install-oUnit\ounit-1.1.1
I: Running command 'C:\Program Files\OCaml\bin\ocamlc.opt.EXE -config > "C:\cygwin\tmp\oasis-041201.txt"'
"C:\Program" ▒▒ ▒▒▒▒ ▒▒▒▒७▒▒▒ ▒▒▒ ▒▒▒譥▒
▒▒▒▒▒▒▒▒, ▒ᯮ▒▒塞▒▒ ▒ணࠬ▒▒▒ ▒▒▒ ▒▒▒▒▒▒ 䠩▒▒▒.
I: Running command 'C:\Program Files\OCaml\bin\ocamlfind.EXE query -format %v findlib > "C:\cygwin\tmp\oasis-22df40.txt"'
"C:\Program" ▒▒ ▒▒▒▒ ▒▒▒▒७▒▒▒ ▒▒▒ ▒▒▒譥▒
▒▒▒▒▒▒▒▒, ▒ᯮ▒▒塞▒▒ ▒ணࠬ▒▒▒ ▒▒▒ ▒▒▒▒▒▒ 䠩▒▒▒.
I: Running command 'C:\Program Files\OCaml\bin\ocamlfind.EXE query -format %d unix > "C:\cygwin\tmp\oasis-ad47ac.txt"'
"C:\Program" ▒▒ ▒▒▒▒ ▒▒▒▒७▒▒▒ ▒▒▒ ▒▒▒譥▒
▒▒▒▒▒▒▒▒, ▒ᯮ▒▒塞▒▒ ▒ணࠬ▒▒▒ ▒▒▒ ▒▒▒▒▒▒ 䠩▒▒▒.
W: Field 'pkg_unix' is not set: Command 'C:\Program Files\OCaml\bin\ocamlfind.EXE query -format %d unix > "C:\cygwin\tmp\oasis-ad47ac.txt"' terminated with error code 1
E: Cannot find findlib package unix
E: Failure("1 configuration error")
Exception: Failure "Could not configure oUnit".

Not sure whose bug is this (oasis?), but something inside me tells that installing ocaml into path with spaces (Program Files) by default is not the best idea.. Many existing (unix-land) tools are not ready for such an adventure. After installing into C:\ocaml-4.00-beta2 everything worked fine (modulo oUnit not ready for ocaml 4.00).
So my suggestion is to default installation path to something without spaces (fixing all the software and libraries out there is a loosing fight - I abandoned hope many years ago).

opam install depext fails; poss due to tar given a Windows path

  1. Start on a clean Windows 10 machine.
  2. Run the installer as per instructions: I get OCaml in C:\OCaml; I put cygwin64 in C:\cygwin64.
  3. Run 'opam init', OK.
  4. Run 'opam install depext'. The command fails while trying to bunzip2 cmdliner. An 'opam install depext --debug' output attached.

opam-install-depext

Notice that the tar command that unpacks the cmdliner package has a Windows style path. If I type this command (tar xfj c:\cygwin64... ) in a Cygwin shell, it doesn't work (fails with a very similar message of buzip2 complaining that Compressed file ends unexpectedly).

/usr/bin/tar version 1.28; /usr/bin/bunzip2 version 1.0.6.

This is not a reproducible bug. On my Windows 10 laptop, this all runs fine (tar is given a Unix-type path of /home/sishtiaq/.opam/packages.dev/cmdliner.0.9.8/cmdliner-0.9.8.tbz).
I would think this is unlikely to be a bug in the ocaml-installer, more likely in opam or Cygwin. But recording here because of the combination of circumstances to get to this bug,
Possibly related to Issue #40.

opam-install-depext.txt

Impossible to find ocaml.exe. I quit.

This is the error message I'm getting when starting ocaml, and it closes right away. I freshly installed it on a computer running windows 7, with the windows installer I got from there :
http://protz.github.com/ocaml-installer/ (version 3.12.1)
Any idea of what I should do? I tried installing it/uninstalling it, and I installed MinGW/MSYS before. I also added emacs and the other plugin offered in the installer.
If you need any more details, I'll answer as I can.

Thanks,

nitnelave

Wrong output of "camlp4 -where"

OCaml binaries are installed in c:\OCaml, and ocamlc -where returns this path, yet camlp4 -where returns C:/ocamlmgw/lib\camlp4.

This seems to break compilation of Camlp4-related packages, e.g. type_conv.

opam config env registry issues

I see 3 or 4 complaints in Twitter about opam config env running for each starts of Command prompt. Some annoyed the registry for the auto-execution of opam command is never removed even after OCaml is uninstalled. These ppl never report their problems, and never return to OCaml again :-(

I am sorry but I cannot give any more details since I do not use this installer.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.