Compile tezos in 32bit architecture


#1

I tried to compile tezos in 32 bit architecture.

git clone https://github.com/tezos/tezos
cd tezos
sudo opam udpate
opam init
opam switch “tezos” --alias-of 4.04.2
eval opam config env
make build-deps
make

By following these instructions, It finally created the required executables:
tezos-node
tezos-client
tezos-protocol-compiler

then I tried to run tezos-node

./tezos-node identity generate 24.
Generating a new identity… (level: 24.00)
Stored the new identity (idtvHDzXKLPhod1bYB5VDm1JMuJ3um) into ‘/home/d/.tezos-node/identity.json’.
./tezos-node run --data-dir “$dir” --net-addr localhost:9733
tezos-node: internal error, uncaught exception:
Unix.Unix_error(Unix.ENOENT, “mkdir”, “”)
Raised at file “src/core/lwt.ml”, line 2719, characters 18-25
Called from file “src/unix/lwt_main.ml”, line 33, characters 8-18
Called from file “node/main/node_run_command.ml”, line 230, characters 8-24
Called from file “src/cmdliner_term.ml”, line 27, characters 19-24
Called from file “src/cmdliner.ml”, line 27, characters 27-34
Called from file “src/cmdliner.ml”, line 106, characters 32-39

whats going on now?
what is this "internal error, uncaught exception|
Any help or hint?

Ok…let me run the command again…

./tezos-node run --data-dir “/home/d/.tezos-node/” --net-addr localhost:9733
Oct 9 22:58:35 - node.main: Starting the Tezos node…
Oct 9 22:58:35 - node.main: Peer’s global id: idtvHDzXKLPhod1bYB5VDm1JMuJ3um
Oct 9 22:58:35 - node.worker: bootstraping network…
Oct 9 22:58:35 - p2p.maintenance: Too few connections (0)
Oct 9 22:58:36 - node.validator: activate network NetXTihPyL8V993
Oct 9 22:58:36 - node.main: Not listening to RPC calls.
Oct 9 22:58:36 - node.main: The Tezos node is now running!
Oct 9 22:58:46 - p2p.maintenance: Too few connections (0)
Oct 9 22:58:56 - p2p.maintenance: Too few connections (0)
Oct 9 22:59:06 - p2p.maintenance: Too few connections (0)

ok I did it! TEZOS RUNS IN 32 bit architecture! :grinning::heart_eyes::grin::sunglasses:
I think I am ready now to join the alphanet!


#2

but how can I join the alphanet?
alphanet.sh works only with docker.
Can someone help me on this?

./tezos-node run --rpc-addr localhost
Oct 9 23:26:17 - node.main: Starting the Tezos node…
Oct 9 23:26:17 - node.main: Peer’s global id: idtvHDzXKLPhod1bYB5VDm1JMuJ3um
Oct 9 23:26:17 - node.worker: bootstraping network…
Oct 9 23:26:17 - p2p.maintenance: Too few connections (0)
Oct 9 23:26:18 - node.validator: activate network NetXTihPyL8V993
Oct 9 23:26:18 - node.main: Starting the RPC server listening on port 8732.
Oct 9 23:26:18 - node.main: The Tezos node is now running!
Oct 9 23:26:28 - p2p.maintenance: Too few connections (0)
Oct 9 23:26:38 - p2p.maintenance: Too few connections (0)
Oct 9 23:26:28 - p2p.maintenance: Too few connections (0)
Oct 9 23:26:38 - p2p.maintenance: Too few connections (0)
Oct 9 23:26:48 - p2p.maintenance: Too few connections (0)
Oct 9 23:26:58 - p2p.maintenance: Too few connections (0)
Oct 9 23:27:08 - p2p.maintenance: Too few connections (0)
Oct 9 23:27:19 - p2p.maintenance: Too few connections (0)
Oct 9 23:27:30 - p2p.maintenance: Too few connections (0)
Oct 9 23:27:40 - p2p.maintenance: Too few connections (0)
Oct 9 23:27:50 - p2p.maintenance: Too few connections (0)
Oct 9 23:28:00 - p2p.maintenance: Too few connections (0)


#3

Hi there,

you did everything correctly but you missed to checkout git to alphanet branch.

so you start with:

git clone https://github.com/tezos/tezos

then

git checkout alphanet

This should put you on alphanet and the blockchain will start syncing.


#4

@Carbon, are you a tezos developer?
In that case, I have some questions:

Is it somehow possible to join the alphanet using the stable branch (means without compiling the alphanet branch)?

How do you recognize that a node belongs to your alphanet? Is it the IP address? Is there some configuration file? And how do you accept a node? What kind of authentication do you use?


#5

are you a tezos developer?
No, I’m not a tezos developer, I’m a noob who just found about bitcoin and blockchain.

Is it somehow possible to join the alphanet using the stable branch (means without compiling the alphanet branch)?

No, that’s not possible because both branches are different and basically a completely different networks and they can’t see each other, if you go to tezos/src/main/node_run_command.ml file you will find that the main branch genesis block hash is different for main and alpha.

Main Branch block hash: Block_hash.of_b58check_exn
Block_hash.of_b58check_exn
"BLockGenesisGenesisGenesisGenesisGenesisCCCCCeZiLHU" ;
Alphanet block hash:
Block_hash.of_b58check_exn
"BLockGenesisGenesisGenesisGenesisGenesisBBBBBbwcZMg" ;


