ocaml / v2.ocaml.org

Implementation of the ocaml.org website.
http://ocaml.org
Other
323 stars 349 forks source link

Cannot build site - Make fails #155

Closed amirmc closed 11 years ago

amirmc commented 11 years ago

I'm not sure if this is an OPAM-related issue or just some quirk on my machine but running make fails.

amir$ make VERBOSE=1
ocaml setup.ml -configure 
Cannot find file topfind.
Unknown directive `require'.
make: *** [setup.data] Error 2
amir$ 

I have all the dependencies as listed in the readme (specifically: oasis, weberizer, Ocamlnet and OCamlRSS).

I'm using the master branch of the ocaml.org repo and am on a Mac 10.8.4

pw374 commented 11 years ago

Did you run the following command before running make?

eval `opam config env`
amirmc commented 11 years ago

Interesting. I ran make in a completely new shell and that's where I got the output above. When I run the eval command and try again I get a different error.

amir$ eval `opam config env`
amir$ make
ocaml setup.ml -configure 
ocamlfind: Package `rss' not found
W: Field 'pkg_rss_version_ge_2_2_0' is not set: Command ''/Users/amir/.opam/4.01.0dev+trunk/bin/ocamlfind' query -format %v rss > '/var/folders/gd/bdnlf1ld21g4ynlctmqgml5h0000gn/T/oasis-7ac3a1.txt'' terminated with error code 2
ocamlfind: Package `weberizer' not found
W: Failure("Command ''/Users/amir/.opam/4.01.0dev+trunk/bin/ocamlfind' query -format %d weberizer > '/var/folders/gd/bdnlf1ld21g4ynlctmqgml5h0000gn/T/oasis-a34435.txt'' terminated with error code 2")
E: Cannot find findlib package rss (>= 2.2.0)
E: Cannot find findlib package weberizer
E: Failure("2 configuration errors")
make: *** [setup.data] Error 1
amir$ 

After some hunting, I've also found my way to https://github.com/OCamlPro/opam-repository/issues/34 which seems relevant.

PS: note that it's looking in a different switch (4.01.0dev+trunk). Something didn't work right so this is partially an opam issue.

pw374 commented 11 years ago

It's because you're not using opam if you haven't run that eval command. Then, you need ocamlrss : opam install ocamlrss (And then, you might need more packages but let's go step by step...)

amirmc commented 11 years ago

I have all the required packages and I should be on the system switch (see below)

amir$ opam list --installed
Installed packages for system:
base-bigarray             base  Bigarray library distributed with the OCaml compiler
base-threads              base  Threads library distributed with the OCaml compiler
base-unix                 base  Unix library distributed with the OCaml compiler
fileutils                0.4.4  Library to provide pure OCaml functions to manipulate real file (POSIX like) and filename.
oasis                    0.3.0  Architecture for building OCaml libraries and applications
ocaml-data-notation     0.0.10  Store data using OCaml notation
ocamlfind                1.3.3  A library manager for OCaml
ocamlify                 0.0.1  Include files in OCaml code
ocamlmod                 0.0.4  Generate OCaml modules from source files
ocamlnet                 3.6.5  Internet protocols (http, cgi, email etc.) and helper data structures (mail messages, charact
ocamlrss                 2.2.1  Library providing functions to parse and print RSS 2.0 files
ounit                    1.1.2  Unit testing framework inspired by the JUnit tool and the HUnit tool
type_conv            109.28.00  Library for building type-driven syntax extensions
weberizer                0.7.5  HTML templating system.
xmlm                     1.1.1  Streaming XML IO for OCaml
AmirMacBook:ocaml.org amir$ 
amir$ opam switch list
system           C system                      System compiler (4.00.1)
4.01.0dev+trunk  I 4.01.0dev+trunk             latest snapshot of the 4.1 branch
--              -- 3.11.2                      Official 3.11.2 release
--              -- 3.12.1                      Official 3.12.1 release
--              -- 4.00.0                      Official 4.00.0 release
--              -- 4.00.1                      Official 4.00.1 release
--              -- 3.12.1+natdynlink-osx       Support for native dynlink on OSX
--              -- 4.00.0+debug-runtime        Debug runtime
--              -- 4.00.0+fp                   Runtime with frame-pointers (improved GDB & perf usage)
--              -- 4.00.1+BER                  BER MetaOCaml (http://okmij.org/ftp/ML/MetaOCaml.html)
--              -- 4.00.1+alloc-profiling      support allocation profiling on x86_64
--              -- 4.00.1+annot                Enable -binannot by default
--              -- 4.00.1+french               French translation of error messages
--              -- 4.00.1+mirage-unix          Mirage compiler for unix
--              -- 4.00.1+mirage-xen           Mirage compiler for xen
--              -- 4.00.1+open-types           add open extensible types to OCaml
--              -- 4.00.1+raspberrypi          Native backend for Raspberry-PI
--              -- 4.00.1+short-types          Better heuristic to display long type names
--              -- 4.01.0dev+extension-points  Latest trunk snapshot with preview of camlp4 replacement.
--              -- 4.01.0dev+fp                latest snapshot of the 4.1 branch, with frame pointers
--              -- 4.02.0dev+fp                latest trunk snapshot with frame-pointers
--              -- 4.02.0dev+trunk             latest trunk snapshot
amir$ 
avsm commented 11 years ago

you still have a stale setup.data file that is pointing to the wrong compiler.

you are on the system compiler here:

system C system System compiler (4.00.1) 4.01.0dev+trunk I 4.01.0dev+trunk latest snapshot of the 4.1 branch and then your actual error points to the 4.01 compiler ocamlfind: Package `rss' not found W: Field 'pkg_rss_version_ge_2_2_0' is not set: Command ''/Users/amir/.opam/4.01.0dev+trunk/bin/ocamlfind' query -format %v rss > '/var/folders/gd/bdnlf1ld21g4ynlctmqgml5h0000gn/T/oasis-7ac3a1.txt'' terminated with error code 2

