PHP não encontra classe

Boa noite galera! Estou com problemas no meu ambiente de desenvolvimento e produção. Estou rodando tudo no Kubuntu 19.04, instalação no PC e VM, mas com sérios problemas com um sistema desenvolvido em PHP no Windows usando o Xampp.

Obs. 1: Já pesquisei na internet o que poderia ser, mas não encontrei uma solução;
Obs. 2: Já revirei o código e mesmo assim não funciona, até coloquei require_once e o erro passou para a conexão com o BD.

Código da página index:

<?php
session_start();
require 'config.php';
define('BASE_URL', 'http://192.168.1.104/ivan');
spl_autoload_register(function ($class){
    if(strpos($class, 'Controller') > -1){
        if(file_exists('controllers/'.$class.'.php')){
            require_once 'controllers/'.$class.'.php';
        }
    }elseif(file_exists('models/'.$class.'.php')){
        require_once 'models/'.$class.'.php';
    }elseif(file_exists('core/'.$class.'.php')){
        require_once 'core/'.$class.'.php';
    }
});
$core = new Core();
$core->run();

?>

Print do erro.

Se possível, posta o conteúdo do homeController.php, pois o erro aponta para esse arquivo.

Segue o código.

Só uma observação, esse código roda direito no Windows, mas só no Linux ele apresenta erro. Acredito que exista algo nos arquivos de

<?php
class homeController extends controller{
    public function __construct(){
        parent::__construct();
    }
    public function index(){
        $dados = array();
        /*  INICIO _ BUSCA A DATA PARA VERIFICAR SE JÁ FOI GERADO O DEBITO   */
        //1º - PEGANDO MÊS E ANO PARA GERAR A COBRANÇA E ANALISE DOS DADOS
        $mes_a = date('m');
        $ano_a = date('Y');
        $npg = 'np';
        //2º - PEGAR O DIA DO VENCIMENTO DOS CLIENTES
        $cli = new cliente;
        $retorno = $cli->geraDebClu($mes_a, $ano_a);
        $clu = new clube();
        //3º - SALVAR OS VALORES NA TABELA NO BD E COLOCAR NP NA TABELA DO CLIENTE
        foreach ($retorno as $ret){
            //4º - VERIFICA SE JÁ EXISTE A COBRANÇA NO BD
            $idcli = $ret['id_cli'];
            $idclu = $ret['clube_cli'];
            $dtvenc = $ret['dtvenc_cli'].'/'.$mes_a.'/'.$ano_a;
            $t1 = $clu->getDtByIdCli($idcli, $idclu, $dtvenc);
            if($t1==0){
                //5º - VERIFICA SE JÁ EXISTE O ID NO BANCO
                do{
                    $id = mt_rand(1,999999);
                    $nid = $id.'_'.$mes_a.'_'.$ano_a;
                    $clu->getAbById($nid);
                }while($clu == FALSE);
                //6º - ADD NA TABELA DE MENSALIDADES EM ABERTO
                $clu->addAb($nid, $idcli, $idclu, $dtvenc);
                //7º - ATUALIZA O STATUS DE NÃO PAGO NA TABELA CLIENTE
                $cli->upInfoClu($idcli);
            }
        }
        /*  FIM _ BUSCA A DATA PARA VERIFICAR SE JÁ FOI GERADO O DEBITO   */
        /*  INICIO _ BUSCA DEBITO JÁ PAGO PARA LIMPAR TABELA   */
        $retorno = $clu->busConPg();
        //print_r($retorno);
        foreach ($retorno as $ret){
            $dt_ab = explode("/",$ret['dt_ab']);
            $m_ab = $dt_ab[1];
            $a_ab = $dt_ab[2];
            if($m_ab<$mes_a || $a_ab <=$ano_a && $ret['stpg_ab'] == 1){
                //DROP
                $clu->dropAb($ret['id_ab']);
            }
        }
        /*  FIM _ BUSCA DEBITO JÁ PAGO PARA LIMPAR TABELA   */
        #1º - teste se existe dados via POST;
        #2º - teste se existe a SESSION para abrir o sistema.
        $dados['aberto'] = $clu->openClu();
        if((isset($_POST['usuario']) && isset($_POST['senha'])) && (!empty($_POST['usuario']) && !empty($_POST['senha']))){
            $usuario = addslashes($_POST['usuario']);
            $senha = addslashes($_POST['senha']);
            $u = new usuario();
            if($u->getLogin($usuario, $senha)){
                header("Location: ".BASE_URL."/home");
                //$this->loadTemplate('home', $dados);
            }else{
                $dados['aviso'] = "Usuário não localizado!";
            }
        }
        if(isset($_SESSION['usuario']) && $_SESSION['usuario'] != 0 && !empty($_SESSION['usuario'])){
            $this->loadTemplateOnline('home', $dados);
        }else {
            $this->loadTemplate('login', $dados);
        }
    }
    public function logout(){
        #$dados = array();
        unset($_SESSION['usuario']);
        //echo '<script> location.replace("'.BASE_URL.'/") </script>';
        header("Location: ".BASE_URL."/");
    }
}