#6

And what if I edit node_run.command.ml and relplace the block_hash and the protocol_hash of the main branch with the block_hash and the protocol_hash of the alphanet block, then compile this code?
Will it compile?
If yes, will I be able to join the alphanet, while using the code of main branch?

Have you ever tried this?


#7

Actually there is more changes to alphanet branch that I don’t want to get into details right now, one example is the data dir where it stores your private key is different. I don’t recommend that you edit the files, much better to switch branches and go along with it.


#8

We have to test whether tezos network can survive in case someone runs a hacked node.
So you should get into details, we should find the data-dir of the privatekey, and do the appropriate changes into the code, in order to fool the nodes of the alphanet and make them believe that the hacked node belongs to the alphanet. You should attack the alphanet that way, and discover how robust it is in this attack.

In dash they have similar problems. Someone runs nodes of a different version, either by mistake or maybe on purpose in order to confuse them.

So, here in Tezos, you have better solve this problem now, than solve it later when the real network is launched.


#9

If you look the files of Tezos in GitHub you will find a file called “Attacker”, it is away to attack the network and see if it can survive ( I didn’t test it, and I have no idea how it works). Second, if you want to run a node you need to lock a bond so that your node can mine(bake) Tezos, if your node behave in a bad way the network will confiscate and take the bond from you, so good luck trying this. As far as I know a bond of 1000 tz can give your node the ability to have 10X mining power, so people or you yourself can delegate 10,000 tz for mining without fearing loss.

so node with account(A) can lock 1000 tz.
account(B) or cold wallet can delegate mining power to account(A) while staying away from any risks.


#10

I tried to compile alphanet and the following error occurred :

d@d:~/src4/tezos$ make
make -C src all
make[1]: Entering directory ‘/home/d/src4/tezos/src’
Makefile:274: .depend: No such file or directory
ocamlfind: Package lwt' not found OCAMLDEP (minutils.cmxa) utils.mli ocamlfind: Packagecstruct’ not found
Makefile:303: recipe for target ‘minutils/utils.mli.deps’ failed
make[1]: *** [minutils/utils.mli.deps] Error 2
make[1]: Leaving directory '/home/d/src4/tezos/src’
Makefile:3: recipe for target ‘all’ failed
make: *** [all] Error 2

any ideas?


#11

Hmm… try this

make build-deps
make clear
make


#12

make clear
make: *** No rule to make target ‘clear’. Stop.

then i tried

make clean
make

make
make -C src all
make[1]: Entering directory ‘/home/d/src4/tezos/src’
Makefile:274: .depend: No such file or directory
ocamlfind: Package lwt' not found LINK environment_gen GENERATING proto_environment.mli OCAMLDEP (minutils.cmxa) mBytes.mli ocamlfind: Packagecstruct’ not found
Makefile:303: recipe for target ‘minutils/mBytes.mli.deps’ failed
make[1]: *** [minutils/mBytes.mli.deps] Error 2
rm compiler/environment_gen
make[1]: Leaving directory '/home/d/src4/tezos/src’
Makefile:3: recipe for target ‘all’ failed
make: *** [all] Error 2

I did once again everything but the same error occurs.

make
make -C src all
make[1]: Entering directory ‘/home/d/src4/tezos/src’
Makefile:274: .depend: No such file or directory
ocamlfind: Package lwt’ not found OCAMLDEP (minutils.cmxa) utils.mli ocamlfind: Packagecstruct’ not found
Makefile:303: recipe for target ‘minutils/utils.mli.deps’ failed
make[1]: *** [minutils/utils.mli.deps] Error 2
make[1]: Leaving directory '/home/d/src4/tezos/src’
Makefile:3: recipe for target ‘all’ failed
make: *** [all] Error 2

any ideas?


#13

Ocaml needs a package called lwt, use Ocaml package manager to install it by:

opam install lwt

But you shouldn’t be installing packages manually because it’s already being added to build-deps. You are doing something wrong… don’t go in src file when doing make build-deps, do it from tezos directory.


#14

Try this.

git clone https://github.com/tezos/tezos
cd tezos
git checkout alphanet
opam init
opam update
opam upgrade
opam switch “tezos” --alias-of 4.04.2
eval opam config env
make build-deps
make


#15

I have already done all the above.
But I will try it once again in a fresh install and I will report here.


#16

After reading this I figure out that the commmand:

opam switch remove “tezos”

…may also needed in my case.

I ll try it and report here.


#17

what I did:
cd
sudo rm -rf .opam

then:
git clone https://github.com/tezos/tezos
cd tezos
git checkout alphanet
opam init
opam update
opam upgrade
opam switch “tezos” --alias-of 4.04.2
eval opam config env
make build-deps
make

my new error message is this:

make
make -C src all
make[1]: Entering directory ‘/home/d/src5/tezos/src’
Makefile:275: .depend: No such file or directory
LINK tezos_protocol_environment_sigs_packer
GENERATING tezos_protocol_environment_sigs_v1.ml
OCAMLDEP (packer.cmxa) tezos_protocol_packer.mli
OCAMLDEP (packer.cmxa) tezos_protocol_packer.ml
OCAMLDEP (packer.cmxa) packer_main.ml
OCAMLDEP (minutils.cmxa) mBytes.mli
ocamlfind: Package `cstruct’ not found
Makefile:305: recipe for target ‘minutils/mBytes.mli.deps’ failed
make[1]: *** [minutils/mBytes.mli.deps] Error 2
rm environment/tezos_protocol_environment_sigs_packer
make[1]: Leaving directory '/home/d/src5/tezos/src’
Makefile:3: recipe for target ‘all’ failed
make: *** [all] Error 2

it seems now that a package named cstruct is missing
ocamlfind: Package `cstruct’ not found


