Console application + portable MySQL


#1

Hi, I am evaluating the trial version. My goal is to build a console application using the portable MariaDB.
However the MySQL Support button is greyed in the PHP Settings tab then I cannot activate this feature.

Is that a limitation of the trial or the console has disabled this useful feature?


#2

I found another trouble with the compilated exe. I loaded the libraries what I need (pdo_pgsql and pdo_sqlite) to the project but the execution throws the error:

PHP Warning: PHP Startup: Unable to load dynamic library ‘pdo_pgsql’ (tried: C:\mbsync\Data\ext\pdo_pgsql

But the library is precisely in that dir, it’s strange. Any configuration step that I missed maybe?
I tried loading the libraries from the Ext dir and compilating them directly into the exe with no results.


#3

Indeed, the MySQL portable server is currently not available for console applications. But, if many users want it, we will add it in the near future.


#4

This PHP extension requires a DLL dependency which is not provided with ExeOutput for PHP. This is why the extension is not properly loaded. You should place this one in the same folder as the EXE file:
LIBPQ.dll


#5

However ExeOutput created and put the library libpq.dll next to the compiled exe. This is an extract from the log:

Adding PHP runtime components

  • Php extensions
    o php_pdo_pgsql.dll copied to subfolder
    o dependency libpq.dll copied to subfolder
    o php_pdo_sqlite.dll copied to subfolder
  • php.ini
  • PHP ExeOutput extension
  • PHP opcache extension
  • ExeOutput internal extension

Is not valid that provided library?

Another tests that I did:

  • change in php.ini the extension_dir to the full path (without variables)
  • uncomment in php.ini the extension pdo_pgsql
  • change the Ext folder to a fixed path
  • compile the extension directly in the exe
  • test with the libpq.dll of a postgre 9.6 and a 11 version
  • add the folder of the libpq.dll to the enviromment PATH

All with identical result, it’s a bit frustrating


#6

I did another test and if create a GUI application seems that errors/warnings due to unallocated libraries are gone (although not fully tested).

Maybe the trial version could have a bug with the libraries load in the console exe generation?


#7

We have identified another problem indeed: the libpq.dll itself has dependencies to other DLLs that are provided with PHP. You must therefore copy and place these DLL files in the same directory as the .exe file too:

image


#8

Sadly I see the same error of unallocated library :pensive:
I tried infinite combinations of yours/php/pgsql libraries but always the same error message:

This application was built with ExeOutput for PHP TRIAL available at http://www.exeoutput.com
REDISTRIBUTION IS PROHIBITED: PURCHASE A LICENSE.

PHP Warning: PHP Startup: Unable to load dynamic library ‘php_pdo_pgsql.dll’ (tried: C:\Users\a\Documents\bicho\exe\Data\ext\php_pdo_pgsql.dll (%1 no es una aplicaci¾n Win32 vßlida.), C:\Users\a\Documents\bicho\exe\Data\ext\php_php_pdo_pgsql.dll.dll (No se puede encontrar el m¾dulo especificado.)) in Unknown on line 0


#9

Anyway, we put your bug report on our TODO list and we’ll try to reproduce the problem and fix it.