LinuxQuestions.org
Welcome to the most active Linux Forum on the web.
Home Forums Tutorials Articles Register
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
  Search this Thread
Old 03-10-2018, 01:48 AM   #1
tramni1980
Member
 
Registered: Jul 2006
Location: Köln, Germany
Distribution: Slackware64-14.2 & -current, DragonFly BSD, OpenBSD
Posts: 819

Rep: Reputation: 55
cannot build virtualbox-kernel-5.0.40 in -current


Hello,
I am running Slackware64-current with kernel 4.14.24. I cannot install the
virtualbox-kernel-5.0.40 package because of the following compilation errors:
Code:
*** Building 'vboxdrv' module ***
make[1]: Entering directory '/tmp/SBo/virtualbox-kernel-5.0.40/vboxdrv'
make KBUILD_VERBOSE= SUBDIRS=/tmp/SBo/virtualbox-kernel-5.0.40/vboxdrv SRCROOT=/tmp/SBo/virtualbox-kernel-5.0.40/vboxdrv CONFIG_MODULE_SIG= -C /lib/modules/4.14.24/build modules
make[2]: Entering directory '/usr/src/linux-4.14.24'
  CC [M]  /tmp/SBo/virtualbox-kernel-5.0.40/vboxdrv/linux/SUPDrv-linux.o
  CC [M]  /tmp/SBo/virtualbox-kernel-5.0.40/vboxdrv/SUPDrv.o
  CC [M]  /tmp/SBo/virtualbox-kernel-5.0.40/vboxdrv/SUPDrvGip.o
In file included from ./include/linux/atomic.h:5:0,
                 from ./include/linux/jump_label.h:186,
                 from ./arch/x86/include/asm/string_64.h:6,
                 from ./arch/x86/include/asm/string.h:5,
                 from ./include/linux/string.h:19,
                 from /tmp/SBo/virtualbox-kernel-5.0.40/vboxdrv/include/iprt/string.h:37,
                 from /tmp/SBo/virtualbox-kernel-5.0.40/vboxdrv/linux/../SUPDrvInternal.h:43,
                 from /tmp/SBo/virtualbox-kernel-5.0.40/vboxdrv/linux/SUPDrv-linux.c:32:
./arch/x86/include/asm/atomic.h: In function ‘atomic_try_cmpxchg’:
./arch/x86/include/asm/atomic.h:193:2: error: undefined named operand ‘new’
  return try_cmpxchg(&v->counter, old, new);
  ^~~~~~
./arch/x86/include/asm/atomic.h:193:2: error: undefined named operand ‘new’
./arch/x86/include/asm/atomic.h:193:2: error: undefined named operand ‘new’
./arch/x86/include/asm/atomic.h:193:2: error: undefined named operand ‘new’
In file included from ./arch/x86/include/asm/atomic.h:276:0,
                 from ./include/linux/atomic.h:5,
                 from ./include/linux/jump_label.h:186,
                 from ./arch/x86/include/asm/string_64.h:6,
                 from ./arch/x86/include/asm/string.h:5,
                 from ./include/linux/string.h:19,
                 from /tmp/SBo/virtualbox-kernel-5.0.40/vboxdrv/include/iprt/string.h:37,
                 from /tmp/SBo/virtualbox-kernel-5.0.40/vboxdrv/linux/../SUPDrvInternal.h:43,
                 from /tmp/SBo/virtualbox-kernel-5.0.40/vboxdrv/linux/SUPDrv-linux.c:32:
./arch/x86/include/asm/atomic64_64.h: In function ‘atomic64_try_cmpxchg’:
./arch/x86/include/asm/atomic64_64.h:183:2: error: undefined named operand ‘new’
  return try_cmpxchg(&v->counter, old, new);
  ^~~~~~
./arch/x86/include/asm/atomic64_64.h:183:2: error: undefined named operand ‘new’
./arch/x86/include/asm/atomic64_64.h:183:2: error: undefined named operand ‘new’
./arch/x86/include/asm/atomic64_64.h:183:2: error: undefined named operand ‘new’
  CC [M]  /tmp/SBo/virtualbox-kernel-5.0.40/vboxdrv/SUPDrvSem.o
In file included from ./include/linux/atomic.h:5:0,
                 from ./include/linux/jump_label.h:186,
                 from ./arch/x86/include/asm/string_64.h:6,
                 from ./arch/x86/include/asm/string.h:5,
                 from ./include/linux/string.h:19,
                 from /tmp/SBo/virtualbox-kernel-5.0.40/vboxdrv/include/iprt/string.h:37,
                 from /tmp/SBo/virtualbox-kernel-5.0.40/vboxdrv/SUPDrvInternal.h:43,
                 from /tmp/SBo/virtualbox-kernel-5.0.40/vboxdrv/SUPDrv.c:33:
