LinuxQuestions.org
Welcome to the most active Linux Forum on the web.
Go Back   LinuxQuestions.org > Forums > Linux Forums > Linux - Distributions > Slackware
User Name
Password
Slackware This Forum is for the discussion of Slackware Linux.

Notices

Reply
 
LinkBack Search this Thread
Old 08-12-2006, 04:52 AM   #1
Pier
Member
 
Registered: Oct 2005
Location: Italy
Distribution: Gentoo
Posts: 83

Rep: Reputation: 17
BLKGETSIZE64 compiling error Gargnome Slack 10.2 Ker 2.6.17 Celeron 32bit 2.6Ghz


Hi everyone,
I am trying to compile Gnome via Gargnome (garnome-2.14.3). Everything goes smooth till this message:
--------------------------------
checking for doxygen... /usr/bin/doxygen
checking whether to build Doxygen documentation... yes
checking for pgoff_t... no
checking for BLKGETSIZE64... no
configure: error: BLKGETSIZE64 is not defined
--------------------------------
Browsing the web and other LQ messages it seems to me that the problem lays in the kernel headers. Common suggestion is to installing Linux-Libc-Headers.
Could someone please explain where to get those headers for Ker 2.6.17 if there are any of course. The ones I found are for ker 2.6.12. Will they do for ker 2.6.17 as well?

Thanks for any help,
Pier
 
Old 08-12-2006, 07:59 AM   #2
bsdunix
Senior Member
 
Registered: May 2006
Distribution: Caldera, CTOS, Debian, FreeBSD, Mac OS X, Mandrake, Minix, OpenBSD, Slackware, SuSE
Posts: 1,757

Rep: Reputation: 77
This may be of help.

"Infact, the updated patch is included with GARNOME 2.12.1 and above, you just need to uncomment it in the freedesktop/hal/Makefile before starting your build."

http://bugzilla.gnome.org/show_bug.cgi?id=312775

Here is the Makefile section:

/garnome-2.14.3/freedesktop/hal/Makefile

# [slackware / suse fix] uncomment the following line to fix defines that are not included in your distribution.
#PATCHFILES += hal-kernel-includes.diff
 
Old 08-12-2006, 09:03 AM   #3
Pier
Member
 
Registered: Oct 2005
Location: Italy
Distribution: Gentoo
Posts: 83

Original Poster
Rep: Reputation: 17
Thank you very much!
That solved the "BLKGETSIZE64" problem. Yet another one cropped up though:
---------------------------
probe-input.c:48: error: redefinition of `struct input_id'
shared.h:62: warning: `drop_privileges' defined but not used
make[15]: *** [probe-input.o] Error 1
---------------------------

Thank you for any help,
Pier
 
Old 08-13-2006, 09:29 AM   #4
bsdunix
Senior Member
 
Registered: May 2006
Distribution: Caldera, CTOS, Debian, FreeBSD, Mac OS X, Mandrake, Minix, OpenBSD, Slackware, SuSE
Posts: 1,757

Rep: Reputation: 77
Hum, the diff has the change for that error, I don't know why it didn't compile:

+/* struct input_id is not defined in Slackware */
+struct input_id {
+ __u16 bustype;
+ __u16 vendor;
+ __u16 product;
+ __u16 version;
+};

As Pat said in the 10.2 stable changelog when he removed GNOME:

"... GNOME is and always has been a moving target (even the "stable" releases usually aren't quite ready yet) that really does demand a team to keep up on all the changes (many of which are not always well documented). ...

http://www.slackware.com/changelog/stable.php?cpu=i386

Kludges are never an elegant solution.
 
Old 08-13-2006, 12:10 PM   #5
jong357
Senior Member
 
Registered: May 2003
Location: Columbus, OH
Distribution: DIYSlackware
Posts: 1,914

Rep: Reputation: 51
This is the problem with Slackware using "Stable" kernel headers. Well, there not so stable actually. Most programs now-a-days are using the 2.6 system calls...

evdev in xorg-drivers (7.x) will bomb with 2.4 headers and there doesn't seem to be an easy way around it on a stock system. Here's hoping Pat will jump on the band wagon soon otherwise this will be a continuing problem more often as time passes.