So if you

$ rm setup.data $ make clean $ make

it should rerun configure and point to the right area.

-a

On 24 Jun 2013, at 15:37, Amir Chaudhry notifications@github.com wrote:

I have all the required packages and I should be on the system switch (see below)

amir$ opam list --installed Installed packages for system: base-bigarray base Bigarray library distributed with the OCaml compiler base-threads base Threads library distributed with the OCaml compiler base-unix base Unix library distributed with the OCaml compiler fileutils 0.4.4 Library to provide pure OCaml functions to manipulate real file (POSIX like) and filename. oasis 0.3.0 Architecture for building OCaml libraries and applications ocaml-data-notation 0.0.10 Store data using OCaml notation ocamlfind 1.3.3 A library manager for OCaml ocamlify 0.0.1 Include files in OCaml code ocamlmod 0.0.4 Generate OCaml modules from source files ocamlnet 3.6.5 Internet protocols (http, cgi, email etc.) and helper data structures (mail messages, charact ocamlrss 2.2.1 Library providing functions to parse and print RSS 2.0 files ounit 1.1.2 Unit testing framework inspired by the JUnit tool and the HUnit tool type_conv 109.28.00 Library for building type-driven syntax extensions weberizer 0.7.5 HTML templating system. xmlm 1.1.1 Streaming XML IO for OCaml AmirMacBook:ocaml.org amir$ amir$ opam switch list system C system System compiler (4.00.1) 4.01.0dev+trunk I 4.01.0dev+trunk latest snapshot of the 4.1 branch -- -- 3.11.2 Official 3.11.2 release -- -- 3.12.1 Official 3.12.1 release -- -- 4.00.0 Official 4.00.0 release -- -- 4.00.1 Official 4.00.1 release -- -- 3.12.1+natdynlink-osx Support for native dynlink on OSX -- -- 4.00.0+debug-runtime Debug runtime -- -- 4.00.0+fp Runtime with frame-pointers (improved GDB & perf usage) -- -- 4.00.1+BER BER MetaOCaml (http://okmij.org/ftp/ML/MetaOCaml.html) -- -- 4.00.1+alloc-profiling support allocation profiling on x86_64 -- -- 4.00.1+annot Enable -binannot by default -- -- 4.00.1+french French translation of error messages -- -- 4.00.1+mirage-unix Mirage compiler for unix -- -- 4.00.1+mirage-xen Mirage compiler for xen -- -- 4.00.1+open-types add open extensible types to OCaml -- -- 4.00.1+raspberrypi Native backend for Raspberry-PI -- -- 4.00.1+short-types Better heuristic to display long type names -- -- 4.01.0dev+extension-points Latest trunk snapshot with preview of camlp4 replacement. -- -- 4.01.0dev+fp latest snapshot of the 4.1 branch, with frame pointers -- -- 4.02.0dev+fp latest trunk snapshot with frame-pointers -- -- 4.02.0dev+trunk latest trunk snapshot amir$ — Reply to this email directly or view it on GitHub.

amirmc commented 11 years ago

fixed. thank you.