Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > it.comp.www.php > #21382 > unrolled thread

modulo Firebird/Interbase per php su Linux

Started byMichele <michele.giordano@parolescritte.it>
First post2017-01-19 19:45 +0100
Last post2017-02-04 22:12 +0100
Articles 11 — 3 participants

Back to article view | Back to it.comp.www.php


Contents

  modulo Firebird/Interbase per php su Linux Michele <michele.giordano@parolescritte.it> - 2017-01-19 19:45 +0100
    Re: modulo Firebird/Interbase per php su Linux Leonardo Serni <lserni@gmail.com> - 2017-01-20 00:10 +0100
      Re: modulo Firebird/Interbase per php su Linux Michele <michele.giordano@parolescritte.it> - 2017-01-20 11:16 +0100
        Re: modulo Firebird/Interbase per php su Linux Leonardo Serni <lserni@gmail.com> - 2017-01-20 19:59 +0100
          Re: modulo Firebird/Interbase per php su Linux Michele <michele.giordano@parolescritte.it> - 2017-01-20 20:42 +0100
      Re: modulo Firebird/Interbase per php su Linux Alessandro Pellizzari <shuriken@amiran.it> - 2017-01-20 11:15 +0000
        Re: modulo Firebird/Interbase per php su Linux Michele <michele.giordano@parolescritte.it> - 2017-01-20 15:14 +0100
          Re: modulo Firebird/Interbase per php su Linux Alessandro Pellizzari <shuriken@amiran.it> - 2017-01-20 16:25 +0000
            Re: modulo Firebird/Interbase per php su Linux Michele <michele.giordano@parolescritte.it> - 2017-01-20 20:58 +0100
              Re: modulo Firebird/Interbase per php su Linux Alessandro Pellizzari <shuriken@amiran.it> - 2017-01-20 21:43 +0000
      Re: modulo Firebird/Interbase per php su Linux Michele <michele.giordano@parolescritte.it> - 2017-02-04 22:12 +0100

#21382 — modulo Firebird/Interbase per php su Linux

FromMichele <michele.giordano@parolescritte.it>
Date2017-01-19 19:45 +0100
Subjectmodulo Firebird/Interbase per php su Linux
Message-ID<op.yubs2tjdbkvoja@sergej.station>
Buongiorno a tutti.

Ho un Firebird 3.0.1 installato su Linux Ubuntu 16.04.1 LTS.
Se provo ad installare il modulo Firebird/Interbase per php:

   apt-get update;
   apt-get install php7.0-interbase;
   service apache2 restart;

alla richiesta di phpinfo() ottengo:

   Run-time Client Library Version: LI-V6.3.4.26856 Firebird 2.5

e le query non funzionano:

   Warning: ibase_connect(): connection rejected by remote interface in...  
ecc. ecc.

Come faccio a ottenere:

   Run-time Client Library Version: WI-V6.3.1.32609 Firebird 3.0

(Ho ricopiato la riga da una funzionante installazione su Windows).

Grazie.

-- 
Michele Giordano
parolescritte.it

[toc] | [next] | [standalone]


#21383

FromLeonardo Serni <lserni@gmail.com>
Date2017-01-20 00:10 +0100
Message-ID<q7h28cdgd5sseb39el3lmtbqolnsci9403@L.Serni>
In reply to#21382
On Thu, 19 Jan 2017 19:45:55 +0100, Michele <michele.giordano@parolescritte.it> wrote:

>Ho un Firebird 3.0.1 installato su Linux Ubuntu 16.04.1 LTS.
>Se provo ad installare il modulo Firebird/Interbase per php:

>   apt-get update;
>   apt-get install php7.0-interbase;
>   service apache2 restart;

>alla richiesta di phpinfo() ottengo:

>   Run-time Client Library Version: LI-V6.3.4.26856 Firebird 2.5

OK, php7.0-interbase per motivi non chiari si porta dietro firebird2.5-common.

D'altra parte se lì c'è Firebird 3.0.1 c'è da sperare che da qualche parte una libfbclient.so.3.x
a cercare bene ci sia.

Quindi, in obbedienza ai sani principi di Vlad Tepes - che era voivoda di Valacchia, mica pizza e
fichi - io proverei (da root, perché i veri danni si fanno così):

    cd /usr/lib/x86_64-linux-gnu
    mv libfbclient.so.2.5.4 libfbclient.so.2.5.4.bak
    rm -f libfbclient.so.2.5
    rm -f libfbclient.so.2
    find / -name "libfbclient.so.3.*"

    # Diciamo che la trovi in /usr/local/firebird/lib/libfbclient.so.3.0.1

    cp /usr/local/firebird/lib/libfbclient.so.3.0.1 .
    ln libfbclient.so.3.0.1 libfbclient.so.2.5.4    # Questo perché sisammai ldconfig
    ln -s libfbclient.so.3.0.1 libfbclient.so.2.5
    ln -s libfbclient.so.2.5 libfbclient.so.2

