LinuxQuestions.org

LinuxQuestions.org (/questions/)
-   Linux - Newbie (https://www.linuxquestions.org/questions/linux-newbie-8/)
-   -   PHP+apache undefined symbol:unixd_config error (https://www.linuxquestions.org/questions/linux-newbie-8/php-apache-undefined-symbol-unixd_config-error-263392/)

Emist 12-06-2004 06:00 PM

PHP+apache undefined symbol:unixd_config error
 
Hey guys, I recently installed php, apache and mysql under suse 9.1. When I try to make apache load the libphp4.so lib it gives me the following error

Cannot load /usr/local/apache/modules/libphp4.so into server: /usr/local/apache/modules/libphp4.so: undefined symbol: unixd_config

Does anyone know what that means or where I could find an answer to this question? I have searched everywhere and can't find anything.

Thanks in advance.

Tinkster 12-06-2004 06:05 PM

Search again :)
http://www.google.co.nz/linux?hl=en&...a=lr%3Dlang_en

Strip absolute paths - not everyone will choose the
same directory structure you picked.


Cheers,
Tink

Emist 12-06-2004 07:33 PM

Thanks for the help mate. The links in google all point to posts on forums that nobody replied to. I am a newbie at the linux thing, how can I strip absolute paths?

Tinkster 12-06-2004 07:47 PM

Heh ... sorry.

I just did exactly that: stripped the path out of your
error message
Cannot load /usr/local/apache/modules/libphp4.so into server: /usr/local/apache/modules/libphp4.so:

Cannot load libphp4.so into server: libphp4.so:


I didn't take the time to follow the links it came up with,
if they are only questions that problem of yours must be
very uncommon. How did you go about installing everything,
from source?


Cheers,
Tink

J.W. 12-06-2004 07:54 PM

FYI I think this article does a great job explaining how to get Apache, MySQL, and PHP up and running under Suse -- J.W.

Emist 12-06-2004 08:07 PM

Edit: Checked out the link but im using Suse personal so it comes without any php modules and only an apache 1 module, darn should have gotten pro!

Thanks for the help again. I installed everything from tarballs. First downloaded httpd-2.0.52.tar and configured it as follows:

./configure --prefix=/www --enable-module=so
make
make install

then I got the php package and did
./configure --with-mysql --with-apxs2=/www/bin/apxs
make
make install

I'll provide any other information I can, just let me know what you want to see. Heh, I have been trying to get this working since 11 am this morning! :(
Note: Using php4.3.9

DaHammer 12-06-2004 08:32 PM

Looks like you're using Apache 2.x.x. Did you follow the instructions at http://www.php.net/manual/en/install.unix.apache2.php? How did you compile Apache & PHP?

DaHammer 12-06-2004 08:36 PM

Quote:

Originally posted by Emist
Edit: Checked out the link but im using Suse personal so it comes without any php modules and only an apache 1 module, darn should have gotten pro!

Thanks for the help again. I installed everything from tarballs. First downloaded httpd-2.0.52.tar and configured it as follows:

./configure --prefix=/www --enable-module=so
make
make install

Try --enable-so vs --enable-module=so. :)

Also, you sure you want to install the Apache binaries and configuration files under /www? Most folks would install Apache somewhere like /usr/local/apache2 (the default) and use the /www for the web files being hosted. But either way.

Emist 12-06-2004 09:16 PM

Thanks for the help guys, alright I removed everything and reinstalled everything following the instructions at the page given yet I still have the same error.

On a note:The libexec/libphp4.so address doesnt work for me, for some reason I have to point towards /usr/local/apache2/modules/libphp4.so in order to get something other than "no such file or directory" and when I do that I get the same error as before. Wow, this is giving me a headache

Here is a bit of my httpd.conf file.

Code:

