# Ioncube installation problem.



## bryn1u (Jul 23, 2014)

Hey,

I installed ioncube from ports on FreeBSD 10-STABLE and after that *I* got _an_ error. I put two lines in /usr/local/etc/php.ini and /usr/local/etc/php/extensions.ini like below

```
zend_extension="/usr/local/lib/php/20100525-zts/ioncube/ioncube_loader.so"
zend_extension_ts="/usr/local/lib/php/20100525-zts/ioncube/ioncube_loader_ts.so"
```
:
After restart_ing_ apache24 *I* got _an_ error:

```
root@Oksymoron:/usr/local/etc/php # php -v
Failed loading /usr/local/lib/php/20100525-zts/ioncube/ioncube_loader.so:  /usr/local/lib/php/20100525-zts/ioncube/ioncube_loader.so                                                        : Undefined symbol "executor_globals"
Failed loading /usr/local/lib/php/20100525-zts/ioncube/ioncube_loader.so:  /usr/local/lib/php/20100525-zts/ioncube/ioncube_loader.so                                                        : Undefined symbol "executor_globals"
PHP 5.4.30 (cli) (built: Jul 21 2014 09:58:22)
Copyright (c) 1997-2014 The PHP Group
Zend Engine v2.4.0, Copyright (c) 1998-2014 Zend Technologies
```

Can someone tell me what is wrong_?_


----------



## SirDice (Jul 23, 2014)

IonCube only supports FreeBSD up to 9.x. Because these files are binaries you probably need to install misc/compat9x and make sure your kernel has COMPAT_FREEBSD9 (GENERIC should have it).

http://www.ioncube.com/loaders.php


----------



## bryn1u (Jul 23, 2014)

In FreeBSD 10 , Generic has only

```
options         COMPAT_FREEBSD32        # Compatible with i386 binaries
options         COMPAT_FREEBSD4         # Compatible with FreeBSD4
options         COMPAT_FREEBSD5         # Compatible with FreeBSD5
options         COMPAT_FREEBSD6         # Compatible with FreeBSD6
options         COMPAT_FREEBSD7         # Compatible with FreeBSD7
```
Should i add compat 8 and 9 ?


----------



## kpa (Jul 23, 2014)

bryn1u said:
			
		

> In FreeBSD 10 , Generic has only
> 
> ```
> options         COMPAT_FREEBSD32        # Compatible with i386 binaries
> ...



No need because the options simply do not exist. By some miracle there have been no changes to system calls after FreeBSD 8 that would require any COMPAT_* options in order to run the older FreeBSD 8 or 9 binaries on FreeBSD 10. Only the userland compatibility libraries are needed and they are in the misc/compat8x and misc/compat9x ports.


----------