./arch/x86/include/asm/atomic.h: In function ‘atomic_try_cmpxchg’:
./arch/x86/include/asm/atomic.h:193:2: error: undefined named operand ‘new’
  return try_cmpxchg(&v->counter, old, new);
  ^~~~~~
./arch/x86/include/asm/atomic.h:193:2: error: undefined named operand ‘new’
./arch/x86/include/asm/atomic.h:193:2: error: undefined named operand ‘new’
./arch/x86/include/asm/atomic.h:193:2: error: undefined named operand ‘new’
In file included from ./arch/x86/include/asm/atomic.h:276:0,
                 from ./include/linux/atomic.h:5,
                 from ./include/linux/jump_label.h:186,
                 from ./arch/x86/include/asm/string_64.h:6,
                 from ./arch/x86/include/asm/string.h:5,
                 from ./include/linux/string.h:19,
                 from /tmp/SBo/virtualbox-kernel-5.0.40/vboxdrv/include/iprt/string.h:37,
                 from /tmp/SBo/virtualbox-kernel-5.0.40/vboxdrv/SUPDrvInternal.h:43,
                 from /tmp/SBo/virtualbox-kernel-5.0.40/vboxdrv/SUPDrv.c:33:
./arch/x86/include/asm/atomic64_64.h: In function ‘atomic64_try_cmpxchg’:
./arch/x86/include/asm/atomic64_64.h:183:2: error: undefined named operand ‘new’
  return try_cmpxchg(&v->counter, old, new);
  ^~~~~~
./arch/x86/include/asm/atomic64_64.h:183:2: error: undefined named operand ‘new’
./arch/x86/include/asm/atomic64_64.h:183:2: error: undefined named operand ‘new’
./arch/x86/include/asm/atomic64_64.h:183:2: error: undefined named operand ‘new’
In file included from ./include/linux/atomic.h:5:0,
                 from ./include/linux/jump_label.h:186,
                 from ./arch/x86/include/asm/string_64.h:6,
                 from ./arch/x86/include/asm/string.h:5,
                 from ./include/linux/string.h:19,
                 from /tmp/SBo/virtualbox-kernel-5.0.40/vboxdrv/include/iprt/string.h:37,
                 from /tmp/SBo/virtualbox-kernel-5.0.40/vboxdrv/SUPDrvInternal.h:43,
                 from /tmp/SBo/virtualbox-kernel-5.0.40/vboxdrv/SUPDrvGip.c:33:
./arch/x86/include/asm/atomic.h: In function ‘atomic_try_cmpxchg’:
./arch/x86/include/asm/atomic.h:193:2: error: undefined named operand ‘new’
  return try_cmpxchg(&v->counter, old, new);
  ^~~~~~
./arch/x86/include/asm/atomic.h:193:2: error: undefined named operand ‘new’
./arch/x86/include/asm/atomic.h:193:2: error: undefined named operand ‘new’
./arch/x86/include/asm/atomic.h:193:2: error: undefined named operand ‘new’
In file included from ./arch/x86/include/asm/atomic.h:276:0,
                 from ./include/linux/atomic.h:5,
                 from ./include/linux/jump_label.h:186,
                 from ./arch/x86/include/asm/string_64.h:6,
                 from ./arch/x86/include/asm/string.h:5,
                 from ./include/linux/string.h:19,
                 from /tmp/SBo/virtualbox-kernel-5.0.40/vboxdrv/include/iprt/string.h:37,
                 from /tmp/SBo/virtualbox-kernel-5.0.40/vboxdrv/SUPDrvInternal.h:43,
                 from /tmp/SBo/virtualbox-kernel-5.0.40/vboxdrv/SUPDrvGip.c:33:
./arch/x86/include/asm/atomic64_64.h: In function ‘atomic64_try_cmpxchg’:
./arch/x86/include/asm/atomic64_64.h:183:2: error: undefined named operand ‘new’
  return try_cmpxchg(&v->counter, old, new);
  ^~~~~~
./arch/x86/include/asm/atomic64_64.h:183:2: error: undefined named operand ‘new’
./arch/x86/include/asm/atomic64_64.h:183:2: error: undefined named operand ‘new’
./arch/x86/include/asm/atomic64_64.h:183:2: error: undefined named operand ‘new’
In file included from ./include/linux/atomic.h:5:0,
                 from ./include/linux/jump_label.h:186,
                 from ./arch/x86/include/asm/string_64.h:6,
                 from ./arch/x86/include/asm/string.h:5,
                 from ./include/linux/string.h:19,
                 from /tmp/SBo/virtualbox-kernel-5.0.40/vboxdrv/include/iprt/string.h:37,
                 from /tmp/SBo/virtualbox-kernel-5.0.40/vboxdrv/SUPDrvInternal.h:43,
                 from /tmp/SBo/virtualbox-kernel-5.0.40/vboxdrv/SUPDrvSem.c:33:
