CentOS v7 - PHP Fatal error: Call to undefined function perfil_lib()

The obligatory error:

[Mon Nov 28 14:57:27.468228 2016] [:error] [pid 25268] [client {CLIENTIP}:58296] PHP Fatal error:  Call to undefined function perfil_lib() in /path/to/scriptcase/project/webroot/menu_application/index.php on line 582, referer: https://centos7.website.com/menu_application/menu_application_form_php.php?sc_item_menu=item_13&sc_apl_menu=inventory-items-list&sc_apl_link=%2F&sc_usa_grupo=

This occurred with an existing project when I migrated it from a web server running CentOS v6.

Old Web Server:

[B]uname -a: [/B]Linux centos6.website.local 2.6.32-642.11.1.el6.x86_64 #1 SMP Fri Nov 18 19:25:05 UTC 2016 x86_64 x86_64 x86_64 GNU/Linux
[B]php version: [/B]PHP 5.6.28 (cli) (built: Nov 10 2016 21:09:50) Copyright (c) 1997-2016 The PHP Group Zend Engine v2.6.0, Copyright (c) 1998-2016 Zend Technologies with Zend OPcache v7.0.6-dev, Copyright (c) 1999-2016, by Zend Technologies with Xdebug v2.4.1, Copyright (c) 2002-2016, by Derick Rethans

New Web Server:

[B]uname -a: [/B]Linux centos7.website.local 3.10.0-327.36.1.el7.x86_64 #1 SMP Sun Sep 18 13:04:29 UTC 2016 x86_64 x86_64 x86_64 GNU/Linux
[B]php version: [/B]PHP 5.5.38 (cli) (built: Jul 21 2016 12:25:20) Copyright (c) 1997-2015 The PHP Group Zend Engine v2.5.0, Copyright (c) 1998-2015 Zend Technologies with Zend OPcache v7.0.6-dev, Copyright (c) 1999-2015, by Zend Technologies

Any idea why the function perfil_lib does not work on CentOS 7?

I tried clearing the /opt/NetMake/v8/wwwroot/scriptcase/tmp folder on my dev server, then re-generating my project, and re-deploying it to the CentOS 7 web server. No luck, same result.

I even tried clearing out the destination folder on the CentOS 7 folder first and doing the above again. Same exact problem. But if I deploy the generated code to my original CentOS 6 server, it works like a charm, and that server even has a newer version of PHP on it than the CentOS 7 one does (5.6 vs 5.5). Usually PHP gets more restrictive as time goes on, not the other way around.

Thanks in advance, for any help! For now, I’ll keep this app on CentOS 6.8 if no one has a good explanation!

I had it this weekend on an earlier Centos, when I tested on another server. I saw something here which is I used google translate for translated from : http://www.scriptcase.com.br/forum/index.php?topic=6840.0

I resolved it by deleting the tmp folder and rebuilding the whole application. Also, not sure if it is part of the issue, I upgraded my PHP to be 5.6 beforehand as well. I noticed yours is 5.5.

Yep, unfortunately I tried that. The instructions are not 100% clear – do I delete the /tmp folder from my ScriptCase development server, or the /tmp folder from my project? I did both, just to be comprehensive. So I deleted:

/opt/NetMake/v8/wwwroot/scriptcase/tmp - on my scriptcase development server, and then
/home/project/website/wwwroot/_lib/tmp - on my production server (in fact, I deleted everything from wwwroot down recursively to make sure I was getting a clean deployment)

No luck.

I think this is going to become a bigger issue that the scriptcase dev team is going to have to address. The steps to recreate the problem seem to be easy – just deploy a known working project to a CentOS 7 server using PHP 5.5.x or higher and the problem will present itself.

Thanks for the response!