2014-05-15 6 views
0

Ma question est semblable à ce poste:OCaml - ne peut pas installer de base

OCaml: Can't run utop after installing it

je tente d'ouvrir la bibliothèque de base, et se retrouver avec le même problème:

$ open Core.Std 
Couldn't get a file descriptor referring to the console 

Je essayé la commande suivante avec la citation correcte:

Mais rien ne se passe et t Le problème persiste malgré l'installation du noyau. J'ai également essayé de suivre les instructions d'installation sur cette page Web (https://github.com/realworldocaml/book/wiki/Installation-Instructions), mais il ne mentionne pas ce problème étrange. J'utilise Ubuntu 24 dans la machine virtuelle par Hyper-V sur Windows 8. Une autre question que je veux poser est de nombreuses pages Web comme (http://kwangyulseo.com/2014/03/04/installing-ocamlopamutopcore-library-on-ubuntu-saucy/) suggérées pour compiler certaines lignes de commande dans "fichier .ocamlinit". Mais je ne sais pas où trouver ce fichier et comment le modifier sous linux. J'ai été un utilisateur de Windows la plupart du temps dans ma vie. Désolé, le niveau de la question est trop bas.

Répondre

2

Oh, mec. open Core.Std n'est pas une commande bash. Vous devez ouvrir OCaml toplevel (c'est-à-dire exécuter utop ou ocaml) et exécuter cette commande là. Probablement, il n'est pas écrit explicitement dans manual. Si vous voyez

#use "topfind";; 
#thread;; 
#camlp4o;; 
#require "core.top";; 
#require "core.syntax";; 

Cela signifie que vous devez entrer (ou ajouter à .ocamlinit) ceci à la main. Je veux dire que vous devriez entrer # aussi. Donc, si vous allez utiliser ocaml, vous verrez deux #. C'est normal.

A propos du fichier d'initialisation OCaml. Comme vous le voyez, ils se réfèrent à ~/.ocamlinit. Le caractère ~ signifie répertoire personnel dans les systèmes POSIX. Vous aurez donc probablement besoin d'un éditeur de texte GUI (gedit ou kwrite, par exemple), créez un nouveau fichier, y mettez du contenu et enregistrez-le dans votre répertoire personnel. N.B. Les systèmes POSIX n'ont pas de concept d'extension de fichier, c'est-à-dire que le point de tête fait partie du nom de fichier.

+0

Merci - Je dois l'essayer. Désolé pour mon niveau bas. –

+0

Pas de problème. Tout le monde était comme toi. J'espère que vous aimerez GNU/Linux et abandonnerez Windows dans un futur. – Kakadu

+0

J'ai essayé d'exécuter ceci dans ocaml. Mais j'ai reçu un message étrange qui dit "Unbound module Core". Et si j'essaie des commandes Core (comme Float.of_int), il est à nouveau dit "Unbound". –