#18

here you are the whole log file

d@d:~/src5/tezos$ opam init
Checking for available remotes: rsync and local, git, mercurial, darcs. Perfect!

=-=- Fetching repository information =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
Processing: [default: http]
[default] synchronized from https://opam.ocaml.org

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

=-=- Processing actions -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
∗  installed base-bigarray.base
∗  installed base-threads.base
∗  installed base-unix.base
Done.

In normal operation, OPAM only alters files within ~/.opam.

During this initialisation, you can allow OPAM to add information to two
other files for best results. You can also make these additions manually
if you wish.

If you agree, OPAM will modify:

  - ~/.profile (or a file you specify) to set the right environment
    variables and to load the auto-completion scripts for your shell (bash)
    on startup. Specifically, it checks for and appends the following line:

    . /home/d/.opam/opam-init/init.sh > /dev/null 2> /dev/null || true


  - ~/.ocamlinit to ensure that non-system installations of `ocamlfind`
    (i.e. those installed by OPAM) will work correctly when running the
    OCaml toplevel. It does this by adding $OCAML_TOPLEVEL_PATH to the list
    of include directories.

If you choose to not configure your system now, you can either configure
OPAM manually (instructions will be displayed) or launch the automatic setup
later by running:

   opam config setup -a


Do you want OPAM to modify ~/.profile and ~/.ocamlinit?
(default is 'no', use 'f' to name a file other than ~/.profile)
    [N/y/f] 
Global configuration:
  Updating ~/.opam/opam-init/init.sh
  Updating ~/.opam/opam-init/init.zsh
  Updating ~/.opam/opam-init/init.csh
  Updating ~/.opam/opam-init/init.fish

=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=

1. To configure OPAM in the current shell session, you need to run:

      eval `opam config env`

2. To correctly configure OPAM for subsequent use, add the following
   line to your profile file (for instance ~/.profile):

      . /home/d/.opam/opam-init/init.sh > /dev/null 2> /dev/null || true

3. To avoid issues related to non-system installations of `ocamlfind`
   add the following lines to ~/.ocamlinit (create it if necessary):

      let () =
        try Topdirs.dir_directory (Sys.getenv "OCAML_TOPLEVEL_PATH")
        with Not_found -> ()
      ;;

=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=

d@d:~/src5/tezos$ opam update

=-=- Updating package repositories =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
[default] synchronized from https://opam.ocaml.org

d@d:~/src5/tezos$ 
d@d:~/src5/tezos$ opam upgrade

Already up-to-date.
d@d:~/src5/tezos$ 
d@d:~/src5/tezos$ opam switch “tezos” --alias-of 4.04.2

=-=- Installing compiler 4.04.2 -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
[default.comp] https://github.com/ocaml/ocaml/archive/4.04.2.tar.gz downloaded
Now compiling OCaml. This may take a while, please bear with us...
Processing: [4.04.2: ./configure]
Processing: [4.04.2: make world]

Processing: [4.04.2: make world.opt]

Done.


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

=-=- Processing actions -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
∗  installed base-bigarray.base
∗  installed base-threads.base
∗  installed base-unix.base
Done.
# To setup the new switch in the current shell, you need to run:
eval `opam config env`
d@d:~/src5/tezos$ 
d@d:~/src5/tezos$ eval opam config env
CAML_LD_LIBRARY_PATH="/home/d/.opam/\226\128\156tezos\226\128\157/lib/stublibs"; export CAML_LD_LIBRARY_PATH;
MANPATH=":/home/d/.opam/\226\128\156tezos\226\128\157/man"; export MANPATH;
PERL5LIB="/home/d/.opam/\226\128\156tezos\226\128\157/lib/perl5:"; export PERL5LIB;
OCAML_TOPLEVEL_PATH="/home/d/.opam/\226\128\156tezos\226\128\157/lib/toplevel"; export OCAML_TOPLEVEL_PATH;
PATH="/home/d/.opam/\226\128\156tezos\226\128\157/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin"; export PATH;
d@d:~/src5/tezos$ make build-deps
+ true
+ opam pin --yes add --no-action --dev-repo sodium
sodium is now git-pinned to https://github.com/dsheets/ocaml-sodium.git

Processing: [sodium: git]
[sodium] https://github.com/dsheets/ocaml-sodium.git updated
[sodium] Installing new package description from
https://github.com/dsheets/ocaml-sodium.git

+ opam pin --yes add --no-action --dev-repo ocp-ocamlres
ocp-ocamlres is now git-pinned to git://github.com/OCamlPro/ocp-ocamlres

[ocp-ocamlres] git://github.com/OCamlPro/ocp-ocamlres updated
[ocp-ocamlres] Installing new package description from
git://github.com/OCamlPro/ocp-ocamlres

+ opam pin --yes add --no-action --dev-repo ocplib-json-typed
ocplib-json-typed is now git-pinned to https://github.com/ocamlpro/ocplib-json-typed.git

