SuiteCRM Installation Problem on Ubuntu22.04

I get this error on installing Suitecrm on ubuntu22.04

PHP Fatal error: Uncaught Error: Failed opening required ‘custom\include\SugarEmailAddress\SugarEmailAddress.php’ (include_path=‘/var/www/html/crm/test:/var/www/html/crm/test/include/…:.:/usr/share/php’) in /var/www/html/crm/test/install/performSetup.php:211\nStack trace:\n#0 /var/www/html/crm/test/install.php(828): require()\n#1 {main}\n thrown in /var/www/html/crm/test/install/performSetup.php on line 211, referer: http://localhost/crm/test/install.php

php-version: 8.2.21
Mysql: mysql Ver 8.0.37-0ubuntu0.22.04.3
Suitecrm: 7.14.3

This works fine in ubuntu18, but not here.
Any help here would be really appericiated!

Looks like permission issue. Could you please set correct permissions?

Set the correct permissions on the SuiteCRM directory (Linux)

sudo chmod -R 755 .
sudo chmod -R 775 cache custom modules themes data upload
sudo chmod 775 config_override.php 2>/dev/null

Thanks a lot for your reply, the permisions are set correctly, earlier the issue was with custom\modules\Users\authentication\SugarAuthenticate\FactorAuthFactory.php,if you look here its trying to require_once this file, where in the slash should be custom/modules/Users/authentication/SugarAuthenticate/FactorAuthFactory.php, I changed this manually, just to see if this will solve the problem

foreach ($beanFiles as $bean => $file) {
    error_log('*************openingFile:'.$file.'***************************');
    if ($file == 'custom\\modules\\Users\\authentication\\SugarAuthenticate\\FactorAuthFactory.php'){
        require_once('custom/modules/Users/authentication/SugarAuthenticate/FactorAuthFactory.php');
    } else {
        require_once($file);
    } 
    
}

now I’ve issue with require_once of the SugarEmailAddress.php file

Compare your code with this:

SugarEmailAddress.php

I’ve this file in custom as well as in core->include

Maybe your custom code has an issues:

FactorAuthFactory.php

I think the issue is the way its trying to include the file,

error_log('*************openingFile:'.$file.'***************************');
    if ($file == 'custom\\modules\\Users\\authentication\\SugarAuthenticate\\FactorAuthFactory.php'){
        require_once('custom/modules/Users/authentication/SugarAuthenticate/FactorAuthFactory.php');
    } else {
        require_once($file);
    } 

why are the \\ not prsed correctly, what changed from Ubuntu18 to Ubuntu22, bcoz the same code base works in ubuntu18, with php7.4

Maybe you forgot to install some php module for 8.2 or forgot to enable something in php.ini file

install_required_php_modules

thank you, tried it still the same error :frowning:

Are you installing new SuiteCRM on the system? You could try installing 7.14.4.

I have to upgrade my customers system. It was in 7.11.6, In Ubuntu18 I upgraded it to 7.11.23, then to 7.12.8 n then to 7.14.3. I also have to move to ubuntu 22 with php8.2 and mysql 8. So I took the upgraded codebase and tried to install it in ubuntu22 with
php-version: 8.2.21
Mysql: mysql Ver 8.0.37-0ubuntu0.22.04.3
Suitecrm: 7.14.3
And the installation always runs into an error. The one that I mentioned :frowning: I really need some help to move forward

Maybe you need to do 7.12.x to 7.13.x first.

upgrades

That file giving the original error is a file under custom directory which means it is not a core file.

You should try to figure out who is looking for that file… is it some custom code you have? or is it maybe an add-on?