Regression: flag "-pg" on /usr/src/$(uname -r)/Makefile prevents acerhk-source package from compiling. Computer becomes unusable because there is no equivalent to acerhk in the kernel.

Bug #555828 reported by subchee on 2010-04-05
This bug affects 18 people
Affects Status Importance Assigned to Milestone
acerhk (Ubuntu)
Jacek Chwastek
linux (Ubuntu)
Andy Whitcroft

Bug Description

acerhk-source does not compile on Lucid.

This is the output of the buildlog:

Error message:
  CC [M] /usr/src/modules/acerhk/acerhk.o
gcc: -pg and -fomit-frame-pointer are incompatible

Commenting the line
from /usr/src/$(uname -r)/Makefile solves the problem.


I've found this post:
and I tried the suggested diff from here:

But with the diff I'm still unable to compile acerhk, the error comes up.

output of

Could somebody help me? This kernel module would be important for me because I need this for my wi-fi LED and button to get work.

ProblemType: Bug
DistroRelease: Ubuntu 10.04
Package: acerhk-source 0.5.35-8
ProcVersionSignature: Ubuntu 2.6.32-19.28-generic
Uname: Linux 2.6.32-19-generic i686
Architecture: i386
Date: Mon Apr 5 18:06:13 2010
PackageArchitecture: all
SourcePackage: acerhk

subchee (subchee) wrote :
Cliff Roper (cliff-roper) wrote :

I too was frustrated by this, having struggled for months to get my laptop wifi running on Ubuntu before discovering acerhk, only to be facing the same problem again! However, I discovered that Acerhk appears to be no longer maintained. Instead, use acer-wmi. I have tried out the following and it works in Lucid rc and Karmic - probably in earlier versions too as acer-wmi has been round for a while.

If you have acerhk, remove it with:

sudo modprobe -r acerhk

then install acer-wmi:

sudo modprobe acer-wmi

You should now be able to connect to your hub via Network Manager. On my FSC Amilo Li 2735, this works straight 'out of the box' on a fresh install with no ethernet connection, though some laptops possibly require extra drivers.

To tidy up, and make wifi run automatically at start-up:

sudo nano /etc/modules

Delete 'acerhk' if present, and add 'acer-wmi' (without apostrophes) to the bottom of the text. Press Ctrl + O, then press Enter, then Ctrl + X to save and close. I also used Synaptics to remove acerhk and acerhkgui

Changed in acerhk (Ubuntu):
status: New → Confirmed
Nicolas Delvaux (malizor) wrote :

Same bug here with an acer aspire 9500.
For me it means that I can't use my keyboard shortcuts anymore (play/pause, next/previous track, mail, internet...)

When I launch "sudo modprobe acer-wmi", it fails with:

"FATAL: Error inserting acer_wmi (/lib/modules/2.6.32-21-generic/kernel/drivers/platform/x86/acer-wmi.ko): No such device"