./arch/x86/include/asm/atomic.h: In function ‘atomic_try_cmpxchg’:
./arch/x86/include/asm/atomic.h:193:2: error: undefined named operand ‘new’
  return try_cmpxchg(&v->counter, old, new);
  ^~~~~~
./arch/x86/include/asm/atomic.h:193:2: error: undefined named operand ‘new’
./arch/x86/include/asm/atomic.h:193:2: error: undefined named operand ‘new’
./arch/x86/include/asm/atomic.h:193:2: error: undefined named operand ‘new’
In file included from ./arch/x86/include/asm/atomic.h:276:0,
                 from ./include/linux/atomic.h:5,
                 from ./include/linux/jump_label.h:186,
                 from ./arch/x86/include/asm/string_64.h:6,
                 from ./arch/x86/include/asm/string.h:5,
                 from ./include/linux/string.h:19,
                 from /tmp/SBo/virtualbox-kernel-5.0.40/vboxdrv/include/iprt/string.h:37,
                 from /tmp/SBo/virtualbox-kernel-5.0.40/vboxdrv/SUPDrvInternal.h:43,
                 from /tmp/SBo/virtualbox-kernel-5.0.40/vboxdrv/SUPDrvSem.c:33:
./arch/x86/include/asm/atomic64_64.h: In function ‘atomic64_try_cmpxchg’:
./arch/x86/include/asm/atomic64_64.h:183:2: error: undefined named operand ‘new’
  return try_cmpxchg(&v->counter, old, new);
  ^~~~~~
./arch/x86/include/asm/atomic64_64.h:183:2: error: undefined named operand ‘new’
./arch/x86/include/asm/atomic64_64.h:183:2: error: undefined named operand ‘new’
./arch/x86/include/asm/atomic64_64.h:183:2: error: undefined named operand ‘new’
make[3]: *** [scripts/Makefile.build:320: /tmp/SBo/virtualbox-kernel-5.0.40/vboxdrv/SUPDrvSem.o] Error 1
make[3]: *** Waiting for unfinished jobs....
make[3]: *** [scripts/Makefile.build:320: /tmp/SBo/virtualbox-kernel-5.0.40/vboxdrv/SUPDrvGip.o] Error 1
make[3]: *** [scripts/Makefile.build:320: /tmp/SBo/virtualbox-kernel-5.0.40/vboxdrv/SUPDrv.o] Error 1
make[3]: *** [scripts/Makefile.build:320: /tmp/SBo/virtualbox-kernel-5.0.40/vboxdrv/linux/SUPDrv-linux.o] Error 1
make[2]: *** [Makefile:1508: _module_/tmp/SBo/virtualbox-kernel-5.0.40/vboxdrv] Error 2
make[2]: Leaving directory '/usr/src/linux-4.14.24'
make[1]: *** [Makefile:299: vboxdrv] Error 2
make[1]: Leaving directory '/tmp/SBo/virtualbox-kernel-5.0.40/vboxdrv'
make: *** [Makefile:40: all] Error 2
Any sugestions will be appreciated.

Best regards,
Martin
 
Old 03-10-2018, 02:46 AM   #2
business_kid
LQ Guru
 
Registered: Jan 2006
Location: Ireland
Distribution: Slackware, Slarm64 & Android
Posts: 16,288

Rep: Reputation: 2322Reputation: 2322Reputation: 2322Reputation: 2322Reputation: 2322Reputation: 2322Reputation: 2322Reputation: 2322Reputation: 2322Reputation: 2322Reputation: 2322
To compile virtual box-like them I always had to put the config of the kernel I was running in the kernel source and run
Code:
make clean && make
. Then don't do a make clean

That said, your problems appear to be with
./arch/x86/include/asm/atomic.h which is probably a kernel header file. Have you tried updating the kernel headers?
Code:
make headers_install
does it, iirc. You can always install the package over it again if needed.
 
Old 03-10-2018, 03:15 AM   #3
tramni1980
Member
 
Registered: Jul 2006
Location: Köln, Germany
Distribution: Slackware64-14.2 & -current, DragonFly BSD, OpenBSD
Posts: 819

Original Poster
Rep: Reputation: 55
Hi,
thank you for your reply. I do not understand, how can I update the headers, when they are the latest that came with the new 4.14.24 kernel? Aren't they already updated?
 