LoadModule rewrite_module    /usr/lib/apache/mod_rewrite.so
LoadModule access_module      /usr/lib/apache/mod_access.so
LoadModule auth_module        /usr/lib/apache/mod_auth.so
LoadModule anon_auth_module  /usr/lib/apache/mod_auth_anon.so
LoadModule dbm_auth_module    /usr/lib/apache/mod_auth_dbm.so
LoadModule db_auth_module    /usr/lib/apache/mod_auth_db.so
LoadModule digest_module      /usr/lib/apache/mod_digest.so
LoadModule proxy_module      /usr/lib/apache/libproxy.so
LoadModule cern_meta_module  /usr/lib/apache/mod_cern_meta.so
LoadModule expires_module    /usr/lib/apache/mod_expires.so
LoadModule headers_module    /usr/lib/apache/mod_headers.so
LoadModule usertrack_module  /usr/lib/apache/mod_usertrack.so
LoadModule log_forensic_module /usr/lib/apache/mod_log_forensic.so
# LoadModule unique_id_module  /usr/lib/apache/mod_unique_id.so

LoadModule php4_module /usr/local/apache2/modules/libphp4.so
<ifModule mod_php.c>
AddType application/x-httpd-php4 .php4
AddType application/x-httpd-php4 .php
AddType application/x-httpd-php4-source .phps
AddType application/x-httpd-php .php
</ifModule>
LoadModule setenvif_module    /usr/lib/apache/mod_setenvif.so
<IfDefine DUMMYSSL>
LoadModule ssl_module        /usr/lib/apache/libssl.so
</IfDefine>

Include /etc/httpd/suse_loadmodule.conf


#  Reconstruction of the complete module list from all available modules
#  (static and shared ones) to achieve correct module execution order.
#  [WHENEVER YOU CHANGE THE LOADMODULE SECTION ABOVE UPDATE THIS, TOO]
ClearModuleList
AddModule /usr/local/php-4.3.9/sapi/apache/mod_php4.c
AddType application/x-httpd-php .php .phtml
"/etc/httpd/httpd.conf" 1570L, 55124C


DaHammer 12-06-2004 11:16 PM

Quote:

Originally posted by Emist
Thanks for the help guys, alright I removed everything and reinstalled everything following the instructions at the page given yet I still have the same error.

On a note:The libexec/libphp4.so address doesnt work for me, for some reason I have to point towards /usr/local/apache2/modules/libphp4.so in order to get something other than "no such file or directory" and when I do that I get the same error as before. Wow, this is giving me a headache

Ok, what do you have for ServerRoot in your httpd.conf? Setting that variable to where Apache is installed should fix "libexec/libphp4.so" issue. And at the same time I bet it fixes your original issue. It looks to me like you have 2 separate installations of Apache and are pointing the one your compiling to the other one's modules, or visversa. The modules at /usr/lib/apache/ were likely installed by a package included with the OS, unless you specifically configured Apache to install them there when you compiled it. By default, when you compile Apache from source, everything will be installed at /usr/local/apache2/, including the httpd.conf, modules & binaries. Also are you certain that you are editing the correct http.conf file and starting the binary that you compiled? I'd look for another installation of Apache and uninstall that so you don't get confused and go from there.

Emist 12-07-2004 01:05 PM

What you are saying makes a lot of sense since the config file is looking for stuff in /usr/local/apache and theres nothing there. Bah, I have a bigger problem now, I cleaned the apache files from my system and reinstalled apache 2 using ./configure --enable-so but it doesnt finish building, it tries to install files in /usr/local/apache/lib it gives me the following error:

Code:

libtool: install: warning: `/usr/local/httpd-2.0.52/srclib/apr/libapr-0.la' has not been installed in `/usr/local/apache/lib'
libtool: install: warning: `/usr/local/httpd-2.0.52/srclib/apr-util/libaprutil-0.la' has not been installed in `/usr/local/apache/lib'
libtool: install: warning: `/usr/local/httpd-2.0.52/srclib/apr/libapr-0.la' has not been installed in `/usr/local/apache/lib'
libtool: install: warning: `/usr/local/httpd-2.0.52/srclib/apr-util/libaprutil-0.la' has not been installed in `/usr/local/apache/lib'
libtool: install: warning: `/usr/local/httpd-2.0.52/srclib/apr/libapr-0.la' has not been installed in `/usr/local/apache/lib'
libtool: install: warning: `/usr/local/httpd-2.0.52/srclib/apr-util/libaprutil-0.la' has not been installed in `/usr/local/apache/lib'
libtool: install: warning: `/usr/local/httpd-2.0.52/srclib/apr/libapr-0.la' has not been installed in `/usr/local/apache/lib'
libtool: install: warning: `/usr/local/httpd-2.0.52/srclib/apr-util/libaprutil-0.la' has not been installed in `/usr/local/apache/lib'
libtool: install: warning: `/usr/local/httpd-2.0.52/srclib/apr/libapr-0.la' has not been installed in `/usr/local/apache/lib'
libtool: install: warning: `/usr/local/httpd-2.0.52/srclib/apr-util/libaprutil-0.la' has not been installed in `/usr/local/apache/lib'
libtool: install: warning: `/usr/local/httpd-2.0.52/srclib/apr/libapr-0.la' has not been installed in `/usr/local/apache/lib'
libtool: install: warning: `/usr/local/httpd-2.0.52/srclib/apr-util/libaprutil-0.la' has not been installed in `/usr/local/apache/lib'
libtool: install: warning: `/usr/local/httpd-2.0.52/srclib/apr/libapr-0.la' has not been installed in `/usr/local/apache/lib'

Wow man, cant believe im taking all this time to install a prog!! :( Does anyone have any idea why my system is bent on installing some apache 2 files under /usr/local/apache?

vt_dave 02-02-2005 11:47 AM

Hello all.

I'm having the same problem on Fedora Core 3 with apache 1.3.33 and php 4.3.10. I installed apache from the binary tar provided on apache.org, and apache runs fine with out libphp4.so loaded in httpd.conf. I have obtained ALL the latest php4 rpm's from redhat's Fedora Core 3 site and installed them correctly (php -v gives 4.3.10 ) but when i try to load the module:

LoadModule php4_module libexec/libphp4.so
and
AddModule mod_php4.c

apache yeilds:

# apachectl start
Syntax error on line 239 of /usr/local/apache/conf/httpd.conf:
Cannot load /usr/local/apache/libexec/libphp4.so into server: /usr/local/apache/libexec/libphp4.so: undefined symbol: unixd_config
/usr/bin/apachectl start: httpd could not be started

i've been working on this for many hours and am quite confused. The libphp4.so IS in my libexec folder under apache:
# pwd
/usr/local/apache/libexec
# ls -l libphp4.so
-rwxr-xr-x 1 root root 1554964 Feb 2 12:30 libphp4.so

ANY help would be appreciated!

Thanks
-Dave

OneSeventeen 03-08-2005 04:21 PM

Just thought I'd throw my hat in.

Slackware 10 with PHP 5.0.3 and Apache 2.0.53

I get the same error. After instaling with --enable-so the phplib5.so file was placed in the libexec folder (it wasn't when I forgot the --enable-so)

So now it is installed and apache is running happily, other than the fact that I cannot restart my server since unixd_config is undefined.

This is very frustrating, and this appears to be the only site that actually has a response to this topic. Unfortunately I have yet to find the solution.

If anyone has solved this, or has a suggestion, please continue this thread.

vt_dave 03-15-2005 10:49 AM

117 et all:

It's been a while since I had this problem but I saw someone else posted here so I thought I'd post my experiences with it. Basically my problem was I was trying to use a .so form a pre-build lib, so I downloaded the php source and recompiled the .so myself and that solved my undefined symbol issue.

I know it's probably been tried by many of you but that did solve my problem

Thanks
-Dave


All times are GMT -5. The time now is 03:40 PM.