e vedi che succede. Alla peggio, il file ".bak" è disponibile.

Leonardo
-- 

A terrible beauty is born.
                                     - W. B. Yeats, Easter 1916

[toc] | [prev] | [next] | [standalone]


#21384

FromMichele <michele.giordano@parolescritte.it>
Date2017-01-20 11:16 +0100
Message-ID<op.yucz52mhbkvoja@sergej.station>
In reply to#21383
	In data  gennaio 2017 alle ore 00:10:37, Leonardo Serni  
<lserni@gmail.com> ha scritto:

> OK, php7.0-interbase per motivi non chiari si porta dietro  
> firebird2.5-common.

Non puoi immaginare il piacere che fa leggere queste parole per uno che  
mastica Linux da 20 giorni. "Per motivi non chiari" ho perso solo una  
serata, prima di sospettare che non sono (del tutto) stupido.

>
> D'altra parte se lì c'è Firebird 3.0.1 c'è da sperare che da qualche  
> parte una libfbclient.so.3.x
> a cercare bene ci sia.

E difatti...

> Quindi, in obbedienza ai sani principi di Vlad Tepes - che era voivoda  
> di Valacchia, mica pizza e
> fichi - io proverei (da root, perché i veri danni si fanno così):
>
>     cd /usr/lib/x86_64-linux-gnu
>     mv libfbclient.so.2.5.4 libfbclient.so.2.5.4.bak
>     rm -f libfbclient.so.2.5
>     rm -f libfbclient.so.2
>     find / -name "libfbclient.so.3.*"
>
>     # Diciamo che la trovi in  
> /usr/local/firebird/lib/libfbclient.so.3.0.1

No:
	/opt/firebird/lib/libfbclient.so.3.0.1
	/usr/lib/libfbclient.so.3.0.1
ho provato:
	root@hector:/# cp /usr/lib/libfbclient.so.3.0.1 .

>
>     cp /usr/local/firebird/lib/libfbclient.so.3.0.1 .
>     ln libfbclient.so.3.0.1 libfbclient.so.2.5.4    # Questo perché  
> sisammai ldconfig
>     ln -s libfbclient.so.3.0.1 libfbclient.so.2.5
>     ln -s libfbclient.so.2.5 libfbclient.so.2
>
> e vedi che succede. Alla peggio, il file ".bak" è disponibile.

Succede che funziona.
Ora tre cose:

1. GRAZIE
2. una curiosità: sei andato (quasi) a colpo sicuro perché hai avuto lo  
stesso problema usando Firebird+php, oppure sei bravo e basta?
3. mi spieghi che cosa ho fatto, di preciso, mentre vado a compulsare un  
manuale di comandi Linux?


-- 
Michele Giordano
parolescritte.it

[toc] | [prev] | [next] | [standalone]


#21388

FromLeonardo Serni <lserni@gmail.com>
Date2017-01-20 19:59 +0100
Message-ID<v9n48c1als71shu27b6gafolov7o0vkd3b@L.Serni>
In reply to#21384
On Fri, 20 Jan 2017 11:16:40 +0100, Michele <michele.giordano@parolescritte.it> wrote:

>> Quindi, in obbedienza ai sani principi di Vlad Tepes - che era voivoda  
>> di Valacchia, mica pizza e fichi - io proverei (da root, perché i veri
>> danni si fanno così):

>2. una curiosità: sei andato (quasi) a colpo sicuro perché hai avuto lo  
>stesso problema usando Firebird+php, oppure sei bravo e basta?

Nessuna delle due. Ho una seconda professione come garzone di macelleria :-D

>3. mi spieghi che cosa ho fatto, di preciso, mentre vado a compulsare un  
>manuale di comandi Linux?

Hai fatto una cosa brutta, ovvero hai detto al sistema di usare la lib3.0 al
posto della 2.5. Come ha fatto notare Alessandro, la cosa non è gratis - nel
senso che si porta dietro un botto di rischi.

Specificamente, qualsiasi software che si aspetti una 2.5 purosangue e abbia
fiducia in qualche quirk che nel frattempo è cambiato (*in teoria* non ce ne
dovrebbero essere, ma la pratica è sempre diversa dalla teoria) gli piglierà
un colpo.

Spero & suppongo che di questi software sulla tua macchina non ce ne sia, ma
se mai dovessi installare, ricordati che ora hai un firebird instabile.

Leonardo
-- 

