Post reply

Name:
Email:
Subject:
Message icon:

Verification:
Type the letters shown in the picture
Listen to the letters / Request another image

Type the letters shown in the picture:
What color is grass?:
What is the seventh word in this sentence?:
What is five minus two (use the full word)?:

shortcuts: hit alt+s to submit/post or alt+p to preview


Topic Summary

Posted by: AL|EN
« on: February 27, 2019, 02:33:10 AM »

The problem was non-standard path to 'elkhound' binary (even if executable bit was set):
Quote
ifeq "$(shell uname -m)" "x86_64"
         export WEIDU_ARCH = amd64
         export ELKHOUND_BIN = /home/a/elkhound64
      else
         export WEIDU_ARCH = x86
         export ELKHOUND_BIN = /home/a/elkhound 
      endif

as soon as I copied 'elkhound' and 'elkhound64' binaries to /usr/bin and changed paths to:

Quote
ifeq "$(shell uname -m)" "x86_64"
         export WEIDU_ARCH = amd64
         export ELKHOUND_BIN = elkhound64
      else
         export WEIDU_ARCH = x86
         export ELKHOUND_BIN = elkhound 
      endif

it worked. Linux works, let's now deal with Windows.
Posted by: Wisp
« on: February 26, 2019, 11:39:37 AM »

Please verify that you have elkhound on your path. If it is, you should get something from
Code: [Select]
which elkhound. If it's not already, getting elkhound onto your path might be as easy as putting it in ~/bin and restarting your terminal or otherwise re-running ~/.profile.
Posted by: AL|EN
« on: February 26, 2019, 03:43:23 AM »

Let's start with linux, Ubuntu 18.04.2 LTS 64-bit, clean installation, devel branch:


OPam:
Code: [Select]
a@ubuntu:~/weidu$ opam switch
#  switch                      compiler                    description
→  default                     ocaml-base-compiler.4.07.1  default
   ocaml-base-compiler.4.03.0  ocaml-base-compiler.4.03.0  ocaml-base-compiler.4.03.0
   ocaml-base-compiler.4.04.0  ocaml-base-compiler.4.04.0  ocaml-base-compiler.4.04.0

doesn't matter which OCaml version I use, every time I get this error:

