VectorLinux

Please login or register.

Login with username, password and session length
Advanced search  

News:

Visit our home page for VL info. For support and documentation, visit the Vector Linux Knowledge Center or search the Knowledge Center and this Forum using the search box above.

Author Topic: Help ... syscall was removed, then ???  (Read 2875 times)

Kocil

  • Member
  • *
  • Posts: 96
  • Eko M. Budi
Help ... syscall was removed, then ???
« on: July 17, 2007, 11:47:28 pm »

Hi all.

I've been trying to compile some kernel related packages (libcap, progreiserfs, ...).
All failed with the same culprit, the source code use "_syscall2" macro.
In the old kernel (2.4.x in Slackware 11), that macro was defined in /usr/include/asm/unistd.h,
but in the new kernel (2.6.21.5 Slackware 12), it is not there anymore.

The API changed announcement is here http://lwn.net/Articles/2.6-kernel-api/.

But ... how to fix the error is still a mistery for me.
I've been googling for 1 week for this problem, no luck.
Please help ...

Thanks


« Last Edit: July 17, 2007, 11:51:14 pm by Kocil »
Logged

easuter

  • Global Moderator
  • Vectorian
  • *****
  • Posts: 2160
Re: Help ... syscall was removed, then ???
« Reply #1 on: July 18, 2007, 12:52:35 pm »

Kocil, if I remember correctly, one of the changes from 2.4 to 2.6 was that the headers had to be sanitized before being installed to /usr/include. I've made a sanitized 2.6 kernel headers package for the repo a while ago, so this should solve your problem.

Code: [Select]
slapt-get --install kernel-headers
Or get it here: http://vectorlinux.osuosl.org/veclinux-5.8/extra/kernel/kernel-headers-2.6.18.5-i586-4vl58.tlz

There is indeed a file called unistd.h in that package that will be installed to /usr/include.  :)
Logged

Kocil

  • Member
  • *
  • Posts: 96
  • Eko M. Budi
Re: Help ... syscall was removed, then ???
« Reply #2 on: July 20, 2007, 01:01:01 am »

Thanks easuter.

That will solve the problem, because kernel 2.6.18.x is OK.
However, it does not help for the newer kernel.
The _syscall macros have removed since 2.6.19.
Logged