A terrible beauty is born.
                                     - W. B. Yeats, Easter 1916

[toc] | [prev] | [next] | [standalone]


#21389

FromMichele <michele.giordano@parolescritte.it>
Date2017-01-20 20:42 +0100
Message-ID<op.yudqc7cgbkvoja@sergej.station>
In reply to#21388
In data  gennaio 2017 alle ore 19:59:20, Leonardo Serni <lserni@gmail.com>  
ha scritto:


>
> Hai fatto una cosa brutta, ovvero hai detto al sistema di usare la  
> lib3.0 al
> posto della 2.5. Come ha fatto notare Alessandro, la cosa non è gratis -  
> nel
> senso che si porta dietro un botto di rischi.
>
> Spero & suppongo che di questi software sulla tua macchina non ce ne  
> sia, ma
> se mai dovessi installare, ricordati che ora hai un firebird instabile.

Ricevuto. Grazie.

-- 
Michele Giordano
parolescritte.it

[toc] | [prev] | [next] | [standalone]


#21385

FromAlessandro Pellizzari <shuriken@amiran.it>
Date2017-01-20 11:15 +0000
Message-ID<eee9rcF296cU1@mid.individual.net>
In reply to#21383
On 19/01/2017 23:10, Leonardo Serni wrote:

> OK, php7.0-interbase per motivi non chiari si porta dietro firebird2.5-common.

Perché contiene file necessari ai client (le config), e in Ubuntu 16.04 
c'e firebase 2.5, non il 3.x

Probabilmente il 3.x è stato installato da un PPA esterno o direttamente 
dai pacchetti scaricati dal sito.

Linkare la libreria da 2.x a 3.x funziona a colpi di culo, ma non durerà 
per sempre. :D

E al primo aggiornamento di sicurezza da Ubuntu ti ritrovi la 3.x 
sovrascritta con la 2.x perché l'hai linkata.

La cosa giusta da fare in questo caso (a parte trovare una versione di 
PHP7 compilata per firebase 3) è compilarsi l'estensione di PHP a mano.

O usare la 2.x inclusa nella distro.

Bye.

[toc] | [prev] | [next] | [standalone]


#21386

FromMichele <michele.giordano@parolescritte.it>
Date2017-01-20 15:14 +0100
Message-ID<op.yuda62jbbkvoja@sergej.station>
In reply to#21385
In data  gennaio 2017 alle ore 12:15:56, Alessandro Pellizzari  
<shuriken@amiran.it> ha scritto:



> La cosa giusta da fare in questo caso (a parte trovare una versione di  
> PHP7 compilata per firebase 3) è compilarsi l'estensione di PHP a mano.
>
> O usare la 2.x inclusa nella distro.
>

D'accordo.
Ma siccome per il momento sto solo facendo prove, non potrei ricaricare  
un'altra distribuzione (Debian (forse no, è la fonte di Ubuntu, o no?),  
CentOS, FantaLinux) e sperare che lì, sia Firebird 3, sia php, si parlino  
meglio?
Grazie.

-- 
Michele Giordano
parolescritte.it

[toc] | [prev] | [next] | [standalone]


#21387

FromAlessandro Pellizzari <shuriken@amiran.it>
Date2017-01-20 16:25 +0000
Message-ID<eees09F6m5jU1@mid.individual.net>
In reply to#21386
On 20/01/2017 14:14, Michele wrote:

> Ma siccome per il momento sto solo facendo prove, non potrei ricaricare
> un'altra distribuzione (Debian (forse no, è la fonte di Ubuntu, o no?),
> CentOS, FantaLinux) e sperare che lì, sia Firebird 3, sia php, si
> parlino meglio?

La 3.x è presente in Debian testing ed è prevista per Ubuntu 17.04 (che 
uscirà ad aprile, come dice il nome, e NON È una LTS, quindi occhio se 
vuoi usarlo sui server).


Se stai solo sperimentando, e visto che non sei esperto di Linux, io 
proverei a installare Debian testing.

Ma, a meno che non ti serva assolutamente Firebird 3, usare Ubuntu 16.04 
o 16.10 con i pacchetti standard della 2.5 sarebbe la cosa migliore.

Bye.

[toc] | [prev] | [next] | [standalone]


#21390

FromMichele <michele.giordano@parolescritte.it>
Date2017-01-20 20:58 +0100
Message-ID<op.yudq3ekhbkvoja@sergej.station>
In reply to#21387
In data  gennaio 2017 alle ore 17:25:45, Alessandro Pellizzari  
<shuriken@amiran.it> ha scritto:



> La 3.x è presente in Debian testing ed è prevista per Ubuntu 17.04 (che  
> uscirà ad aprile, come dice il nome, e NON È una LTS, quindi occhio se  
> vuoi usarlo sui server).