With kernel 2.6.18, we now have "make headers_install" which sanitizes and installs headers straight from the kernel tarball... Just in the nick of time seeing as how the LLH project is now dead. This is what Pat will be using if and when he "deems 2.6 to be stable enoungh".....

It would have been nice if glibc-2.3.6 were compiled against 2.6 headers when he first uploaded it to current. A massive portion of Slackware has been recompiled against said glibc in the past few months, judging from the changelog. But everything is still unaware of 2.6......
 
Old 09-12-2006, 07:41 AM   #6
wmhrae
LQ Newbie
 
Registered: Sep 2006
Posts: 6

Rep: Reputation: 0
Fixing the BLKGETSIZE64 error !

find configure.in in the top level dir : /tmp/hal-0.5.7.1/configure.in

this is the old code, here you have to remove two lines :

#include <linux/ioctl.h>
#include <linux/fs.h>],

and replace it by : #include <sys/mount.h>],

part of old configure.in:

# Check for BLKGETSIZE64
AC_CHECK_TYPE(pgoff_t, ,
[AC_DEFINE(pgoff_t, unsigned long, [Index into the pagecache])],
/usr/include/sys/types.h)
AC_MSG_CHECKING(for BLKGETSIZE64)
AC_TRY_COMPILE(
[#include <sys/types.h>
#include <linux/ioctl.h>
#include <linux/fs.h>],
[int main(int argc, char *argv[])
{
int fd = 0;
unsigned long long int n;
ioctl (fd, BLKGETSIZE64, &n);
return 0;
}
], have_size64=yes, have_size64=no)
AC_MSG_RESULT($have_size64)
if test x$have_size64 = xno; then
case "$host" in
*-*-linux*)
AC_MSG_ERROR([BLKGETSIZE64 is not defined])
;;
*)
;;
esac
fi

this is the new code with the line :" #include <sys/mount.h>], " included.

Part of new configure.in:

# Check for BLKGETSIZE64
AC_CHECK_TYPE(pgoff_t, ,
[AC_DEFINE(pgoff_t, unsigned long, [Index into the pagecache])],
/usr/include/sys/types.h)
AC_MSG_CHECKING(for BLKGETSIZE64)
AC_TRY_COMPILE(
[#include <sys/types.h>
#include <sys/mount.h>],
[int main(int argc, char *argv[])
{
int fd = 0;
unsigned long long int n;
ioctl (fd, BLKGETSIZE64, &n);
return 0;
}
], have_size64=yes, have_size64=no)
AC_MSG_RESULT($have_size64)
if test x$have_size64 = xno; then
case "$host" in
*-*-linux*)
AC_MSG_ERROR([BLKGETSIZE64 is not defined])
;;
*)
;;
esac
fi

Hope this helps you ...
 
Old 09-13-2006, 06:30 AM   #7
evilDagmar
Member
 
Registered: Mar 2005
Location: Right behind you.
Distribution: NBG, then randomed.
Posts: 480

Rep: Reputation: 31
Typically when you run into one of these "old headers" issues, there's only a few things to consider, and if it's fixable, the fix is actually quite easy.

The big one is "Is this code accessing a kernel module?" Several kernel modules have changed their APIs between 2.4.x and 2.6.x. If the answer to this is yes, you're in good shape.

After that is whether or not the application has done any checking to see what kernel is present. If it did, and it detected 2.4.x, you could easily have problems if the APIs are different and the app is now expecting a 2.4.x kernel elsewhere.

Considering that the majority of the reasons for keeping the kernel headers that were present when glibc was built have to do with workarounds for kernelspace issues, cherry picking for specific new headers isn't terribly dangerous.

The "cheat" is very simple. If it's a missing header complaint, go into the file that wants the header and change the include statement to read "/usr/src/linux/include/linux/foo.h" instead of just <linux/foo.sh>. If it's a missing structure or element, check carefully in both versions of the header files to find out where that item is actually supposed to come from, and then make sure that it doesn't in turn #include something else incompatible from the 2.6.x headers.

This works for USB input drivers (which underwent an API change, much to my irritation), as well as some issues with compiling Video4Linux-2 tools (like ivtv).
 
Old 11-05-2006, 09:10 AM   #8
BerzinTehvs
Member
 
Registered: Mar 2005
Location: Latvia
Distribution: Slackware
Posts: 39

Rep: Reputation: 15
Hal 0.5.8.1