[ocplib-json-typed] https://github.com/ocamlpro/ocplib-json-typed.git updated

+ opam pin --yes add --no-action --dev-repo ocplib-resto
ocplib-resto is now git-pinned to https://github.com/OCamlPro/ocplib-resto.git

[ocplib-resto] https://github.com/OCamlPro/ocplib-resto.git updated
[ocplib-resto] Installing new package description from
https://github.com/OCamlPro/ocplib-resto.git

+ opam pin --yes remove tezos-deps
[NOTE] tezos-deps is not pinned.
+ opam pin --yes add --no-action tezos-deps /home/d/src5/tezos/src
Package tezos-deps does not exist, create as a NEW package ? [Y/n] y
tezos-deps is now path-pinned to /home/d/src5/tezos/src

[WARNING] Rsync partially failed:
          symlink has no referent:
          "/home/d/src5/tezos/src/compiler/sigs/protocol_sigs.mli"
          rsync error: some files/attrs were not transferred (see previous
          errors) (code
          23) at main.c(1196) [sender=3.1.2]

[tezos-deps] /home/d/src5/tezos/src/ synchronized
[tezos-deps] Installing new package description from /home/d/src5/tezos/src

+ true
+ opam list --installed depext
No packages found.
+ opam install depext

The following actions will be performed:
  ∗  install depext 1.0.5

=-=- Gathering sources =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
[default] https://opam.ocaml.org/archives/depext.1.0.5+opam.tar.gz downloaded

=-=- Processing actions -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
∗  installed depext.1.0.5
Done.
+ opam depext tezos-deps
# Detecting depexts using flags: x86 linux ubuntu
# The following system packages are needed:
#  - debianutils
#  - libev-dev
#  - libgmp-dev
#  - libleveldb-dev
#  - libsnappy-dev
#  - libsodium-dev
#  - libssl-dev
#  - m4
#  - ncurses-dev
#  - perl
#  - pkg-config
#  - time
#  - zlib1g-dev
# All required OS packages found.
+ true
+ opam install tezos-deps

=-=- Synchronising pinned packages =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
[WARNING] Rsync partially failed:
          symlink has no referent:
          "/home/d/src5/tezos/src/compiler/sigs/protocol_sigs.mli"
          rsync error: some files/attrs were not transferred (see previous
          errors) (code
          23) at main.c(1196) [sender=3.1.2]

[tezos-deps] /home/d/src5/tezos/src/ synchronized