Code: [Select]
a@ubuntu:~/weidu$ make
/home/a/.opam/ocaml-base-compiler.4.03.0/bin/ocamlyacc  src/toldparser.mly
17 shift/reduce conflicts.
Generating dependency information for obj/x86_LINUX/toldparser.mli
ocaml str.cma unix.cma -w p scripts/make_gr.ml
ocaml src/trealparserin.gr
File "./src/trealparserin.gr", line 1, characters 0-2:
Error: Syntax error
Makefile.ocaml:243: recipe for target 'obj/x86_LINUX/trealparserin.mli' failed
make: [obj/x86_LINUX/trealparserin.mli] Error 2 (ignored)
mv: cannot stat 'src/trealparserin.ml': No such file or directory
mv: cannot stat 'src/trealparserin.mli': No such file or directory
/home/a/.opam/ocaml-base-compiler.4.03.0/bin/ocamlyacc  src/dparser.mly
1 reduce/reduce conflict.
Generating dependency information for obj/x86_LINUX/dparser.mli
/home/a/.opam/ocaml-base-compiler.4.03.0/bin/ocamlyacc  src/bafparser.mly
Generating dependency information for obj/x86_LINUX/bafparser.mli
/home/a/.opam/ocaml-base-compiler.4.03.0/bin/ocamlyacc  src/refactordparser.mly
Generating dependency information for obj/x86_LINUX/refactordparser.mli
/home/a/.opam/ocaml-base-compiler.4.03.0/bin/ocamlyacc  src/refactorbafparser.mly
Generating dependency information for obj/x86_LINUX/refactorbafparser.mli
/home/a/.opam/ocaml-base-compiler.4.03.0/bin/ocamlyacc  src/bcsparser.mly
1 shift/reduce conflict.
Generating dependency information for obj/x86_LINUX/bcsparser.mli
/home/a/.opam/ocaml-base-compiler.4.03.0/bin/ocamlyacc  src/idsparser.mly
3 shift/reduce conflicts.
Generating dependency information for obj/x86_LINUX/idsparser.mli
Generating dependency information for hashtbl-4.03.0/myhashtbl.mli
Generating dependency information for batteries-lite/batList.mli
Generating dependency information for src/tolower.ml
Generating dependency information for src/weinstall.ml
Generating dependency information for src/myarg.ml
Generating dependency information for src/main.ml
Generating dependency information for src/autoupdate.ml
Generating dependency information for src/changelog.ml
Generating dependency information for src/tpwork.ml
Generating dependency information for src/tpaction.ml
Generating dependency information for src/tppatch.ml
Generating dependency information for src/tpuninstall.ml
Generating dependency information for src/tppe.ml
Generating dependency information for src/mymarshal.ml
Generating dependency information for src/parsewrappers.ml
cp src/tparser.in src/tparser.ml
Generating dependency information for src/tparser.ml
ocaml str.cma unix.cma -w p scripts/make_old_mll.ml
/home/a/.opam/ocaml-base-compiler.4.03.0/bin/ocamllex src/toldlexer.mll
111 states, 589 transitions, table size 3022 bytes
1717 additional bytes used for bindings
Generating dependency information for obj/x86_LINUX/toldlexer.ml
Generating dependency information for obj/x86_LINUX/toldparser.ml
ocaml str.cma unix.cma -w p scripts/make_tll.ml
/home/a/.opam/ocaml-base-compiler.4.03.0/bin/ocamllex src/tlexer.mll
114 states, 594 transitions, table size 3060 bytes
1735 additional bytes used for bindings
Generating dependency information for obj/x86_LINUX/tlexer.ml
Generating dependency information for src/tphelp.ml
Generating dependency information for src/tpstate.ml
Generating dependency information for src/kit.ml
Generating dependency information for src/automate.ml
Generating dependency information for elkhound/lrparse.ml
Generating dependency information for elkhound/glr.ml
Generating dependency information for elkhound/objpool.ml
Generating dependency information for elkhound/arraystack.ml
Generating dependency information for elkhound/parsetables.ml
Generating dependency information for elkhound/lexerint.ml
Generating dependency information for elkhound/useract.ml
Generating dependency information for elkhound/smutil.ml
Generating dependency information for src/json.ml
Generating dependency information for src/sql.ml
Generating dependency information for obj/x86_LINUX/dparser.ml
/home/a/.opam/ocaml-base-compiler.4.03.0/bin/ocamllex src/dlexer.mll
60 states, 536 transitions, table size 2504 bytes
Generating dependency information for obj/x86_LINUX/dlexer.ml
Generating dependency information for src/tp.ml
Generating dependency information for src/mos.ml
Generating dependency information for src/sav.ml
Generating dependency information for src/diff.ml
Generating dependency information for src/myxdiff.ml
Generating dependency information for obj/x86_LINUX/bafparser.ml
/home/a/.opam/ocaml-base-compiler.4.03.0/bin/ocamllex src/baflexer.mll
76 states, 748 transitions, table size 3448 bytes
Generating dependency information for obj/x86_LINUX/baflexer.ml
Generating dependency information for obj/x86_LINUX/refactordparser.ml
/home/a/.opam/ocaml-base-compiler.4.03.0/bin/ocamllex src/refactordlexer.mll
39 states, 311 transitions, table size 1478 bytes
Generating dependency information for obj/x86_LINUX/refactordlexer.ml
Generating dependency information for obj/x86_LINUX/refactorbafparser.ml
/home/a/.opam/ocaml-base-compiler.4.03.0/bin/ocamllex src/refactorbaflexer.mll
14 states, 371 transitions, table size 1568 bytes
Generating dependency information for obj/x86_LINUX/refactorbaflexer.ml
Generating dependency information for src/refactorbaf.ml
Generating dependency information for src/dc.ml
Generating dependency information for src/dlg.ml
Generating dependency information for obj/x86_LINUX/bcsparser.ml
/home/a/.opam/ocaml-base-compiler.4.03.0/bin/ocamllex src/bcslexer.mll
51 states, 369 transitions, table size 1782 bytes
Generating dependency information for obj/x86_LINUX/bcslexer.ml
Generating dependency information for src/bcs.ml
Generating dependency information for obj/x86_LINUX/idsparser.ml
/home/a/.opam/ocaml-base-compiler.4.03.0/bin/ocamllex src/idslexer2.mll
32 states, 699 transitions, table size 2988 bytes
Generating dependency information for obj/x86_LINUX/idslexer2.ml
/home/a/.opam/ocaml-base-compiler.4.03.0/bin/ocamllex src/idslexer.mll
33 states, 574 transitions, table size 2494 bytes
Generating dependency information for obj/x86_LINUX/idslexer.ml
Generating dependency information for src/ids.ml
Generating dependency information for src/cre.ml
Generating dependency information for src/load.ml
Generating dependency information for src/tlk.ml
Generating dependency information for src/biff.ml
Generating dependency information for src/cbif.ml
Generating dependency information for src/key.ml
Generating dependency information for src/xor.ml
echo "let associate_these a = Var.set_string \"WEIDU_ARCH\" \"amd64\" ; Var.set_string \"WEIDU_OS\" \"unix\"; Var.set_string \"WEIDU_VER\" !Util.weidu_version" > src/arch2.ml
echo "let _ = associate_these ()" >> src/arch2.ml
Generating dependency information for src/arch2.ml
Generating dependency information for src/var.ml
Generating dependency information for src/modder.ml
Generating dependency information for src/util.ml
ocaml str.cma unix.cma -w p -unsafe-string scripts/make_tph.ml
Generating dependency information for src/tph.ml
Generating dependency information for src/parsing.ml
Generating dependency information for src/version.ml
cp src/arch_unix.ml src/arch.ml
Generating dependency information for src/arch.ml
Generating dependency information for src/stats.ml
cp src/case_ins_linux.ml src/case_ins.ml
Generating dependency information for src/case_ins.ml
Generating dependency information for hashtbl-4.03.0/hashtblinit.ml
Generating dependency information for hashtbl-4.03.0/myhashtbl.ml
Generating dependency information for batteries-lite/batteriesInit.ml
Generating dependency information for batteries-lite/batList.ml
ocaml src/trealparserin.gr
File "./src/trealparserin.gr", line 1, characters 0-2:
Error: Syntax error
Makefile.ocaml:243: recipe for target 'obj/x86_LINUX/trealparserin.mli' failed
make: [obj/x86_LINUX/trealparserin.mli] Error 2 (ignored)
mv: cannot stat 'src/trealparserin.ml': No such file or directory
mv: cannot stat 'src/trealparserin.mli': No such file or directory
Compiling interface batteries-lite/batList.mli
Compiling batteries-lite/batList.ml to native code
File "batteries-lite/batList.ml", line 633, characters 17-21:
Warning 52: the argument of this constructor should not be matched against a
constant pattern; the actual value of the argument could change
in the future.
File "batteries-lite/batList.ml", line 637, characters 17-21:
Warning 52: the argument of this constructor should not be matched against a
constant pattern; the actual value of the argument could change
in the future.
Compiling batteries-lite/batteriesInit.ml to native code
Compiling interface hashtbl-4.03.0/myhashtbl.mli
Compiling hashtbl-4.03.0/myhashtbl.ml to native code
Compiling hashtbl-4.03.0/hashtblinit.ml to native code
Compiling src/case_ins.ml to native code
Compiling src/stats.ml to native code
Compiling src/arch.ml to native code
Compiling src/version.ml to native code
Compiling src/parsing.ml to native code
Compiling src/tph.ml to native code
Compiling src/util.ml to native code
File "src/util.ml", line 485, characters 4-15:
Warning 3: deprecated: String.copy
Compiling src/modder.ml to native code
Compiling src/var.ml to native code
Compiling src/arch2.ml to native code
Compiling src/xor.ml to native code
Compiling src/key.ml to native code
Compiling src/cbif.ml to native code
Compiling src/biff.ml to native code
Compiling src/tlk.ml to native code
Compiling src/load.ml to native code
File "src/load.ml", line 646, characters 25-40:
Warning 52: the argument of this constructor should not be matched against a
constant pattern; the actual value of the argument could change
in the future.
File "_none_", line 1:
Warning 52: the argument of this constructor should not be matched against a
constant pattern; the actual value of the argument could change
in the future.
Compiling src/cre.ml to native code
Compiling src/ids.ml to native code
Compiling interface obj/x86_LINUX/idsparser.mli
Compiling obj/x86_LINUX/idsparser.ml to native code
Compiling obj/x86_LINUX/idslexer.ml to native code
Compiling obj/x86_LINUX/idslexer2.ml to native code
Compiling src/bcs.ml to native code
File "src/bcs.ml", line 226, characters 59-74:
Warning 52: the argument of this constructor should not be matched against a
constant pattern; the actual value of the argument could change
in the future.
File "src/bcs.ml", line 375, characters 34-49:
Warning 52: the argument of this constructor should not be matched against a
constant pattern; the actual value of the argument could change
in the future.
Compiling interface obj/x86_LINUX/bcsparser.mli
Compiling obj/x86_LINUX/bcsparser.ml to native code
Compiling obj/x86_LINUX/bcslexer.ml to native code
Compiling src/dlg.ml to native code
Compiling src/dc.ml to native code
Compiling src/refactorbaf.ml to native code
Compiling interface obj/x86_LINUX/refactorbafparser.mli
Compiling obj/x86_LINUX/refactorbafparser.ml to native code
Compiling obj/x86_LINUX/refactorbaflexer.ml to native code
Compiling interface obj/x86_LINUX/refactordparser.mli
Compiling obj/x86_LINUX/refactordparser.ml to native code
Compiling obj/x86_LINUX/refactordlexer.ml to native code
Compiling interface obj/x86_LINUX/bafparser.mli
Compiling obj/x86_LINUX/bafparser.ml to native code
Compiling obj/x86_LINUX/baflexer.ml to native code
Compiling src/myxdiff.ml to native code
Compiling src/diff.ml to native code
Compiling src/sav.ml to native code
File "src/sav.ml", line 42, characters 25-37:
Warning 52: the argument of this constructor should not be matched against a
constant pattern; the actual value of the argument could change
in the future.
File "src/sav.ml", line 43, characters 25-46:
Warning 52: the argument of this constructor should not be matched against a
constant pattern; the actual value of the argument could change
in the future.
Compiling src/mos.ml to native code
Compiling src/tp.ml to native code
Compiling interface obj/x86_LINUX/dparser.mli
Compiling obj/x86_LINUX/dparser.ml to native code
File "src/dparser.mly", line 42, characters 37-48:
Warning 3: deprecated: String.copy
Compiling obj/x86_LINUX/dlexer.ml to native code
Compiling src/sql.ml to native code
Compiling src/json.ml to native code
Compiling elkhound/smutil.ml to native code
Compiling elkhound/useract.ml to native code
Compiling elkhound/lexerint.ml to native code
Compiling elkhound/parsetables.ml to native code
Compiling elkhound/arraystack.ml to native code
Compiling elkhound/objpool.ml to native code
Compiling elkhound/glr.ml to native code
Compiling elkhound/lrparse.ml to native code
Compiling src/automate.ml to native code
Compiling src/kit.ml to native code
Compiling src/tpstate.ml to native code
Compiling src/tphelp.ml to native code
make: *** No rule to make target 'obj/x86_LINUX/trealparserin.ml', needed by 'obj/x86_LINUX/trealparser.ml'.  Stop.
Posted by: Wisp
« on: February 23, 2019, 04:39:15 AM »

