[horde] New Install - Cannot autoload Horde Core libraries

Erling Preben Hansen erling at eph.dk
Sun Jun 28 23:06:24 UTC 2015


  Citat af "L. D. James" <ljames at apollo3.com>:

> On 06/28/2015 10:19 AM, Michael J Rubinsky wrote:
>> Quoting L. D. James <ljames at apollo3.com>:
>>
>>> On 06/28/2015 09:09 AM, Michael J Rubinsky wrote:
>>>> Quoting L. D. James <ljames at apollo3.com>:
>>>>
>>>>> I performed a fresh install (numbers of times) using the link
>>>>> http://www.horde.org/apps/horde/docs/INSTALL under the section, 3.1
>>>>> Installing with PEAR.
>>>>>
>>>>> Each time I try to access the site I get this error message:
>>>>>
>>>>> Cannot autoload Horde Core libraries. Please reinstall Horde and/or
>>>>> correctly configure the install paths. If you are using an
>>>>> autoloader cache, try to clear it.
>>>>>
>>>>> I performed a number of fresh installs using the following options:
>>>>>
>>>>> pear install -a -B horde/horde
>>>>>
>>>>> pear install horde/horde
>>>>>
>>>>> pear install -a horde/horde
>>>>>
>>>>> I can't find in the docs where I'm to go to set the install paths.
>>>>>
>>>>> Thanks in advance for anyone who has insight on how to resolve this
>>>>> error.
>>>>>
>>>>> The server is Ubuntu 14.04.
>>>>
>>>> Things to check:
>>>>
>>>> Have you installed the Horde/Horde_Role package and run the role
>>>> script?
>>>>
>>>> Check that your php include_path includes the path that the horde
>>>> libraries were installed to (you can check what this path is if you
>>>> don't know by using pear config-show
>>>
>>> Thanks, Michael.  I ran the pear prerequisites from the documentation
>>> (channel-discover pear.horde.org; install horde/horde_role;
>>> run-scripts horde/horde_role).  I see the problem from your
>>> "config-show" suggestion.  I'm sure the main culprit is the missing
>>> path for the php.ini.
>>>
>>> This is my current output from the command:
>>> --------------------------------------------------------------------
>>> config-show
>>> CONFIGURATION (CHANNEL PEAR.PHP.NET):
>>> =====================================
>>> Auto-discover new Channels     auto_discover    <not set>
>>> Default Channel                default_channel  pear.php.net
>>> HTTP Proxy Server Address      http_proxy       <not set>
>>> PEAR server [DEPRECATED]       master_server    pear.php.net
>>> Default Channel Mirror         preferred_mirror pear.php.net
>>> Remote Configuration File      remote_config    <not set>
>>> PEAR executables directory     bin_dir /opt/pear/local/pear
>>> PEAR documentation directory   doc_dir /opt/pear/local/pear/docs
>>> PHP extension directory        ext_dir /opt/pear/local/pear/ext
>>> Base Horde directory           horde_dir       
/var/www/horde
>>> PEAR directory                 php_dir
/opt/pear/local/pear/php
>>> PEAR Installer cache directory cache_dir /opt/pear/local/pear/cache
>>> PEAR configuration file        cfg_dir /opt/pear/local/pear/cfg
>>> directory
>>> PEAR data directory            data_dir /opt/pear/local/pear/data
>>> PEAR Installer download        download_dir
>>> /opt/pear/local/pear/download
>>> directory
>>> PHP CLI/CGI binary             php_bin         
/usr/bin/php
>>> php.ini location               php_ini
/etc/php5/apache2/php.ini
>>> --program-prefix passed to     php_prefix       <not set>
>>> PHP's ./configure
>>> --program-suffix passed to     php_suffix       <not set>
>>> PHP's ./configure
>>> PEAR Installer temp directory  temp_dir /opt/pear/local/pear/temp
>>> PEAR test directory            test_dir
/opt/pear/local/pear/tests
>>> PEAR www files directory       www_dir /opt/pear/local/pear/www
>>> Cache TimeToLive               cache_ttl        3600
>>> Preferred Package State        preferred_state  stable
>>> Unix file mask                 umask            2
>>> Debug Log Level                verbose          1
>>> PEAR password (for             password         <not set>
>>> maintainers)
>>> Signature Handling Program     sig_bin          /usr/bin/gpg
>>> Signature Key Directory        sig_keydir       /etc/pearkeys
>>> Signature Key Id               sig_keyid        <not set>
>>> Package Signature Type         sig_type         gpg
>>> PEAR username (for             username         <not set>
>>> maintainers)
>>> User Configuration File        Filename /opt/pear/local/pear.conf
>>> System Configuration File      Filename         /etc/pear.conf
>>> --------------------------------------------------------------------
>>>
>>> I change:
>>>
>>> php_ini from <not set> to  /etc/php5/apache2/php.ini
>>> horde_dir from /usr/share/php/www/horde to /var/www/horde
>>
>> You must make sure the php include_path is set to the pear php_dir. Use
>> Horde's test.php to show the php info page and make sure it's set
>> properly.
>>
>>> Do you see anything else that is obvious misconfigured?
>>>
>>> I used the (section 3.2) Installing into separte PEAR option, because
>>> I couldn't get past the pear run-scripts horde/horde_role with the
>>> default pear install.
>>
>> This is *extremely* easy to muck up. Make sure you have run ALL
>> commands using the custom pear binary and configuration and not the
>> system installed one. I.e., don't just type "pear <command>" you must
>> use the /path/to/my/custom/pear etc... E.g., the config-show command
>> you show above looks like it might have been done using the system pear.
>
> Thanks, Michael.  I had assumed that.  I was very careful not to use
the
> system pear.  I thought this would happen by following the steps in
> section 3.2 Installing into a separate PEAR.
>
> In order to make sure that I didn't make a mistake and run the wrong
> pear, I made a script called "mypear" which I used for performing all
> the commands.  The script is:
>
> -----------------------------------
> #!/bin/bash
>
> # /var/www/horde/pear/pear -c /var/www/horde/pear.conf $*
> /opt/pear/local/pear/pear -c /opt/pear/local/pear.conf $*
> -----------------------------------
>
> The commented out command is from one of the other fresh installs (in a
> different location).  I don't know where the /usr/share/php/www/horde
> comes from
>
> I'll clean out this new install and try it some more, being as careful
> as possible to keep everything separate.  If you have any suggestions of
> something that might be missing from section 3.2 to keep the install
> separate, I would appreciate any input.
>
> Thanks!
>
> -- L. James
>
> --
> L. D. James
> ljames at apollo3.com
> www.apollo3.com/~ljames[1]
> --
> Horde mailing list
> Frequently Asked Questions: http://horde.org/faq/To unsubscribe, mail:
> horde-unsubscribe at lists.horde.org

Hey

For those using ubuntu 14.04 server...
The new defaults for pear is to set permissions to root:root 750 on all
pear directories and 640 on files.
This will prevent the webserver from accessing pear files.
The fix is to change pear umask to 0022 so that "others" or "world" get
read access to pear.
This is a change from 12.04 to 14.04.
I have to go through my notes to remember exactly what i did to get it
working.

Further more:
Ubuntu had some pear unpacking trouble. I don't know if this is solved yet.
I had to use the pear -Z switch to get everything to install and update
properly.
So "pear install -Z -a -B something" is the safe way to do it.

/erling

Links:
------
[1] http://www.apollo3.com/~ljames


More information about the horde mailing list