What I usually do is the following:

1) As root, I create the file: "/etc/ld.so.conf.d/my_rivet.conf"
I like adding my_ in front of names, to distinguish them from the ones put there by the system.

2) Write a single line into this file, the following:
/opt/ActiveTcl-8.6/lib

3) Save the file /etc/ld.so.conf.d/my_rivet.conf

4) As root, run ldconfig

5) Restart your apache.

Now, apache will be always able to find libtcl.so!

George

Στις 8/10/2018 22:57, ο Jeff Lawson έγραψε:
It sounds like the ActiveTcl you are trying to use cannot be found when Apache is trying to load Rivet.

You can try running "ldd /usr/lib64/httpd/modules/mod_rivet.so" to confirm that it is having problems finding that library dependency.

You might be able to resolve it by adding "-rpath /opt/ActiveTcl-8.6/lib" to the linker options during the configure of Rivet.

On Mon, Oct 8, 2018 at 2:49 PM Jared Pkgsrc <jared.pkg...@gmail.com <mailto:jared.pkg...@gmail.com>> wrote:

    Hi all,

    httpd fails to start after compiling and installing mod_rivet.so,
    modifying httpd.conf, and trying "systemctl start httpd". After
    running "systemctl status httpd.service", I see the following error
    reported:

    ● httpd.service - The Apache HTTP Server
       Loaded: loaded (/usr/lib/systemd/system/httpd.service; disabled;
    vendor preset: disabled)
       Active: failed (Result: exit-code) since Fri 2018-10-05 12:12:46
    EDT; 21min ago
         Docs: man:httpd(8)
               man:apachectl(8)
      Process: 4733 ExecStop=/bin/kill -WINCH ${MAINPID} (code=exited,
    status=1/FAILURE)
      Process: 4724 ExecStart=/usr/sbin/httpd $OPTIONS -DFOREGROUND
    (code=exited, status=1/FAILURE)
     Main PID: 4724 (code=exited, status=1/FAILURE)

    Oct 05 12:12:46 localhost.localdomain systemd[1]: Starting The Apache
    HTTP Server...
    Oct 05 12:12:46 localhost.localdomain httpd[4724]: httpd: Syntax error
    on line 56 of /etc/httpd/conf/httpd.conf: Cannot load
    /usr/lib64/httpd/modules/mod_rivet.so into server: libtcl8.6.so
    <http://libtcl8.6.so>:
    cannot open shared object file: No such file or directory
    Oct 05 12:12:46 localhost.localdomain systemd[1]: httpd.service: main
    process exited, code=exited, status=1/FAILURE
    Oct 05 12:12:46 localhost.localdomain kill[4733]: kill: cannot
    find process ""
    Oct 05 12:12:46 localhost.localdomain systemd[1]: httpd.service:
    control process exited, code=exited status=1
    Oct 05 12:12:46 localhost.localdomain systemd[1]: Failed to start The
    Apache HTTP Server.
    Oct 05 12:12:46 localhost.localdomain systemd[1]: Unit httpd.service
    entered failed state.
    Oct 05 12:12:46 localhost.localdomain systemd[1]: httpd.service
    failed.

    The error message refers to line 56 of httpd.conf.  Here are lines
    56-58.

    LoadModule rivet_module modules/mod_rivet.so
    AddType application/x-httpd-rivet rvt
    AddType application/x-rivet-tcl tcl

    I seemed to have no trouble compiling and installing rivet from
    source.  I started with the following configure:

    ./configure --with-tcl=/opt/ActiveTcl-8.6/lib
    --with-tclsh=/opt/ActiveTcl-8.6/bin/tclsh8.6 --with-apxs=/usr/bin/apxs
    --with-apache=/usr/lib64/httpd

    And then make; make install.

    mod_rivet.so does exist in /usr/lib64/httpd/modules, so it seems like
    everything went fine.

    I suspect that I not understanding something very basic.  Does anybody
    have a suggestion?

    Thank you,
    Jared

    ---------------------------------------------------------------------
    To unsubscribe, e-mail: rivet-dev-unsubscr...@tcl.apache.org
    <mailto:rivet-dev-unsubscr...@tcl.apache.org>
    For additional commands, e-mail: rivet-dev-h...@tcl.apache.org
    <mailto:rivet-dev-h...@tcl.apache.org>


Reply via email to