Page 1 of 1

mysql.h and openssl/md5.h problems building 1.22.2/SuSE 10.0

Posted: Thu Jun 15, 2006 3:50 pm
by Baylink
Well, the new install I was doing on a client's warm-spare SuSE 9.0 machine tanked, because a single PII-450 with 512MB is borderline to run ZM, MySQL, Apache2, *and* the other stuff they needed to run on it.

So I'm in rewind-to-start mode, on SuSE 10.0 and a P4. Not as pretty, but faster.

Alas, I'm having the usual teething pains:

Code: Select all

checking mysql/mysql.h usability... no
checking mysql/mysql.h presence... yes
configure: WARNING: mysql/mysql.h: present but cannot be compiled
configure: WARNING: mysql/mysql.h:     check for missing prerequisite headers?
configure: WARNING: mysql/mysql.h: see the Autoconf documentation
configure: WARNING: mysql/mysql.h:     section "Present But Cannot Be Compiled"
configure: WARNING: mysql/mysql.h: proceeding with the preprocessor's result
configure: WARNING: mysql/mysql.h: in the future, the compiler will take precedence
configure: WARNING:     ## ------------------------------------- ##
configure: WARNING:     ## Report this to support@zoneminder.com ##
configure: WARNING:     ## ------------------------------------- ##
checking for mysql/mysql.h... yes
I've installed the mysql-devel RPM from the distro:

Code: Select all

linux:/appl/ZoneMinder-1.22.2 # rpgrep mysql
mysql-client-4.1.13-3
mysql-4.1.13-3.6
mysql-administrator-1.0.22a-2
mysql-devel-4.1.13-3
mysql-shared-4.1.13-3
perl-DBD-mysql-3.0002-2
mysql-Max-4.1.13-3
Additionally, it's complaining that it can't find md5.h, though it's where it belongs (I think):

Code: Select all

checking whether MD5 is declared... no
configure: error: zm requires openssl/md5.h
make: *** No targets specified and no makefile found.  Stop.
linux:/appl/ZoneMinder-1.22.2 # locate openssl/md5.h
/usr/include/openssl/md5.h
Any pointers, folks?

More data

Posted: Thu Jun 15, 2006 8:35 pm
by Baylink
My config log *was* complaining about no g++ being installed.

I fixed that, and then, even though it had resolved an extra dependency, I got this in the config.log on the next build:

Code: Select all

configure:5463: g++ -c   conftest.cc >&5
In file included from conftest.cc:19:
/usr/include/string.h:33:20: error: stddef.h: No such file or directory
followed, a few lines down, by

Code: Select all

configure:5493: result: no
configure:5511: checking whether MD5 is declared
configure:5537: g++ -c   conftest.cc >&5
In file included from conftest.cc:20:
/usr/include/stdlib.h:33:20: error: stddef.h: No such file or directory
conftest.cc:11: error: previous declaration of 'void exit(int)' with 'C++' linka
ge
/usr/include/stdlib.h:640: error: conflicts with new declaration with 'C' linkag
e
/usr/include/stdlib.h:640: error: declaration of 'void exit(int) throw ()' throw
s different exceptions
conftest.cc:11: error: than previous declaration 'void exit(int)'

configure:5567: result: no
configure:5581: error: zm requires openssl/md5.h

Posted: Fri Jun 16, 2006 1:00 am
by acrid
on my SUSE 10 machine (running with 1.22.2):

Code: Select all

chefbox:/home/acrid # find / -name stddef.h
/usr/lib/gcc/i586-suse-linux/4.0.2/include/stddef.h
/usr/include/linux/stddef.h


chefbox:/home/acrid # find / -name md5.h
/usr/include/htdig/md5.h
/usr/include/openssl/md5.h
hope this helps :)

Posted: Fri Jun 16, 2006 2:30 am
by Baylink
Only if *yours* worked.

I have both of the files, but they're apparently in places autoconf doesn't know to look for them...

32 v 64 bit

Posted: Fri Jun 16, 2006 3:22 pm
by Baylink
A little more investigation suggests strongly that this is a bit-ness issue.

I'm sufficiently unfamiliar with 64-bit builds that I'm inclined to force 32 bit (and suggest that the package ought to probably do this by default).

But I'm not sure how.

Off to the mines, one more time.

Posted: Fri Jun 16, 2006 3:52 pm
by jameswilson
is there any benefit to 64bit?

Posted: Fri Jun 16, 2006 4:05 pm
by Baylink
For ZM? Probably not. But even though configure defaults to the 32 bit libraries, it appears to be using the 64 bit compilers. I'm going to try to attach my complete config.log to this message, in hopes someone can point me in the right direction.

...

Apparently, I can't attach files. Bother.

Posted: Fri Jun 16, 2006 4:25 pm
by jameswilson
Thanks i was just wondering if zm would be helped by 64 bit thats all

Posted: Sat Jun 17, 2006 12:07 am
by cordel
add to your config line --libarch=/usr/lib64

Regards,
Corey

Posted: Sat Jun 17, 2006 12:11 am
by Baylink
I think I've been unclear.

I believe that the fact that the compiler apparatus is tuned for 64 bit *is my problem*. I was trying to force more not-x86-64ness than I already had.

You're saying I'm wrong?

(It is, for the moment, moot anyway; my boss is in a hurry, and told me to roll back to 9.2, which was not, I don't think, 64-bit equipped. I think he might have switched machines, too.)

Nope; it's not moot.

Posted: Sun Jun 18, 2006 2:34 pm
by Baylink
SuSE 9.2 in pure-32 bit mode is *also* complaining about an inability to find an md5.h which is most certainly right in it's face:

Code: Select all

frank:/appl/ZoneMinder-1.22.2 # locate md5.h
/opt/gnome/include/gaim/md5.h
/opt/kde3/include/kvirc/3.0.1/kvi_md5.h
/usr/include/apache2-prefork/apr_md5.h
/usr/include/apache2-worker/apr_md5.h
/usr/include/apache2/apr_md5.h
/usr/include/htdig/md5.h
/usr/include/htdig/mhash_md5.h
/usr/include/openssl/md5.h
/usr/lib/news/include/inn/md5.h
/usr/share/doc/packages/phpdoc/manual/function.md5.html
/usr/src/kernel-modules/linux-iscsi-4.0.1/md5.h
/usr/src/kernel-modules/madwifi-20040928/net80211/md5.h
/usr/src/linux-2.6.8-24.23/fs/cifs/md5.h
Certainly one of those is right.

The config.log doesn't really seem to betelling me where it's trying to look, at all, but it's difficult to know which part to post, and it's so big I wouldn't want to inline it here...