SuiteCRM 8 Beta - Install Questions

In Step 4 of installation, Running the Command from public/legacy path, it throws error as it would not find the library, Even after running composer update in root folder several times.

-bash: ./vendor/bin/pscss: No such file or directory

Here are the contents of vendor in root.

Hello everyone, I install suite8 according to the instructions
https://docs.suitecrm.com/8.x/developer/development-install-guide/.

But I already did it.

Hi @cherub-chum,

Thank you for the feedback once again.

From the error I imagine you’ve executed composer install with --no-dev on the legacy folder, right?

To run the ./vendor/bin/pscss you need to run just with composer install, as the pscss is a dev dependency.

Please try running composer install on the legacy folder (under public/legacy) and after that re-running the pscss command also under public/legacy.

Please let me know if you still have issues after that.

Also, I think that the reference to composer install --no-dev in the developer guide, may be misleading.

I’ve added a PR for removing that from the documentation and to add a note explaining that pscss was added as dev dependency

Hi @palach,

Thanks for for trying out SuiteCRM 8 and for your feedback.

In order to be able to help, just wanted to ask:

Are you installing from the repo? or from the package zip?

Have you run composer install on the Suite 8 folder and on the legacy folder (under public/legacy)?

Hello @clemente.raposo
Yes that was the issue, i was using --no-dev for install.
Moving forward in step 11 for ./bin/console suitecrm:app:install
i get
Already installed. Stopping
Is that due to repo checkout ?

For Step 12, reset permission, those are still on <Root>/public/legacy folder ?

Hi @cherub-chum,

Regarding the comments above:

When running the install command, and for the moment, it does a very simple check to try to understand if the system was already configured. It checks for the .env.local file. (we are going to improve this soon).
So your are getting the above message probably because of a previous attempt to run the install. Just remove the .env.local / .env.local.php and try again. Also, please make sure you have a clean db, before running the install, as the install adds the needed tables.

Please run them on the Suite 8 root folder (not on public/legacy) , to make sure everything gets the right permissions.

Please let me know if you still have issues after trying the above.

Is there any install log for the process?
I am using socket on my Localhost MAMP installation, which might be an issue since the Suite App Install only asks for username/password and the URL.

Hi @cherub-chum,

yes that is a good point, regarding the socket, which kind of configuration do you usually use when setting up Suite 7?

Regarding the log. Please check on public/legacy/suitecrm.log.

The install command after adding the Suite 8 side configuration, calls the silent install on legacy. Legacy is handling the bulk of the install process and it should log to suitecrm.log, if I’m not mistaken.

Hi @cherub-chum,

@Matt reminded me that there should also be an public/legacy/install.log.

Thanks @Matt

1 Like

public/legacy/suitecrm.log has

Could not connect to DB server localhost as root. port : No such file or directory

And the db is empty no Tables created.

Suite7 Config has no Port or Socket mentioned that i checked.

Thanks I mack composer install in public/legacy and suiteCRM8 installed success.

Hi Guys,
I am trying to install v8 on Ubuntu v20.10 server but during the installation process I get the message:

‘Attempted to call function "mysql_connect’ from the global namespaces.’

My configuration:
Apache 2.4
PHP 7.4 and 8
mySQL 8 .0.23

Is the function ‘mysql_connect’ not from old php versions ? Where did it get here ?
Thanks for help.
sla

Hi @sla,

Welcome to the community and thank you for trying out Suite 8.

Also, sorry for the delay in replying, we are on a quite busy period at the moment.

Regarding the above question, Suite 8, at the moment still relies on Suite 7 for many things.

More details

just a bit of context:
For several reasons among them backwards compatibility reasons, Suite 8 still relies for a good part of the backend on the Suite 7. Suite 8 “contains” an Suite7 within it on the public/legacy folder and it uses a concept called “Legacy Handlers” to call suite 7 for whatever it needs.

Though the only place I see we are using the mysql_connect is in public/legacy/include/database/MysqlManager.php. Though preferably we should be using MysqliManager instead.

Do you have mysqli php module installed?

More details

The code on legacy is doing the following:
public/legacy/include/database/DBManagerFactory.php

    if (empty($config['db_manager'])) {
        // standard types
        switch ($type) {
            case "mysql":
                if (empty($sugar_config['mysqli_disabled']) && function_exists('mysqli_connect')) {
                    $my_db_manager = 'MysqliManager';
                } else {
                    $my_db_manager = "MysqlManager";
                }
                break;

Finally, thank you for bringing this up.

@Mac-Rae we need to add the list of required php modules to the Suite 8 documentation - Compatibility matrix

@Matt FYI. Probably something we need to look at, though I think we need to drop support for MysqlManager on php 8

Hi @cherub-chum,

Could you try with a connection without using the socket to check if it works, please?

We need to look into configuration for socket connection.

Hi Guys!

Just fixed the installation and now I’m workin on this issue for hours :sob:. What I’m doing wrong?

Some of the variables don’t seem to reach the legacy module and I can’t imagin why.

Anyone here who can help me plz? Thx.

Hi @m.teufel

Welcome to the community and thanks for trying out SuiteCRM 8 Beta.

During debugging have you enabled error reporting?

That kind of error usually shows when you have display_errors set to true.

You should be able to change this on php.ini

Have a look at the following threads they may help:

Hope this helps

1 Like

Thank you very much! Switching display_errors=off in php.ini solved the issue.

Hello,

I have a problem with the connexion of my suitecrm :sweat_smile:

I have access to the DB and I know my username and my password.

Its strange because when I use this like, It works, but I don’t get the css.

/public/legacy/index.php?action=Login&module=Users

3

And when I use

/public/#/Login

i can’t connect but the css works

Cordialy

Hi @Robin17

Thank you for trying out SuiteCRM 8 and for the feedback.

From the errors you are getting I imagine you have installed from the repo? and not from the pre-bundled package zip, is that correct?

Regarding the issues described:

1. CSS issue
From the issue description it seems that the legacy theme css hasn’t been built.

To fix this issue you should only need to build the legacy them sass. for that follow step 3) and 4) of the Development install guide:

  1. Run composer install in legacy directory (/public/legacy )
  2. Run legacy theme compile in the legacy directory (/public/legacy )
  • NOTE: the ./vendor/bin/pscss is added as a composer dev dependency, so you need to run composer install without --no-dev
./vendor/bin/pscss -f compressed themes/suite8/css/Dawn/style.scss > themes/suite8/css/Dawn/style.css

2. Login issue

Things to check:

  1. Check that you have executed:
    • composer install on Suite 8 root folder
    • composer install on legacy folder (public/legacy)
  2. Check that the db config is correct on legacy config config.php
  3. Check that the db config is correct on env.local on Suite8 root folder

If the above don’t work, could you please send a screenshot of the graqhql requests on the network tab that have an error (either a 500 or an error on the response body)? that can help in finding the root cause.

I am trying without any socket, getting following message in log.

Could not connect to DB server localhost as root. port : No such file or directory