Questa è l'idea. Ma il prossimo LTS è 18.10 (come dice il nome)?

>
> Se stai solo sperimentando, e visto che non sei esperto di Linux, io  
> proverei a installare Debian testing.

Ahimè, non è prevista fra le distribuzioni sul VPS che uso.

>
> Ma, a meno che non ti serva assolutamente Firebird 3, usare Ubuntu 16.04  
> o 16.10 con i pacchetti standard della 2.5 sarebbe la cosa migliore.

Il passaggio da 2.5 a 3.x è quasi irreversibile... (per esempio, è  
difficile rinunciare ai cursori bidirezionali).

Comunque grazie. Ho imparato un mucchio di cose.


-- 
Michele Giordano
parolescritte.it

[toc] | [prev] | [next] | [standalone]


#21391

FromAlessandro Pellizzari <shuriken@amiran.it>
Date2017-01-20 21:43 +0000
Message-ID<eefek7Fb5g5U1@mid.individual.net>
In reply to#21390
Il Fri, 20 Jan 2017 20:58:16 +0100, Michele ha scritto:

> Questa è l'idea. Ma il prossimo LTS è 18.10 (come dice il nome)?

Le LTS escono ogni 2 anni, quindi 14.04, 16.04 e la prossima sarà 18.04 
(a meno che nel frattempo non cambino idea, ma ormai è consolidato).

Bye.

[toc] | [prev] | [next] | [standalone]


#21444

FromMichele <michele.giordano@parolescritte.it>
Date2017-02-04 22:12 +0100
Message-ID<op.yu5mjrnkbkvoja@sergej.station>
In reply to#21383
In data  gennaio 2017 alle ore 00:10:37, Leonardo Serni <lserni@gmail.com>  
ha scritto:

> OK, php7.0-interbase per motivi non chiari si porta dietro  
> firebird2.5-common.
>
> D'altra parte se lì c'è Firebird 3.0.1 c'è da sperare che da qualche  
> parte una libfbclient.so.3.x
> a cercare bene ci sia.
>
> Quindi, in obbedienza ai sani principi di Vlad Tepes - che era voivoda  
> di Valacchia, mica pizza e
> fichi - io proverei (da root, perché i veri danni si fanno così):
>
>     cd /usr/lib/x86_64-linux-gnu
>     mv libfbclient.so.2.5.4 libfbclient.so.2.5.4.bak
>     rm -f libfbclient.so.2.5
>     rm -f libfbclient.so.2
>     find / -name "libfbclient.so.3.*"
>
>     # Diciamo che la trovi in  
> /usr/local/firebird/lib/libfbclient.so.3.0.1
>
>     cp /usr/local/firebird/lib/libfbclient.so.3.0.1 .
>     ln libfbclient.so.3.0.1 libfbclient.so.2.5.4    # Questo perché  
> sisammai ldconfig
>     ln -s libfbclient.so.3.0.1 libfbclient.so.2.5
>     ln -s libfbclient.so.2.5 libfbclient.so.2
>
> e vedi che succede. Alla peggio, il file ".bak" è disponibile.

Per capire...
Dopo aver fatto quello che suggerisci (tranne gli ultimi due comandi,  
niente "sisammai", per semplicità) mi ritrovo:

root@vmi97986:/usr/lib/x86_64-linux-gnu# ls -il libfbclient*
14949157 lrwxrwxrwx 1 root root      20 Aug  5  2015 libfbclient.so.2 ->  
libfbclient.so.2.5.4
14949163 -rwxr-xr-x 2 root root 1816176 Feb  4 21:29 libfbclient.so.2.5.4
14949153 -rw-r--r-- 1 root root  869448 Aug  5  2015  
libfbclient.so.2.5.4.bak
14949163 -rwxr-xr-x 2 root root 1816176 Feb  4 21:29 libfbclient.so.3.0.1

se faccio:

root@vmi97986:/usr/lib/x86_64-linux-gnu# rm libfbclient.so.2.5.4
root@vmi97986:/usr/lib/x86_64-linux-gnu# rm libfbclient.so.3.0.1
root@vmi97986:/usr/lib/x86_64-linux-gnu# ln -s  
/opt/firebird/lib/libfbclient.so.3.0.1 libfbclient.so.2.5.4

funziona.
Lo so che spesso "funziona" vuol dire "funziona però", ma in questo caso:  
qual è la differenza?
È necessario l'hard link? Perché?
Grazie.

-- 
Michele Giordano
parolescritte.it

[toc] | [prev] | [standalone]


Back to top | Article view | it.comp.www.php


csiph-web