Regarding the compilation and installation issues of robbe on 64-bit linux

伊谢尔伦
Release: 2016-11-29 11:10:12
Original
1360 people have browsed it

Recently, many netizens have reported problems with the installation of robbe on 64bit systems.

1. I don’t know how to compile robbe.

2. I compiled it, but the following error occurred:

lazy symbol binding failed: Symbol not found: _friso_new_from_ifile
Referenced from: /usr/lib/php/extensions/no-debug-non-zts-20090626/robbe.so
Expected in: flat namespace

A unified solution is given here:

Robbe provides one internally robbe.so file, but it is compiled on a 32bit system, and it will definitely not work on a 64bit system.

1. Compile and install friso:

(1). Change the Makefile of friso, FFLAGS = -O2 -Wall change For FFLAGS = -O2 -Wall -fPIC, that is, add the -fPIC option.

(2). make

(3). sudo make install

friso, the installation is successful,

2. Compile and install robbe:

cd to robbe’s source code directory

(1). phpize (if there is no phpize, first sudo apt-get install php5-dev to install the tool)

(2). ./configure

(3). Change the Makefile
Here is the key point. Many netizens have failed to find the function of friso because they did not change this file. Introduce the friso shared file in the following goals, and add the -lfriso option before the -o option. Change as follows:

//Line 164 of Makefile
robbe.lo: /c/php_ext/robbe/robbe.c
$(LIBTOOL) --mode=compile $(CC) -I. -I/c/php_ext/robbe $( COMMON_FLAGS) $(CFLAGS_CLEAN) $(EXTRA_CFLAGS) -c /c/php_ext/robbe/robbe.c -lfriso -o robbe.lo

//Line 168 of Makefile
./robbe.la: $(shared_objects_robbe) $( ROBBE_SHARED_DEPENDENCIES)
$(LIBTOOL) --mode=link $(CC) $(COMMON_FLAGS) $(CFLAGS_CLEAN) $(EXTRA_CFLAGS) $(LDFLAGS) -lfriso -o $@ -export-dynamic -avoid-version -prefer-pic -module -rpath $(phplibdir) $(EXTRA_LDFLAGS) $(shared_objects_robbe) $(ROBBE_SHARED_LIBADD)

//Add -lfriso

(4). make

(5). sudo make install

(6). Add robbe.so in php.ini, remember to configure robbe!

(7). Restart the php hosting environment

happy robbe.


Related labels:
source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template
About us Disclaimer Sitemap
php.cn:Public welfare online PHP training,Help PHP learners grow quickly!