The following actions will be performed:
  ∗  install base-num                base          [required by num]
  ∗  install conf-gmp                1             [required by zarith]
  ∗  install result                  1.2           [required by irmin, conduit, ocplib-resto]
  ∗  install mirage-no-solo5         1             [required by nocrypto]
  ∗  install conf-leveldb            1             [required by leveldb]
  ∗  install conf-perl               1             [required by zarith]
  ∗  install conf-m4                 1             [required by ocamlfind]
  ∗  install conf-pkg-config         1.0           [required by ctypes]
  ∗  install ocamlbuild              0.11.0        [required by menhir, bisect_ppx, kaputt, sodium]
  ∗  install conf-libev              4-11          [required by tezos-deps]
  ∗  install conf-which              1             [required by ssl]
  ∗  install mirage-no-xen           1             [required by nocrypto]
  ∗  install num                     0             [required by kaputt]
  ∗  install ocamlfind               1.7.3         [required by tezos-deps]
  ∗  install conf-openssl            1             [required by ssl]
  ∗  install uchar                   0.0.2         [required by fmt, jsonm]
  ∗  install zarith                  1.7           [required by nocrypto]
  ∗  install topkg                   0.9.1         [required by nocrypto, decompress, logs, etc.]
  ∗  install ppx_tools               5.0           [required by ppx_deriving]
  ∗  install pprint                  20171003      [required by ocp-ocamlres]
  ∗  install omake                   0.10.2        [required by leveldb]
  ∗  install ocp-build               1.99.19-beta  [required by ocplib-resto]
  ∗  install ocamlgraph              1.8.8         [required by git, irmin]
  ∗  install menhir                  20171013      [required by tezos-deps]
  ∗  install kaputt                  1.2           [required by tezos-deps]
  ∗  install jbuilder                1.0+beta14    [required by irmin-unix, git-unix, ezjsonm, etc.]
  ∗  install calendar                2.03.2        [required by tezos-deps]
  ∗  install base-bytes              base          [required by cohttp, sodium]
  ∗  install react                   1.2.1         [required by reactiveData]
  ∗  install mtime                   1.1.0         [required by tezos-deps]
  ∗  install integers                0.2.2         [required by ctypes]
  ∗  install cmdliner                1.0.2         [required by git-unix]
  ∗  install astring                 0.8.3         [required by git, conduit, irmin]
  ∗  install ocp-ocamlres            dev*          [required by tezos-deps]
  ∗  install leveldb                 1.1.2         [required by tezos-deps]
  ∗  install sexplib                 v0.9.2        [required by conduit, cohttp, ezjsonm]
  ∗  install ppx_traverse_builtins   v0.9.0        [required by ppx_metaquot]
  ∗  install ppx_derivers            1.0           [required by ppx_deriving]
  ∗  install ocaml-migrate-parsetree 1.0.6         [required by bisect_ppx]
  ∗  install ocaml-compiler-libs     v0.9.0        [required by ppx_core]
  ∗  install magic-mime              1.1.0         [required by tezos-deps]
  ∗  install dispatch                0.4.0         [required by webmachine]
  ∗  install stringext               1.5.0         [required by cohttp]
  ∗  install ssl                     0.5.5         [required by lwt_ssl]
  ∗  install re                      1.7.1         [required by cohttp]
  ∗  install cppo                    1.6.0         [required by lwt]
  ∗  install base64                  2.2.0         [required by cohttp]
  ∗  install reactiveData            0.2.1         [required by tezos-deps]
  ∗  install ctypes                  0.13.0        [required by sodium]
  ∗  install uutf                    1.0.1         [required by jsonm]
  ∗  install fmt                     0.8.4         [required by git, cohttp, irmin]
  ∗  install decompress              0.7           [required by git]
  ∗  install crunch                  2.1.0         [required by irmin-http]
  ∗  install ocb-stubblr             0.1.1         [required by nocrypto]
  ∗  install base                    v0.9.3        [required by fieldslib]
  ∗  install ppx_tools_versioned     5.0.1         [required by bisect_ppx]
  ∗  install ppx_ast                 v0.9.1        [required by ppx_core]
  ∗  install ocplib-endian           1.0           [required by tezos-deps]
  ∗  install cppo_ocamlbuild         1.6.0         [required by ppx_deriving]
  ∗  install sodium                  dev*          [required by tezos-deps]
  ∗  install jsonm                   1.0.1         [required by ezjsonm, cohttp, irmin]
  ∗  install cpuid                   0.1.1         [required by nocrypto]
  ∗  install stdio                   v0.9.0        [required by ppx_core]
  ∗  install lwt                     3.1.0         [required by tezos-deps]
       For module Lwt_react, please install package lwt_react
  ∗  install bisect_ppx              1.3.1         [required by tezos-deps]
       For the Ocamlbuild plugin, please install package bisect_ppx-ocamlbuild
  ∗  install cstruct                 3.1.1         [required by irmin]
  ∗  install ppx_deriving            4.2           [required by nocrypto]
  ∗  install ppx_core                v0.9.0        [required by ppx_fields_conv, ppx_sexp_conv]
  ∗  install lwt_ssl                 1.1.1         [required by tezos-deps]
  ∗  install logs                    0.6.2         [required by git-unix, conduit, cohttp, etc.]
  ∗  install mstruct                 1.3.4         [required by git]
  ∗  install hex                     1.1.1         [required by git, ezjsonm, irmin]
  ∗  install cstruct-lwt             3.1.1         [required by nocrypto]
  ∗  install ppx_optcomp             v0.9.0        [required by ppx_driver]
  ∗  install irmin-watcher           0.3.0         [required by irmin-unix]
  ∗  install ezjsonm                 0.5.0         [required by tezos-deps]
  ∗  install ppx_driver              v0.9.1        [required by ppx_fields_conv, fieldslib, ppx_sexp_conv]
  ∗  install ppx_metaquot            v0.9.0        [required by ppx_fields_conv, ppx_sexp_conv]
  ∗  install fieldslib               v0.9.0        [required by cohttp]
  ∗  install ppx_type_conv           v0.9.0        [required by ppx_fields_conv, ppx_sexp_conv]
  ∗  install ppx_sexp_conv           v0.9.0        [required by cohttp, conduit]
  ∗  install ppx_fields_conv         v0.9.0        [required by cohttp]
  ∗  install uri                     1.9.4         [required by irmin, conduit, cohttp, etc.]
  ∗  install nocrypto                0.5.4         [required by git-unix]
  ∗  install ipaddr                  2.8.0         [required by conduit]
  ∗  install ocplib-json-typed       0.5*          [required by tezos-deps]
  ∗  install irmin                   1.3.0         [required by tezos-deps]
  ∗  install git                     1.11.2        [required by tezos-deps]
  ∗  install cohttp                  0.99.0        [required by tezos-deps]
  ∗  install conduit                 1.0.0         [required by tezos-deps]
  ∗  install ocplib-resto            dev*          [required by tezos-deps]
  ∗  install irmin-mem               1.3.0         [required by irmin-unix]
  ∗  install irmin-fs                1.3.0         [required by irmin-unix]
  ∗  install irmin-git               1.3.0         [required by irmin-unix]
  ∗  install webmachine              0.4.0         [required by irmin-http]
  ∗  install conduit-lwt             1.0.0         [required by conduit-lwt-unix]
  ∗  install cohttp-lwt              0.99.0        [required by git-http, cohttp-lwt-unix, irmin-http]
  ∗  install conduit-lwt-unix        1.0.2         [required by git-unix]
  ∗  install irmin-http              1.3.1         [required by irmin-unix]
  ∗  install git-http                1.11.2        [required by git-unix]
  ∗  install cohttp-lwt-unix         0.99.0        [required by git-unix]
  ∗  install git-unix                1.11.2        [required by tezos-deps]
  ∗  install irmin-unix              1.3.0         [required by tezos-deps]
  ∗  install tezos-deps              dev*        
===== ∗  104 =====
Do you want to continue ? [Y/n] Y