(however I'm not sure that acer-wmi manage keyboard shortcuts...)

Any clue ?

Nicolas Delvaux (malizor) wrote :

I managed to compile acerhk on Lucid, thanks to this comment:

In a nutshell, do the following:

- open /usr/src/YOUR-KERNEL/Makefile
- search for "pg" and comment out the line in which it is
- run those commands to compile and install acerhk:

cp /usr/src/acerhk.tar.bz2 /tmp
cd /tmp
tar -xf acerhk.tar.bz2
cd /tmp/modules/acerhk
sudo make install

- finally, reverse the previous change in /usr/src/YOUR-KERNEL/Makefile (uncomment the line with "pg")

And it works !

kjloh (kjloh71) wrote :

I tried the changing Makefile approach but still get the following error during compilation:

make -C /lib/modules/`uname -r`/build SUBDIRS=/home/kjloh/acerhk-0.5.35 modules
make[1]: Entering directory `/usr/src/linux-headers-2.6.32-17-generic'
  CC [M] /home/kjloh/acerhk-0.5.35/acerhk.o
/home/kjloh/acerhk-0.5.35/acerhk.c: In function ‘call_bios_6xx’:
/home/kjloh/acerhk-0.5.35/acerhk.c:584: error: bp cannot be used in asm here
/home/kjloh/acerhk-0.5.35/acerhk.c: In function ‘set_mail_led’:
/home/kjloh/acerhk-0.5.35/acerhk.c:814: warning: ‘regs’ may be used uninitialized in this function
make[2]: *** [/home/kjloh/acerhk-0.5.35/acerhk.o] Error 1
make[1]: *** [_module_/home/kjloh/acerhk-0.5.35] Error 2
make[1]: Leaving directory `/usr/src/linux-headers-2.6.32-17-generic'
make: *** [acerhk.ko] Error 2

just wonder if there is any clue? thanks so much.


Nicolas Delvaux (malizor) wrote :

@kjloh: I don't know, if it works for me it should work for you.

Try updating your system first (2.6.32-17 is an outdated kernel on Lucid) and then retry with #4.

kjloh (kjloh71) wrote :

@nicolas, thanks for the reply. May I know which version of the kernel you are using? I seems to have problem after updated to ver33.03 and 34rc6. after I installed the build in /lib/module/uname-r is not linked. and after I linked and still got the following compilation error. did not get much luck....:(

make -C /lib/modules/`uname -r`/build SUBDIRS=/home/kjloh/acerhk-0.5.35 modules
make[1]: Entering directory `/usr/src/linux-headers-2.6.34-020634rc6'

  ERROR: Kernel configuration is invalid.
         include/generated/autoconf.h or include/config/auto.conf are missing.
         Run 'make oldconfig && make prepare' on kernel src to fix it.

  WARNING: Symbol version dump /usr/src/linux-headers-2.6.34-020634rc6/Module.symvers
           is missing; modules will have no dependencies and modversions.

  CC [M] /home/kjloh/acerhk-0.5.35/acerhk.o
cc1: error: include/generated/autoconf.h: No such file or directory
/home/kjloh/acerhk-0.5.35/acerhk.c:39:26: error: linux/config.h: No such file or directory
/home/kjloh/acerhk-0.5.35/acerhk.c:3149:2: error: #error This driver is only available for X86 architecture
make[2]: *** [/home/kjloh/acerhk-0.5.35/acerhk.o] Error 1
make[1]: *** [_module_/home/kjloh/acerhk-0.5.35] Error 2
make[1]: Leaving directory `/usr/src/linux-headers-2.6.34-020634rc6'
make: *** [acerhk.ko] Error 2

Nicolas Delvaux (malizor) wrote :

Currently I'm simply using 2.6.32-21 from lucid repositories.
I don't use any other package than acerhk-source and its dependencies.

kjloh (kjloh71) wrote :

oh. I actually could not boot up using 32-21, that's why 32-17....:(. may be I got to scout further to see which works....
thanks a lot.


kjloh (kjloh71) wrote :

@nicolas thanks for the great info. I manage to get kernel 32-21 up. and it works!!

Leo (leorolla) on 2010-05-08
Changed in linux (Ubuntu):
status: New → Confirmed
Leo (leorolla) on 2010-05-08
summary: - acerhk wont compile on lucid
+ Regression: flag "-pg" on /usr/src/$(uname -r)/Makefile prevents acerhk-
+ source package from compiling, cutting internet access
Leo (leorolla) on 2010-05-08
description: updated
tags: added: regression-release

This bug is really starting to annoy me know. I am not a software developer, I am an Ubuntu user. Every time there is a kernel update to my system I have to rebuild the acerhk driver to get my laptop wifi to work. And every time I have to rebuild the driver something else trips me up anout how to do it. I have to search the net and read yet more posts on this and then learn another option to make. ( I AM NOT A DEVELOPER, I AM A USER) I should not need to build a driver for a laptop that is 5 years old, it should now work and this bug should be closed.

My laptop is a Fujitsu Siemens Amilo Pro V3505 and I have been using it with Ubuntu for about 5 years now. I think every time I install or update Ubuntu, I have to mess with the scerhk driver to sort out my laptop so that I can switch the Wifi on and off.

Aaaaand another new kernel this week, and again acerhk doesn't work anymore. My dear, even gentoo was less frustrating...

We need a maintained acerhk, OR we need an acer-wmi with more devices being supported (I have an Acer TravelMate 292 LMi)

Filip Dominec (fdominec) wrote :

On Maverick, Acer TravelMate 240, the acerhk module cannot be compiled against the kernel 2.6.37-2 even with the "flag -pg" fix.

Then the deciding error mesage becomes:
/usr/src/modules/acerhk/acerhk.c:2941: error: unknown field ‘ioctl’ specified in initializer

Note: This disables for me the brightness control, as the acer-wmi module does not support the TravelMate 240.

matez (mates-fendrych) wrote :
Nicolas Delvaux (malizor) wrote :

@matez: this does not work anymore on Maverick (at least for me).

Filip Dominec (fdominec) wrote :

@matez: Nicolas is right. I tried commenting out the KBUILD_CFLAGS-line, but the compilation on the 2.6.37-2 kernel failed somewhere else. I wrote a mail to the original author of acerhk to find out if anyone maintained the package, but I got no reply yet.

Absence of acerhk probably accounts for unavailable brightness control, Fn key (along with NumLk, Home and End keys) and the temperature sensors on many laptops. Nothing vital, but still, someone experienced really should fix this package, please. I hope this will not be as hard, but I do not have enough experience to hope to fix the compilation errors in reasonable time.

Leo (leorolla) wrote :

Sometimes it *is* that vital. Some computers, like Fujitsu-Siemens, start with wireless off.

Without acerhk you simply can't use the laptop.

Filip Dominec (fdominec) wrote :

OK, so this may be a high-priority issue for many notebook users.

According to [], acerhk is obsoleted in favor of acer_acpi, and acer_acpi is now obsoleted in favor of acer_wmi. The latter does not support a broad range of hardware, some of which _were_ supported by acerhk. If nothing relevant changed in the kernel substantially, the task is just to port the acerhk functionality to the new module.

Some relevant info on acer_wmi:

I have written a mail to the current (?) acer-wmi maintainer, Carlos Corbacho, to find out what is the current situation.

acer-wmi only supports those laptops which provide a WMI interface to the relevant BIOS calls; if a laptop's BIOS does not provide that interface, then I don't intend to support it in acer-wmi.

For those older laptops, the wistron_btns module may cover some of this functionality (or perhaps it could be added there), or alternatively, acerhk could be cleaned up and submitted upstream.

Filip Dominec (fdominec) wrote :

These are rather bad news, because the present version of wistron_btns does not make any visible change at my Acer Travelmate 243C. Thus the problem still persists: it would be very nice if someone skilled fixes (and maintains) the acerhk module to support current kernel versions.

Hendrik Lönngren (hendrik0) wrote :

Well, this is what I did to fix the problem. Not very sure what it does though.

Filip Dominec (fdominec) wrote :

Hendrik, can you please post the minimal commands sequence you used to start the compilation? (I had some issues patching and compiling.)

Hendrik Lönngren (hendrik0) wrote :

Sorry for the late response ... If I recall correctly, I installed the acerhk-source package, then changed the Makefile (see patch) inside the archive /usr/src/acerhk.tar.bz2, and then did "module-assistant build acerhk". Does that work for you?

Nicolas Delvaux (malizor) wrote :

@Hendrik Lönngren: It does not work for me, with or without the patch make freeze without any error.
(I tried with module-assistant and manually)

Hendrik Lönngren (hendrik0) wrote :

Indeed, the above patch worked for 2.6.32, but not 2.6.35. But I got it working on 2.6.35 as well and created a new patch.

Hendrik Lönngren (hendrik0) wrote :

You might build like this:

cd /usr/src
tar -xvf acerhk.tar.bz2
cd modules/acerhk
wget -q -O - | patch -p1
cd ../..
tar -cjf acerhk.tar.bz2 modules/acerhk
module-assistant build acerhk

Nicolas Delvaux (malizor) wrote :

It works for me!
Many thanks.

You may want to submit your patch upstream or at least as a debdiff for Debian and Ubuntu. ;-)

Thanks Hendrik, your a life saver. :-)