You need to be more specific about what problems you are having. What error messages you are getting, at which point they appear, and so on.
Posted by: AL|EN
« on: February 22, 2019, 06:48:37 AM »

Well, linux build also failing with syntax errors. Tested with xubuntu 18.04, OCaml 4.03.1 and 4.07.1 master/devel.
Posted by: AL|EN
« on: February 20, 2019, 01:37:33 PM »

Very good idea, something which I would proposed myself but since I was sure that you are aware about the benefits, I assumed that you are simply too busy to handle such change.

BTW: My previous build env stooped working, now no matter what I do, I can't compile weidu for windows. Instructions have dependency on too many moving parts, is unclear how to install OCaml for windows etc. Could you just simply zip whole cygwin + ocaml folders and post it as archives, so anyone can simply download, extract, change paths inside configuration and run make?
Posted by: Wisp
« on: February 20, 2019, 11:42:30 AM »

https://github.com/WeiDUorg/elkhound/releases
I'll be moving the binary distribution to github.
Posted by: AL|EN
« on: February 20, 2019, 03:58:19 AM »

http://www.weidu.org/~thebigg/elkhound.zip dosen't contain Elkhound64 for windows. Where I can find it?
Posted by: Wisp
« on: January 20, 2019, 06:59:28 AM »

The required minimum version of OCaml is now 4.03. The issue preventing WeiDU from building on 4.06 or later was fixed some time ago.
Posted by: AstroBryGuy
« on: March 13, 2018, 07:29:03 PM »