Old 03-10-2018, 04:16 AM   #4
business_kid
LQ Guru
 
Registered: Jan 2006
Location: Ireland
Distribution: Slackware, Slarm64 & Android
Posts: 16,288

Rep: Reputation: 2322Reputation: 2322Reputation: 2322Reputation: 2322Reputation: 2322Reputation: 2322Reputation: 2322Reputation: 2322Reputation: 2322Reputation: 2322Reputation: 2322
Linux copy or install commands from the terminal simply overwrite the existing file.

You can do it with packages if you can find them. Otherwise, install old headers where the files exist,followed by a 'make headers_install' from the new That should work. Your headers will be out of synch with your installed package, but I imagine that the sky will not fall in.

EDIT: Do not use upgradepkg in slackware which deletes the old package. Use installing and install both. I would use an old headers package and run the 'make headers_install' with an old package containing your missing firmware installed. Do not install the 'current' firmware or use upgradepkg to install the old headers.

Last edited by business_kid; 03-10-2018 at 04:25 AM.
 
Old 03-10-2018, 10:53 PM   #5
bassmadrigal
LQ Guru
 
Registered: Nov 2003
Location: West Jordan, UT, USA
Distribution: Slackware
Posts: 8,792

Rep: Reputation: 6656Reputation: 6656Reputation: 6656Reputation: 6656Reputation: 6656Reputation: 6656Reputation: 6656Reputation: 6656Reputation: 6656Reputation: 6656Reputation: 6656
Personally, I would just recommend using the installer to install the latest 5.2.x version. It is designed to work with these newer kernels. Normally, I prefer to use the SlackBuilds from SBo, but trying to get it to work with a newer kernel was really frustrating, so I eventually just switched to using their installer, and it worked great with no fuss.

Grab the AMD64 "All distributions" version from their download page and then run the installer as root in the terminal.
 
1 members found this post helpful.
Old 03-13-2018, 03:22 AM   #6
tramni1980
Member
 
Registered: Jul 2006
Location: Köln, Germany
Distribution: Slackware64-14.2 & -current, DragonFly BSD, OpenBSD
Posts: 819

Original Poster
Rep: Reputation: 55
Thank you very much for your replies. As I hate having orphan files on my system, I guess I have no choice but wait until the next stable release of Slackware comes, so that I can use the slackbuilds to build the virtualbox driver and the additional packages. I only use current now, because my laptop is new and the kernels in the stable Slackware releases do not support it.
 
Old 03-13-2018, 06:31 PM   #7
linuxbawks
Member
 
Registered: Apr 2013
Distribution: Snuckware
Posts: 240

Rep: Reputation: 17
It is possible to build it on -14.2. I only just did it recently. The finicky mature of the SB process allows one to forget.
 
Old 03-13-2018, 07:05 PM   #8
bassmadrigal
LQ Guru
 
Registered: Nov 2003
Location: West Jordan, UT, USA
Distribution: Slackware
Posts: 8,792

Rep: Reputation: 6656Reputation: 6656Reputation: 6656Reputation: 6656Reputation: 6656Reputation: 6656Reputation: 6656Reputation: 6656Reputation: 6656Reputation: 6656Reputation: 6656
Quote:
Originally Posted by linuxbawks View Post
It is possible to build it on -14.2. I only just did it recently. The finicky mature of the SB process allows one to forget.
OP stated they are running -current due to the newer kernels. The SlackBuild for 14.2 fails if you're using a more modern kernel, so OP either needs to use the installer for a more recent version of VirtualBox, downgrade to 14.2 (which they can't due to needing the newer hardware support the newer kernels bring), or not use it until the SlackBuild is updated.
 
1 members found this post helpful.
  


Reply



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



Similar Threads
Thread Thread Starter Forum Replies Last Post
VirtualBox Kernel Module no longer builds under -current kernel update of 17-Nov-2017 statguy Slackware 35 01-21-2018 08:34 PM
[SOLVED] VirtualBox failed to build on current mchagas Slackware 4 08-30-2017 09:47 AM
[SOLVED] Virtualbox-How to install the build and header files for my current Linux kernel? gabytf Linux - Virtualization and Cloud 4 07-13-2013 03:26 PM
Kernel build Virtualbox error CollieJim Linux - Kernel 3 04-27-2013 10:25 AM
[SOLVED] Can't Build VirtualBox Kernel Module in 13.1 Woodsman Slackware 2 04-26-2011 10:52 PM

LinuxQuestions.org > Forums > Linux Forums > Linux - Distributions > Slackware

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

Main Menu
Advertisement
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
Open Source Consulting | Domain Registration