=-=- Gathering sources =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
[default] https://opam.ocaml.org/archives/base64.2.2.0+opam.tar.gz downloaded
[default] https://opam.ocaml.org/archives/astring.0.8.3+opam.tar.gz downloaded
[default] https://opam.ocaml.org/archives/base.v0.9.3+opam.tar.gz downloaded
[default] https://opam.ocaml.org/archives/bisect_ppx.1.3.1+opam.tar.gz downloaded
[default] https://opam.ocaml.org/archives/cmdliner.1.0.2+opam.tar.gz downloaded
[default] https://opam.ocaml.org/archives/calendar.2.03.2+opam.tar.gz downloaded
[default] https://opam.ocaml.org/archives/cohttp.0.99.0+opam.tar.gz downloaded
[default] https://opam.ocaml.org/archives/cohttp-lwt.0.99.0+opam.tar.gz downloaded
[default] https://opam.ocaml.org/archives/cohttp-lwt-unix.0.99.0+opam.tar.gz downloaded
[default] https://opam.ocaml.org/archives/conduit.1.0.0+opam.tar.gz downloaded
[default] https://opam.ocaml.org/archives/conduit-lwt.1.0.0+opam.tar.gz downloaded
[default] https://opam.ocaml.org/archives/conduit-lwt-unix.1.0.2+opam.tar.gz downloaded
[default] https://opam.ocaml.org/archives/cpuid.0.1.1+opam.tar.gz downloaded
[default] https://opam.ocaml.org/archives/cppo.1.6.0+opam.tar.gz downloaded
[default] https://opam.ocaml.org/archives/cppo_ocamlbuild.1.6.0+opam.tar.gz downloaded
[default] https://opam.ocaml.org/archives/crunch.2.1.0+opam.tar.gz downloaded
[default] https://opam.ocaml.org/archives/cstruct.3.1.1+opam.tar.gz downloaded
[default] https://opam.ocaml.org/archives/cstruct-lwt.3.1.1+opam.tar.gz downloaded
[default] https://opam.ocaml.org/archives/dispatch.0.4.0+opam.tar.gz downloaded
[default] https://opam.ocaml.org/archives/ctypes.0.13.0+opam.tar.gz downloaded
[default] https://opam.ocaml.org/archives/decompress.0.7+opam.tar.gz downloaded
[default] https://opam.ocaml.org/archives/ezjsonm.0.5.0+opam.tar.gz downloaded
[default] https://opam.ocaml.org/archives/fieldslib.v0.9.0+opam.tar.gz downloaded
[default] https://opam.ocaml.org/archives/fmt.0.8.4+opam.tar.gz downloaded
[default] https://opam.ocaml.org/archives/git.1.11.2+opam.tar.gz downloaded
[default] https://opam.ocaml.org/archives/git-http.1.11.2+opam.tar.gz downloaded
[default] https://opam.ocaml.org/archives/git-unix.1.11.2+opam.tar.gz downloaded
[default] https://opam.ocaml.org/archives/hex.1.1.1+opam.tar.gz downloaded
[default] https://opam.ocaml.org/archives/integers.0.2.2+opam.tar.gz downloaded
[default] https://opam.ocaml.org/archives/ipaddr.2.8.0+opam.tar.gz downloaded
[default] https://opam.ocaml.org/archives/irmin.1.3.0+opam.tar.gz downloaded
[default] https://opam.ocaml.org/archives/irmin-fs.1.3.0+opam.tar.gz downloaded
[default] https://opam.ocaml.org/archives/irmin-git.1.3.0+opam.tar.gz downloaded
[default] https://opam.ocaml.org/archives/irmin-http.1.3.1+opam.tar.gz downloaded
[default] https://opam.ocaml.org/archives/irmin-mem.1.3.0+opam.tar.gz downloaded
[default] https://opam.ocaml.org/archives/irmin-unix.1.3.0+opam.tar.gz downloaded
[default] https://opam.ocaml.org/archives/irmin-watcher.0.3.0+opam.tar.gz downloaded
[default] https://opam.ocaml.org/archives/jsonm.1.0.1+opam.tar.gz downloaded
[default] https://opam.ocaml.org/archives/jbuilder.1.0+beta14+opam.tar.gz downloaded
[default] https://opam.ocaml.org/archives/kaputt.1.2+opam.tar.gz downloaded
[default] https://opam.ocaml.org/archives/leveldb.1.1.2+opam.tar.gz downloaded
[default] https://opam.ocaml.org/archives/logs.0.6.2+opam.tar.gz downloaded
[default] https://opam.ocaml.org/archives/magic-mime.1.1.0+opam.tar.gz downloaded
[default] https://opam.ocaml.org/archives/lwt.3.1.0+opam.tar.gz downloaded
[default] https://opam.ocaml.org/archives/lwt_ssl.1.1.1+opam.tar.gz downloaded
[default] https://opam.ocaml.org/archives/mstruct.1.3.4+opam.tar.gz downloaded
[default] https://opam.ocaml.org/archives/mtime.1.1.0+opam.tar.gz downloaded
[default] https://opam.ocaml.org/archives/ocaml-compiler-libs.v0.9.0+opam.tar.gz downloaded
[default] https://opam.ocaml.org/archives/ocaml-migrate-parsetree.1.0.6+opam.tar.gz downloaded
[default] https://opam.ocaml.org/archives/ocamlbuild.0.11.0+opam.tar.gz downloaded
[default] https://opam.ocaml.org/archives/menhir.20171013+opam.tar.gz downloaded
[default] https://opam.ocaml.org/archives/nocrypto.0.5.4+opam.tar.gz downloaded
[default] https://opam.ocaml.org/archives/ocb-stubblr.0.1.1+opam.tar.gz downloaded
[default] https://opam.ocaml.org/archives/ocamlfind.1.7.3+opam.tar.gz downloaded
[default] https://opam.ocaml.org/archives/ocamlgraph.1.8.8+opam.tar.gz downloaded
[ocp-ocamlres] git://github.com/OCamlPro/ocp-ocamlres already up-to-date
[ocplib-json-typed] https://github.com/ocamlpro/ocplib-json-typed.git already up-to-date
[default] https://opam.ocaml.org/archives/ocplib-endian.1.0+opam.tar.gz downloaded
[default] https://opam.ocaml.org/archives/ocp-build.1.99.19-beta+opam.tar.gz downloaded
[ocplib-resto] https://github.com/OCamlPro/ocplib-resto.git already up-to-date
[default] https://opam.ocaml.org/archives/pprint.20171003+opam.tar.gz downloaded
[default] https://opam.ocaml.org/archives/ppx_ast.v0.9.1+opam.tar.gz downloaded
[default] https://opam.ocaml.org/archives/ppx_core.v0.9.0+opam.tar.gz downloaded
[default] https://opam.ocaml.org/archives/ppx_derivers.1.0+opam.tar.gz downloaded
[default] https://opam.ocaml.org/archives/ppx_deriving.4.2+opam.tar.gz downloaded
[default] https://opam.ocaml.org/archives/ppx_driver.v0.9.1+opam.tar.gz downloaded
[default] https://opam.ocaml.org/archives/ppx_fields_conv.v0.9.0+opam.tar.gz downloaded
[default] https://opam.ocaml.org/archives/ppx_metaquot.v0.9.0+opam.tar.gz downloaded
[default] https://opam.ocaml.org/archives/ppx_optcomp.v0.9.0+opam.tar.gz downloaded
[default] https://opam.ocaml.org/archives/ppx_sexp_conv.v0.9.0+opam.tar.gz downloaded
[default] https://opam.ocaml.org/archives/ppx_tools.5.0+opam.tar.gz downloaded
[default] https://opam.ocaml.org/archives/omake.0.10.2+opam.tar.gz downloaded
[default] https://opam.ocaml.org/archives/ppx_tools_versioned.5.0.1+opam.tar.gz downloaded
[default] https://opam.ocaml.org/archives/ppx_traverse_builtins.v0.9.0+opam.tar.gz downloaded
[default] https://opam.ocaml.org/archives/ppx_type_conv.v0.9.0+opam.tar.gz downloaded
[default] https://opam.ocaml.org/archives/react.1.2.1+opam.tar.gz downloaded
[default] https://opam.ocaml.org/archives/reactiveData.0.2.1+opam.tar.gz downloaded
[default] https://opam.ocaml.org/archives/re.1.7.1+opam.tar.gz downloaded
[default] https://opam.ocaml.org/archives/result.1.2+opam.tar.gz downloaded
[default] https://opam.ocaml.org/archives/sexplib.v0.9.2+opam.tar.gz downloaded
[sodium] https://github.com/dsheets/ocaml-sodium.git already up-to-date
[default] https://opam.ocaml.org/archives/stdio.v0.9.0+opam.tar.gz downloaded
[WARNING] Rsync partially failed:
          symlink has no referent:
          "/home/d/src5/tezos/src/compiler/sigs/protocol_sigs.mli"
          rsync error: some files/attrs were not transferred (see previous
          errors) (code
          23) at main.c(1196) [sender=3.1.2]