Ive had this laptop (whitebook Aopen 1557) for quite some time, and it has always been troublesome getting acerhk up and running..

Andy Whitcroft (apw) wrote :

The patch Hendrik posted is for the upstream acerhk driver rather than for ubuntu. Seems that this is a bug in the acerhk package rather than a kernel bug, therefore closing the linux task.

Changed in linux (Ubuntu):
status: Confirmed → Invalid

Added the patch which solves the compilation problem on 2.6.37 (changed ioctl to unlocked_ioctl).

kjloh (kjloh71) wrote :

thanks Ruslans, nice, it works on my natty, using acerhkgui.

kjloh (kjloh71) wrote :

Hi there,just a head up. acerhk broken again in 38.5. it gives the following error:

make -C /lib/modules/`uname -r`/build SUBDIRS=/usr/share/acerhkgui/acerhk-0.5.35 modules
make[1]: Entering directory `/usr/src/linux-headers-2.6.38-5-generic'
  CC [M] /usr/share/acerhkgui/acerhk-0.5.35/acerhk.o
/usr/share/acerhkgui/acerhk-0.5.35/acerhk.c:39:26: fatal error: linux/config.h: No such file or directory
compilation terminated.
make[2]: *** [/usr/share/acerhkgui/acerhk-0.5.35/acerhk.o] Error 1
make[1]: *** [_module_/usr/share/acerhkgui/acerhk-0.5.35] Error 2
make[1]: Leaving directory `/usr/src/linux-headers-2.6.38-5-generic'
make: *** [acerhk.ko] Error 2
make -C /lib/modules/`uname -r`/build SUBDIRS= modules
make[1]: Entering directory `/usr/src/linux-headers-2.6.38-5-generic'
  CHK include/linux/version.h
  CHK include/generated/utsrelease.h
make[2]: *** No rule to make target `kernel/bounds.c', needed by `kernel/bounds.s'. Stop.
make[1]: *** [prepare0] Error 2
make[1]: Leaving directory `/usr/src/linux-headers-2.6.38-5-generic'
make: *** [acerhk.ko] Error 2

caixamagica (caixa-magica) wrote :

I confirm, it's broken again (Ubuntu 11.04 Natty):
make -C /lib/modules/`uname -r`/build SUBDIRS=/home/kubric/acerhk-0.5.35 modules
make[1]: Entrando no diretório `/usr/src/linux-headers-2.6.38-8-generic'
  CC [M] /home/kubric/acerhk-0.5.35/acerhk.o