I tired to fix BLKGETSIZE64 error as described above, but got no success. May be there are some more changes necessary. I am runnign fresh Slack 11.
 
Old 11-05-2006, 09:18 AM   #9
BerzinTehvs
Member
 
Registered: Mar 2005
Location: Latvia
Distribution: Slackware
Posts: 39

Rep: Reputation: 15
Quote:
Originally Posted by wmhrae
find configure.in in the top level dir : /tmp/hal-0.5.7.1/configure.in

this is the old code, here you have to remove two lines :

#include <linux/ioctl.h>
#include <linux/fs.h>],

and replace it by : #include <sys/mount.h>],
........................
Hope this helps you ...
actually, the same must be done in the configure (!!!) also.

then it seems possible to compile hal-0.5.8.1
 
Old 11-05-2006, 10:00 AM   #10
BerzinTehvs
Member
 
Registered: Mar 2005
Location: Latvia
Distribution: Slackware
Posts: 39

Rep: Reputation: 15
Mentioned cure is not very helpful as during the compilation process dies at:

make[6]: Entering directory `/data/src/programs/00-system/hal/hal-0.5.8.1/hald/linux/probing'
if gcc -DHAVE_CONFIG_H -I. -I. -I../../.. -DPACKAGE_SYSCONF_DIR=\""/etc"\" -DPACKAGE_DATA_DIR=\""/usr/share"\" -DPACKAGE_BIN_DIR=\""/usr/bin"\" -DPACKAGE_LOCALE_DIR=\""/usr/share/locale"\" -DPACKAGE_LOCALSTATEDIR=\""/var"\" -I../../.. -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include -I/usr/include/dbus-1.0 -I/usr/lib/dbus-1.0/include -I/usr/include/dbus-1.0 -I/usr/lib/dbus-1.0/include -O3 -pipe -march=i686 -mtune=i686 -Wall -Wchar-subscripts -Wmissing-declarations -Wnested-externs -Wpointer-arith -Wcast-align -Wsign-compare -MT probe-input.o -MD -MP -MF ".deps/probe-input.Tpo" -c -o probe-input.o probe-input.c; \
then mv -f ".deps/probe-input.Tpo" ".deps/probe-input.Po"; else rm -f ".deps/probe-input.Tpo"; exit 1; fi
probe-input.c: In function `main':
probe-input.c:150: error: storage size of 'id' isn't known
probe-input.c:192: error: `BUS_HOST' undeclared (first use in this function)
probe-input.c:192: error: (Each undeclared identifier is reported only once
probe-input.c:192: error: for each function it appears in.)
probe-input.c:150: warning: unused variable `id'

configure options used:
./configure --prefix=/usr \
--sysconfdir=/etc \
--localstatedir=/var \
--disable-policy-kit \
--with-os-type=slackware \
--without-macbookpro \
--with-system-pid-file=/var/run/hal/pid

Any ideas?
 
  


Reply


Thread Tools Search this Thread
Search this Thread:

Advanced Search

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is Off
HTML code is Off
Trackbacks are Off
Pingbacks are On
Refbacks are Off


Similar Threads
Thread Thread Starter Forum Replies Last Post
Error compiling alsa-driver with slack 10.2 and 2.6.16.2 Kovacs Slackware 3 04-10-2006 09:40 PM
Unexpected error on kernel compiling on Slack 10.2 bato Slackware 4 02-04-2006 01:05 PM
Slack 10.2 Ker 2.6.8.1 RTAI 3.1 Blank screen Pier Slackware 4 11-06-2005 02:29 PM
Very slow X on Celeron 2.6GHZ Ztyx Mandriva 1 01-06-2005 06:21 AM
Gaim 5.9-1 on Slack - Compiling error wickdgin Linux - Software 7 08-29-2002 10:04 AM


All times are GMT -5. The time now is 09:34 AM.

Main Menu
 
My LQ
Write for LQ
LinuxQuestions.org is looking for people interested in writing Editorials, Articles, Reviews, and more. If you'd like to contribute content, let us know.
Main Menu
Syndicate
RSS1  Latest Threads
RSS1  LQ News
Twitter: @linuxquestions
identi.ca: @linuxquestions
Facebook: @linuxquestions
Open Source Consulting | Domain Registration