You are not logged in.
I have trouble to install the beforementioned package from AUR with pacaur.
I'm a bit confused, there are build errors but seemingly the targets are installed. Is there something obvious I'm missing?
Offline
It doesn't look like anything is installed.
I'd look into building ocaml-pcre with makepkg ( the pacaur output looks like it's missing some details).
Disliking systemd intensely, but not satisfied with alternatives so focusing on taming systemd.
(A works at time B) && (time C > time B ) ≠ (A works at time C)
Offline
Ok, obviously ocamlbuild is a required dependency which is not installed. So I manually installed this and re-ran pacaur -S google-drive-ocamlfuse. This time ocamlfuse was missing. Which nails down to camlidl not being built.
Error: Some fatal warnings were triggered (1 occurrences)
make[1]: *** [Makefile:32: camlidl] Error 2
make[1]: Leaving directory '/home/hmt/.cache/pacaur/camlidl/src/camlidl-1.05/compiler'
make: *** [Makefile:18: all] Error 2
==> ERROR: A failure occurred in build().
Aborting...
So then I cd into the build directory, camlidl/src/camlidl-1.05/compiler, and manually run make -d all. Et voila:
ocamlc -g -o camlidl config.cmo utils.cmo clflags.cmo prefix.cmo lexpr.cmo cvttyp.cmo variables.cmo array.cmo struct.cmo enum.cmo union.cmo cvtval.cmo structdecl.cmo enumdecl.cmo uniondecl.cmo typedef.cmo funct.cmo constdecl.cmo intf.cmo file.cmo predef.cmo linenum.cmo parse_aux.cmo parser_midl.cmo lexer_midl.cmo parse.cmo fixlabels.cmo normalize.cmo main.cmo
Putting child 0xc96ea0 (camlidl) PID 24481 on the chain.
Live child 0xc96ea0 (camlidl) PID 24481
File "array.cmo", line 1:
Warning 31: files array.cmo and /usr/lib/ocaml/stdlib.cma(Array) both define a module named Array
File "_none_", line 1:
Error: Some fatal warnings were triggered (1 occurrences)
Reaping losing child 0xc96ea0 PID 24481
make: *** [Makefile:32: camlidl] Error 2
Removing child 0xc96ea0 PID 24481 from chain.
Now I'm lost, I'm not familiar with ocaml at all. Also I hope this was not too much pasting.
Offline
Packages using ocaml often have problems with existing ocaml installations.
I have no idea if there's any AUR helper that can cope with them.
The best way to solve the issue is build in a clean chroot .
Graysky's Clean Chroot manager can make that easier.
If you prefer to build on your normal system, makepkg -Crs combined with manually adding/removing aur dependencies is a workaround that can get close to clean chroot building .
If you often build aur packages (or maintain some) , it is possible to put aur packages you need in a custom local repo.
Maintaining the repo is some extra work, but it makes keeping my system clean from temporary needed deps much easier.
Last edited by Lone_Wolf (2016-10-27 12:09:12)
Disliking systemd intensely, but not satisfied with alternatives so focusing on taming systemd.
(A works at time B) && (time C > time B ) ≠ (A works at time C)
Offline
Thanks Lone_Wolf, your hint worked (which is pretty cool how easy and well documented everything is). So far.
So, basically I did this chroot build thing and installed camlidl. Then outside of the chroot environment I installed ocamlfuse to see if camlidl was correctly installed. This worked so far but the installation of google-drive-ocamlfuse broke again.
$ history
[...snip...]
mkdir chroot
CHROOT=$HOME/chroot
sudo mkarchroot $CHROOT/root base-devel
sudo arch-nspawn $CHROOT/root pacman -Syu
cd chroot/root/tmp/
git clone https://aur.archlinux.org/camlidl.git
cd camlidl/
makechrootpkg -c -r $CHROOT
makechrootpkg -r $CHROOT -- -i
pacaur -S ocamlfuse
pacaur -S google-drive-ocamlfuse
The last few lines of output:
findlib: [WARNING] cannot read directory /usr/lib/ocaml-site-lib: No such file or directory
+ /usr/bin/ocamlfind ocamlopt -g -linkpkg -package Fuse -package camlidl -package gapi-ocaml -package sqlite3 -package threads -thread src/appDir.cmx src/utils.cmx src/config.cmx src/cache.cmx src/concurrentGlobal.cmx src/keyValueStore.cmx src/state.cmx src/context.cmx src/gaeProxy.cmx src/mime.cmx src/oauth2.cmx src/drive.cmx src/gdfuse.cmx -o src/gdfuse.native
File "_none_", line 1:
Error: Cannot find file /usr/lib/ocaml/camlidl/com.cmxa
Command exited with code 2.
Compilation unsuccessful after building 40 targets (39 cached) in 00:00:00.
E: Failure("Command ''/usr/bin/ocamlbuild' src/gdfuse.native -tag debug' terminated with error code 10")
==> ERROR: A failure occurred in build().
Aborting...
:: failed to build google-drive-ocamlfuse package(s)
Yeah, obviously /usr/lib/ocaml/camlidl is empty except of a META file. I'm starting to feel like I'll break my system instead of making it more awesome.
Offline
Error: Cannot find file /usr/lib/ocaml/camlidl/com.cmxa
camlidl has that file in /usr/lib/ocaml folder .
I suggest you start from scratch and build all aur dependencies (about 11 i think ) in clean chroot .
I do think this will be easier if you put the builded packages in a local repo .
Disliking systemd intensely, but not satisfied with alternatives so focusing on taming systemd.
(A works at time B) && (time C > time B ) ≠ (A works at time C)
Offline