/home/kubric/acerhk-0.5.35/acerhk.c:39:26: fatal error: linux/config.h: Ficheiro ou directoria inexistente
compilation terminated.
make[2]: ** [/home/kubric/acerhk-0.5.35/acerhk.o] Erro 1
make[1]: ** [_module_/home/kubric/acerhk-0.5.35] Erro 2
make[1]: Saindo do diretório `/usr/src/linux-headers-2.6.38-8-generic'
make: ** [acerhk.ko] Erro 2

Jacek Chwastek (cogito-16) wrote :

Have you tried building module using module-assistant? It seems to me that m-a uses different set of build rules and builds acerhk just fine. However it's now necessary to change in acerhk.c:

#include <linux/config.h>


#include <generated/autoconf.h>

MacRules (macrules) wrote :


I did try to build this module on 11.04 with module-assistant and it fails.
It's bad: when I type make : nothing happens!
So building in module-assistant stops at 0% .

It sucks: like others I cannot use my laptop after sleep, because wireless is dead.
Worse than that: all other connected wireless devices do not work either!
They all have this hardware switch message.

Ubuntu, please fix this.

I consider this high priority.

Gordon (weegogs) wrote :

I too have the same issue with acerhk not compling. I have tried module assistant and it fails. I have tried manually building acerhk and that fails.

I am getting really fed up with this now, I have a fujitsu laptop (V3505) that is 5 years old and every time I upgrade a kernel or upgrade ubuntu I have to build this from source, WHY? I am not a developer, I have had to learn how to try and build something from source code WHY. If linux what's to be accepted in the real world things like this should work.

To get wireless to work I have to boot into windows so that it will active the hardware, then reboot into ubuntu and then I can use wireless under ubuntu.

This is really really bad. Please fix this.

Leo (leorolla) wrote :

Hi Andy Whitcroft,
I'm marking it as "Confirmed" for Linux because Linux does not support this hardware, forcing the user to rely on this third-party module.
It should be supported by the default kernel, so I consider it a bug there too.

summary: Regression: flag "-pg" on /usr/src/$(uname -r)/Makefile prevents acerhk-
- source package from compiling, cutting internet access
+ source package from compiling. Computer becomes unusable because there
+ is no equivalent to acerhk in the kernel.
Changed in linux (Ubuntu):
status: Invalid → Confirmed
Jacek Chwastek (cogito-16) wrote :

I would like some people running Natty to compile attached source using module-assistant while leaving -pg uncommented, test if module is working correctly and give me some feedback. It works great on my Acer Aspire 3690, but I would prefer having info about some other hardware before trying to release fixed deb with source anywhere.

MacRules (macrules) wrote :


This is what I get now when using module-assistant :|
 Bad luck, the kernel headers for the target kernel version could
     │ not be found
     │ and you did not specify other valid kernel headers to use.

Gosh this sucks.
Thanks for your effort, it might be my system.

This is the make output:
root@ubuntu-WIM-2030:/usr/src/modules/acerhk# make
make -C /lib/modules/`uname -r`/build SUBDIRS=/usr/src/modules/acerhk modules
make[1]: Entering directory `/usr/src/linux-headers-2.6.38-8-generic'
  CC [M] /usr/src/modules/acerhk/acerhk.o
  Building modules, stage 2.
  MODPOST 1 modules