[tezos-deps.dev] /home/d/src5/tezos/src/ synchronized
[default] https://opam.ocaml.org/archives/stringext.1.5.0+opam.tar.gz downloaded
[default] https://opam.ocaml.org/archives/ssl.0.5.5+opam.tar.gz downloaded
[default] https://opam.ocaml.org/archives/uchar.0.0.2+opam.tar.gz downloaded
[default] https://opam.ocaml.org/archives/topkg.0.9.1+opam.tar.gz downloaded
[default] https://opam.ocaml.org/archives/uutf.1.0.1+opam.tar.gz downloaded
[default] https://opam.ocaml.org/archives/uri.1.9.4+opam.tar.gz downloaded
[default] https://opam.ocaml.org/archives/webmachine.0.4.0+opam.tar.gz downloaded
[default] https://opam.ocaml.org/archives/zarith.1.7+opam.tar.gz downloaded

=-=- Processing actions -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
∗  installed base-num.base
∗  installed conf-m4.1
∗  installed conf-gmp.1
∗  installed conf-perl.1
∗  installed conf-pkg-config.1.0
∗  installed conf-which.1
∗  installed mirage-no-solo5.1
∗  installed mirage-no-xen.1
∗  installed num.0
∗  installed conf-libev.4-11
∗  installed conf-openssl.1
∗  installed result.1.2
∗  installed conf-leveldb.1
∗  installed ocamlfind.1.7.3
∗  installed base-bytes.base
∗  installed ocamlbuild.0.11.0
∗  installed calendar.2.03.2
∗  installed kaputt.1.2
∗  installed ocamlgraph.1.8.8
∗  installed jbuilder.1.0+beta14
∗  installed base64.2.2.0
∗  installed cppo.1.6.0
∗  installed cppo_ocamlbuild.1.6.0
∗  installed dispatch.0.4.0
∗  installed magic-mime.1.1.0
∗  installed ocaml-compiler-libs.v0.9.0
Processing 30/104: [menhir: make Makefile]                                  + 3
∗  installed ocaml-migrate-parsetree.1.0.6
∗  installed menhir.20171013
Processing 32/104: [ocp-build: make] [ocplib-endian: ocaml setup.ml]        + 2
∗  installed pprint.20171003
∗  installed ocp-ocamlres.dev
∗  installed ocp-build.1.99.19-beta
∗  installed ppx_derivers.1.0
∗  installed ppx_ast.v0.9.1
∗  installed ocplib-endian.1.0
∗  installed ppx_traverse_builtins.v0.9.0
∗  installed ppx_tools.5.0
∗  installed ppx_deriving.4.2
∗  installed ppx_tools_versioned.5.0.1
∗  installed sexplib.v0.9.2
∗  installed bisect_ppx.1.3.1
∗  installed cstruct.3.1.1
∗  installed hex.1.1.1
∗  installed re.1.7.1
∗  installed mstruct.1.3.4
∗  installed base.v0.9.3
∗  installed ssl.0.5.5
∗  installed lwt.3.1.0
∗  installed stdio.v0.9.0
∗  installed stringext.1.5.0
∗  installed cstruct-lwt.3.1.1
∗  installed lwt_ssl.1.1.1
∗  installed uchar.0.0.2
∗  installed zarith.1.7
∗  installed topkg.0.9.1
∗  installed ppx_core.v0.9.0
∗  installed astring.0.8.3
∗  installed cmdliner.1.0.2
∗  installed integers.0.2.2
∗  installed crunch.2.1.0
∗  installed mtime.1.1.0
∗  installed fmt.0.8.4
∗  installed decompress.0.7
∗  installed logs.0.6.2
∗  installed irmin-watcher.0.3.0
∗  installed ocb-stubblr.0.1.1
Processing 69/104: [cpuid: ocaml build] [ctypes: make ctypes-base]          + 2
∗  installed cpuid.0.1.1
∗  installed ppx_optcomp.v0.9.0
∗  installed react.1.2.1
∗  installed reactiveData.0.2.1
∗  installed ppx_driver.v0.9.1
∗  installed uutf.1.0.1
∗  installed fieldslib.v0.9.0
∗  installed jsonm.1.0.1
∗  installed ezjsonm.0.5.0
∗  installed ppx_metaquot.v0.9.0
∗  installed ppx_type_conv.v0.9.0
∗  installed ctypes.0.13.0
∗  installed ppx_fields_conv.v0.9.0
∗  installed ppx_sexp_conv.v0.9.0
∗  installed ipaddr.2.8.0
∗  installed sodium.dev
∗  installed nocrypto.0.5.4
∗  installed omake.0.10.2
∗  installed leveldb.1.1.2
∗  installed uri.1.9.4
∗  installed conduit.1.0.0
∗  installed git.1.11.2
∗  installed cohttp.0.99.0
∗  installed irmin.1.3.0
∗  installed conduit-lwt.1.0.0
∗  installed cohttp-lwt.0.99.0
∗  installed irmin-fs.1.3.0
∗  installed ocplib-json-typed.0.5
∗  installed git-http.1.11.2
∗  installed irmin-mem.1.3.0
∗  installed conduit-lwt-unix.1.0.2
∗  installed ocplib-resto.dev
∗  installed irmin-git.1.3.0
∗  installed cohttp-lwt-unix.0.99.0
∗  installed git-unix.1.11.2
∗  installed webmachine.0.4.0
∗  installed irmin-http.1.3.1
∗  installed irmin-unix.1.3.0
∗  installed tezos-deps.dev
Done.

