Hi - TL;DR: Is it possible to do a minimal or "bare-bones" deployment *without* building & installing the Ur/Web compiler on the *remote* machine - eg, simply by manually copying the /usr/local/libliburweb_* files (plus /usr/local/lib/urweb/js/urweb.js) to the remote machine - while of course also taking care to preserve the same owners/groups, permissions and symlinks?
--- I would like to deploy a compiled Ur/Web executable to a remote machine (running Debian 8 Jessie), *without* building & installing the Ur/Web compiler on that remote machine, for two reasons: - Ur/Web executables have low RAM usage, so I'd like the smallest/cheapest VPS possible during testing; - compiling on a local machine with more RAM would provide better efficiency and privacy. Both the local and the remote machines have an identical "base" setup: - Debian 8 Jessie; - Postgres 9.4 (with a Linux/Postgres user scott, with the same local/remote Postgres password) The local and remote machines differ as follows: - the local machine has 4 GB RAM, and runs the Ur/Web compiler; - the remote machine has only 1 GB RAM, and should not run the Ur/Web compiler. Now when I try to run the Ur/Web executable on the remote machine: $ ./myProgram.exe it gives the error: ./myProgram.exe: error while loading shared libraries: liburweb_http.so.0: cannot open shared object file: No such file or directory --- Inspecting /usr/local/lib on the local machine, I see the `liburweb_*` shared libraries listed at the end of this message, plus /usr/local/lib/urweb/js/urweb.js. [See Note 1] Maybe only those files are needed for deployment? Of course, it would also be important to take into consideration the owners/groups, permissions and symlinks. If someone could confirm that I could deploy remotely simply by *manually* reconstructing this same /usr/local/lib directory structure on the remote machine - including /usr/local/lib/urweb/js/urweb.js (while maintaining the symlinks, owners/groups and permissions), then I'd actually go ahead and try it this way - since I prefer to develop and compile locally and only deploy remotely. Thanks for any help! --- [Note 1] libs currently on local machine scott@debian-local:~$ ls -al /usr/local/lib total 1140 -rw-r--r-- 1 root staff 465652 liburweb.a -rw-r--r-- 1 root staff 30242 liburweb_cgi.a -rwxr-xr-x 1 root staff 1035 liburweb_cgi.la lrwxrwxrwx 1 root staff 21 liburweb_cgi.so -> liburweb_cgi.so.0.0.0 lrwxrwxrwx 1 root staff 21 liburweb_cgi.so.0 -> liburweb_cgi.so.0.0.0 -rwxr-xr-x 1 root staff 23248 liburweb_cgi.so.0.0.0 -rw-r--r-- 1 root staff 78490 liburweb_fastcgi.a -rwxr-xr-x 1 root staff 1063 liburweb_fastcgi.la lrwxrwxrwx 1 root staff 25 liburweb_fastcgi.so -> liburweb_fastcgi.so.0.0.0 lrwxrwxrwx 1 root staff 25 liburweb_fastcgi.so.0 -> liburweb_fastcgi.so.0.0.0 -rwxr-xr-x 1 root staff 48456 liburweb_fastcgi.so.0.0.0 -rw-r--r-- 1 root staff 72456 liburweb_http.a -rwxr-xr-x 1 root staff 1042 liburweb_http.la lrwxrwxrwx 1 root staff 22 liburweb_http.so -> liburweb_http.so.0.0.0 lrwxrwxrwx 1 root staff 22 liburweb_http.so.0 -> liburweb_http.so.0.0.0 -rwxr-xr-x 1 root staff 45128 liburweb_http.so.0.0.0 -rwxr-xr-x 1 root staff 980 liburweb.la lrwxrwxrwx 1 root staff 17 liburweb.so -> liburweb.so.0.0.0 lrwxrwxrwx 1 root staff 17 liburweb.so.0 -> liburweb.so.0.0.0 -rwxr-xr-x 1 root staff 311000 liburweb.so.0.0.0 -rw-r--r-- 1 root staff 16690 liburweb_static.a -rwxr-xr-x 1 root staff 1056 liburweb_static.la lrwxrwxrwx 1 root staff 24 liburweb_static.so -> liburweb_static.so.0.0.0 lrwxrwxrwx 1 root staff 24 liburweb_static.so.0 -> liburweb_static.so.0.0.0 -rwxr-xr-x 1 root staff 16080 liburweb_static.so.0.0.0 drwxrwsr-x 4 root staff 4096 python2.7 drwxrwsr-x 3 root staff 4096 python3.4 drwxr-sr-x 7 root staff 4096 urweb --- [Note 2] libs currently on remote machine scott@debian-remote:~$ ls -l /usr/local/lib total 8 drwxrwsr-x 4 root staff 4096 python2.7 drwxrwsr-x 3 root staff 4096 python3.4 ###
_______________________________________________ Ur mailing list [email protected] http://www.impredicative.com/cgi-bin/mailman/listinfo/ur