WARNING: modpost: Found 1 section mismatch(es).
To see full details build your kernel with:
  CC /usr/src/modules/acerhk/acerhk.mod.o
  LD [M] /usr/src/modules/acerhk/acerhk.ko
make[1]: Leaving directory `/usr/src/linux-headers-2.6.38-8-generic'

any help is greatly appreciated!

MacRules (macrules) wrote :

so in the end I found the driver, did an insmod and depmod -a and it worked with acerhkgui 0.7.2 deb package.
No clue why module-assistant seems borked.
Now to find a way to have the keys working.

Do you think there will be a more permanent fix?
Does module manager use dkms?
It would be great if it could rebuild after a kernel update.

Thank you !

Jacek Chwastek (cogito-16) wrote :

Hi MacRules,
For your module-assistant problem reinstalling kernel headers usually helps.At least it works in my case, when I get this info.

Jacek Chwastek (cogito-16) wrote :

I've released totally patched up source package to my PPA, that is ppa:cogito-16/ppa. However this release is for Natty only.It's patched up for kernel 2.6.38, so I don't know if it would work for older Ubuntu releases such as Lucid or Maverick. Main fix is included in modified patch for kernel 2.6.35, which was originally posted here by Hendrik Lönngren. It compiles just fine using module-assistant, so I consider this a recommended build method.

Gordon (weegogs) wrote :

Hi Jacek,

I too have managed to compile your revision of the acerhk module on the command line (have not tired module assistant) and now have functional Wifi on my fujitsu amilo pro v3505 laptop.

After loading the module I can use Fn-F10 to switch wifi on and off.

Many thanks for you help

MacRules (macrules) wrote :

awesome Jacek!
I used your ppa, installed the updated acerhk and after that module-assistant worked like a charm.
Thank you!
Can a dev makes sure that versions gets added to ubuntu main repositories?
I have no clue on how to do that?

Jacek Chwastek (cogito-16) wrote :

I've determined by testing on Virtualbox that it's possible to build acerhk from my revision of source on both Lucid and Maverick. I've tested it while using m-a and manually compiling. Manual compilation gives some warnings but module is still built. Could someone compile it and test resulting module? If so please give feedback here. In case of it working just fine I will put package for Lucid and Maverick in my repo, and we could hopefully close this bug.

kjloh (kjloh71) wrote :

hi Jacek,

I am sorry I probably did not get it right. Could you explain more on how do I use your package? I have apt-get install acerhk-source which it installed sucessfully.

so what do I do next?

For me I compiled the package downloaded from the link you have previously. and did a depmod -a acerhk.ko.

and I did a echo 1 > /proc/driver/acerhk/blueled and the it lights up.

but it still say the bluetooth is disabled.

Did I missed anything? I am using ACER travelmate 380.

thanks a lot.

Jacek Chwastek (cogito-16) wrote :

To the best of my knowledge of acerhk sending echo 1 to one of the leds only changes state of the led (for examle if I send it to mailled in my Aspire 3690 led will light up but mail client will not start or when I do it for wireless led my connection stays active despite led being off). Switching state of wireless/bluetooth is generally done by pressing correct key or key combination, at least it seems so by cursory look on acerhk.c code. It's known for the fact that acerhk was designed to replicate Windows driver for Acer hotkeys as closely as possible.

Changed in acerhk (Ubuntu):
assignee: nobody → Jacek Chwastek (cogito-16)
Jacek Chwastek (cogito-16) wrote :

I've copied my revision of acerhk-source package to Lucid and Maverick in my PPA.

Jacek Chwastek (cogito-16) wrote :

I'm releasing here the patch which solved the -pg problem named after first kernel version in Ubuntu for which it occured.

Jacek Chwastek (cogito-16) wrote :

This here is the patch fixing 2.6.38 build problem.

Andy Whitcroft (apw) wrote :

From the last two comments it seems that these are incompatibilities between the current kernel options and acerhk-source. As there seems to be fixes there for the issues I am going to close out the kernel task.

Changed in linux (Ubuntu):
status: Confirmed → Invalid
assignee: nobody → Andy Whitcroft (apw)
Jacek Chwastek (cogito-16) wrote :

Hi Andy,
It's true that version of acerhk from official universe repositories is incompatibile with current kernels. It's partly caused by the fact that original author of acerhk stopped developing it in 2007, and partly by the fact that last Debian revision which is current universe package was released in 2009.

Hi Andy,
A huge number of users cannot use their computers with Linux because there is no driver for Acer hot keys in the official kernel.
(Lucky us that have this unofficial unsupported acerhk package that needs to be patched here and there from time to time so that we can at least turn wireless on.)
So, should we file the kernel bug separately then?

On 19/05/2011, at 06:13, Andy Whitcroft <email address hidden> wrote:

>> From the last two comments it seems that these are incompatibilities
> between the current kernel options and acerhk-source. As there seems to
> be fixes there for the issues I am going to close out the kernel task.

Changed in acerhk (Ubuntu):
status: Confirmed → In Progress
p4trykx (p4trykx) wrote :

I applied all the patches from this bug report and from the previous one and I get a new problem.
I'm using Ubuntu 11.04 with 2.6.38-8-generic

/home/patryk/acerhk-0.5.35/acerhk.c: In function ‘acerhk_proc_init’:
/home/patryk/acerhk-0.5.35/acerhk.c:2671:18: error: ‘struct proc_dir_entry’ has no member named ‘owner’
/home/patryk/acerhk-0.5.35/acerhk.c:2680:12: error: ‘struct proc_dir_entry’ has no member named ‘owner’

p4trykx (p4trykx) wrote :

When I commented all the ->owner lines in function acer_proc_init the module compiles and even works :-) Just have to restart the machine after installation of this module.

Jacek, I can confirm this issue including the heave impact as indicated above. This problem has consumed considerable amount of people's lifetime already and is exposed to eat up a lot of other's so please help us getting this addressed and fixed in lucid, natty, oneiric.

tags: added: patch
Jacek Chwastek (cogito-16) wrote :

I've just released new package with ->owner lines commented out (for each of supported desktop release of Ubuntu), as usual in my PPA.

Jacek Chwastek (cogito-16) wrote :

New package for Precise Pangolin now in my PPA.

Hendrik Lönngren (hendrik0) wrote :

Jacek, thanks for maintaining the module. It compiles fine on Precise. But unfortunately, it doesn't work anymore for me. Apparently, the BIOS routine is found, but has no effect:

acerhk: connect(1) = 0x9610
acerhk: cmos index set to 0x00
acerhk: bios routine found at 0xc00fdd00
acerhk: wbutton2 = 0x9610

It used to be

acerhk: connect(1) = 0x8610
acerhk: cmos index set to 0x60
acerhk: bios routine found at 0xc00fdd00
acerhk: wbutton2 = 0x10

I am at a loss about what might cause this.

Hendrik Lönngren (hendrik0) wrote :

I found the reason for the above problem: It was the result of running a kernel requiring PAE on a cpu without PAE support, which otherwise doesn't seem to have any adverse effects (see bug #930447), but BIOS calls obviously do not work properly. Installing the non-PAE kernel solved the problem.

I post this in case anybody else needing acerhk has a Pentium M processor …

To post a comment you must log in.
This report contains Public information  Edit
Everyone can see this information.

Duplicates of this bug

Other bug subscribers