Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP

Loading…

Building on Ubuntu 32-bit #16

Closed
ryepdx opened this Issue · 5 comments

3 participants

@ryepdx

I realize 32-bit OSes are not yet supported, but I thought I would try hacking something together myself. However, I've hit a wall. What is the "TRX_OVERRIDE" environmental variable supposed to point to? I can't find anything about it on Google.

The full error I get when I run "./configure -ocamldir /usr/lib/ocaml; make":

File "buildinfos/buildInfos.ml", line 14, characters 0-3:
Error: Syntax error
Command exited with code 2.
Failure:
No cache, no trx exe: sorry, cannot build libnet/http/request.ml from libnet/http/request.trx.
You may want to re-run with TRX_OVERRIDE set.
Compilation unsuccessful after building 521 targets (506 cached) in 00:00:29.

Help, anyone? I'd like to play around with Opa, but I'm stuck with a 32-bit processor.

@AltGr

That could happen when something went wrong during a previous run of ./configure : the expected files haven't been generated.

Try removing completely the _build/ directory and running ./configure again, then checking the configure logs

@ryepdx

Okay, the config log looks completely fine. My first attempt was made on a 32-bit server running Ubuntu 11.10, server edition. I decided try on a 32-bit ThinkPad running Ubuntu 11.10 desktop edition. The build was failing for different reasons on both. The one difference in the config log was that the config script on the ThinkPad seemed to be finding ocamlbuild, ocamlc, ocamldep, and ocamlopt in /usr/local/bin on some lines while finding ocamldep, ocamlc, and ocamlopt in /usr/bin on others. The server was finding all the aforementioned in /usr/bin. Also, the ThinkPad seemed to be under the impression that the correct path for ocamlfind was /usr/lib/ocaml/../../bin/ocamlfind while the server seemed to think it was /usr/bin/ocamlfind.

Reviewing the server's build log revealed that the first two lines of the "full error" I reported initially were repeated a few times toward the end of the build, with successful compilation in between, before finally throwing the syntax error one last time and then exiting with code 2.

The error I get on the ThinkPad is:

Camlp4: Uncaught exception: DynLoader.Error ("/usr/lib/ocaml/ulex/pa_ulex.cma", "interface mismatch on Camlp4_import")

Preprocessing error on file libbase/indexer.ml
Command exited with code 2.
Compilation unsuccessful after building 208 targets (0 cached) in 00:00:06.
make: *** [all] Error 10

@ryepdx

Seeing what progress I can make on the server for now, as it seems to be further along than the ThinkPad. Biggest obstacle at the moment is that I can't seem to find a file named buildInfos.ml. I imagine it's being generated at build-time by buildinfos/generate_buildinfos.sh. I'll see if I can trick it into generating it for me outside of the normal build process so I can examine the contents of the buildInfos.ml file the build is dying on.

@ryepdx

Heard that the latest version is supposed to compile on 32-bit Linux. Tried building on Ubunto 11.10. Configuration went fine, but I got the following error when I ran make:

Ocamlbuild plugin generation
_build/myocamlbuild -no-plugin -j 6 -tag debug pplib/ppml.native ocamlbase.top libbase/ocamlbase database/database_server.native jslang/jsstat.native database/database_tool.native opatop/opatop.native passlib/opatrack.sh qmlcompilers/qmljs_exe.native compilerlib/opadep.sh opabsl/opabslgen.bypass tools/odep.native libbase/testfilepos.native opabsl/serverLib.cmi tools/odeplink.native protocols/genproto.native libbase/bslServerLib.ml opalang/opa2opa.native protocols/mlidl.native tools/jschecker/compiler.jar tools/ofile.native protocols/wsdl2ml.native dissemination/spawn.sh opa/main.native bash_completion opadoc/opadoc.native pplib/ppopa.native pplib/ppjs.native libbase/gen_platform teerex/trx_ocaml.native teerex/trx_interpreter.native libbsl/bslregister.native libbsl/bslbrowser.native libbsl/bslbrowser passlib/passdesign.native opa-packages.stamp

  • /usr/bin/ocamldep -pp '/usr/local/bin/camlp4o -I /usr/lib/ocaml/ulex pa_ulex.cma pr_o.cmo' -modules libbase/indexer.ml > libbase/indexer.ml.depends Camlp4: Uncaught exception: DynLoader.Error ("/usr/lib/ocaml/ulex/pa_ulex.cma", "interface mismatch on Camlp4_import")

Preprocessing error on file libbase/indexer.ml
Command exited with code 2.
Compilation unsuccessful after building 208 targets (0 cached) in 00:00:06.
make: *** [all] Error 10

@hbbio
Owner

Can't reproduce. Should be fixed.

@hbbio hbbio closed this
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Something went wrong with that request. Please try again.