@Wisp - I'll try building an older version of OCaml. Not a problem.
Posted by: Wisp
« on: March 13, 2018, 02:49:12 PM »

Any idea when the update will be done?
Not as such. I was going to try to estimate how much work it was, but instead I ended up setting up a new build environment for Windows, since my live one is 4.01. If it's causing problems, I'll give it a priority bump.
Posted by: Argent77
« on: March 12, 2018, 06:10:47 PM »

You could compile an older OCaml version yourself (List of OCaml releases). Homebrew should provide everything necessary for the build process.

I have done that just recently and compiled OCaml 4.05 for my OSX 10.11 VM. I would suggest to install it somewhere separately to avoid interference with the Homebrew OCaml version (and update PATH accordingly).

For WeiDU you have to redirect the OCAMLDIR variable to the new OCaml path in the Configuration file. In my case I also had to enforce byte code compilation or the resulting binary wouldn't run on my older (32-bit) OSX VM.
Code: [Select]
PROFILE=0 NATIVECAML=0 make weidu
Posted by: AstroBryGuy
« on: March 12, 2018, 03:29:55 PM »

Any idea when the update will be done? I had set up my machine for building WeiDU on macOS, but Homebrew only has OCaml 4.0.6.1 available. :(

Posted by: Wisp
« on: February 07, 2018, 12:08:29 PM »

PSA: WeiDU won't presently build on OCaml >= 4.06 because breaking changes and after I've updated the code, WeiDU won't build on OCaml <4.02 4.03, because of another issue.
Posted by: enderandrew
« on: January 11, 2018, 02:45:56 PM »

Works fine now (with both sed and perl).

On an unrelated note, I made an attempt to port Windows WeiDU to 64-bit. I was able to make Elkhound 64-bit ready, but failed to compile WeiDU itself because of incomplete 64-bit Windows OCaml support. From what I read on various sites it's unlikely that official OCaml64 packages will ever be fixed for Windows, so I guess we have to make do with 32-bit WeiDU for the time being.
It looks like there are updated OCaml 64-bit packages for Windows now if someone wants to give this another go.

https://fdopen.github.io/opam-repository-mingw/installation/