=-=- lwt.3.1.0 installed successfully -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
=> Lwt 4.0.0 will make some breaking changes to packaging in late 2017. See
     https://github.com/ocsigen/lwt/issues/453

=-=- bisect_ppx.1.3.1 installed successfully =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
=> The future Bisect_ppx 2.0.0 will make breaking changes in late 2017. See
     https://github.com/aantron/bisect_ppx/releases/tag/1.3.0
d@d:~/src5/tezos$ 
d@d:~/src5/tezos$ 
d@d:~/src5/tezos$ 
d@d:~/src5/tezos$ make
make -C src all
make[1]: Entering directory '/home/d/src5/tezos/src'
Makefile:275: .depend: No such file or directory
LINK tezos_protocol_environment_sigs_packer
GENERATING tezos_protocol_environment_sigs_v1.ml
OCAMLDEP (packer.cmxa) tezos_protocol_packer.mli
OCAMLDEP (packer.cmxa) tezos_protocol_packer.ml
OCAMLDEP (packer.cmxa) packer_main.ml
OCAMLDEP (minutils.cmxa) mBytes.mli
ocamlfind: Package `cstruct' not found
Makefile:305: recipe for target 'minutils/mBytes.mli.deps' failed
make[1]: *** [minutils/mBytes.mli.deps] Error 2
rm environment/tezos_protocol_environment_sigs_packer
make[1]: Leaving directory '/home/d/src5/tezos/src'
Makefile:3: recipe for target 'all' failed
make: *** [all] Error 2

#19

Any ideas of whats happening with this damned
ocamlfind: Package `cstruct’ not found
?


The Path Forward
The Path Forward
#20

You need to make clear your env to Ocaml when it cannot find package.