Take the 2-minute tour ×
Unix & Linux Stack Exchange is a question and answer site for users of Linux, FreeBSD and other Un*x-like operating systems.. It's 100% free, no registration required.

I have been trying (unsuccessfully) to compile a Broadcom driver for use on my CentOS laptop. Previously, I had used the instructions located here to compile and it worked flawlessly.

Now, I cannot get the driver to compile. Admittedly the errors look like something I should be able to simply fix, however, I have not found a way to get it to work for me yet. Here is what I get when I run the rpmbuild on my laptop:

$rpmbuild --rebuild --target=`uname -m` wl-kmod-5_100_82_112-3.el6.elrepo.nosrc.rpm 
Installing wl-kmod-5_100_82_112-3.el6.elrepo.nosrc.rpm
warning: InstallSourcePackage at: psm.c:244: Header V4 DSA/SHA1 Signature, key ID baadae52: NOKEY
warning: user ajb does not exist - using root
warning: group ajb does not exist - using root
warning: user ajb does not exist - using root
warning: group ajb does not exist - using root
warning: user ajb does not exist - using root
warning: group ajb does not exist - using root
Building target platforms: i686
Building for target i686
Executing(%prep): /bin/sh -e /var/tmp/rpm-tmp.BX2aRY
+ umask 022
+ cd /home/jblair/rpmbuild/BUILD
+ LANG=C
+ export LANG
+ unset DISPLAY
+ cd /home/jblair/rpmbuild/BUILD
+ rm -rf wl-kmod-5_100_82_112
+ /bin/mkdir -p wl-kmod-5_100_82_112
+ cd wl-kmod-5_100_82_112
+ /bin/chmod -Rf a+rX,u+w,g-w,o-w .
+ cd /home/jblair/rpmbuild/BUILD
+ cd wl-kmod-5_100_82_112
+ /usr/bin/gzip -dc /home/jblair/rpmbuild/SOURCES/hybrid-portsrc_x86_32-v5_100_82_112.tar.gz
+ /bin/tar -xf -
+ STATUS=0
+ '[' 0 -ne 0 ']'
+ /bin/chmod -Rf a+rX,u+w,g-w,o-w .
+ /bin/sed -i 's/\/lib\/modules\/`uname -r`\/build/\"\${KSRC}\"/' Makefile
+ echo 'override wl * weak-updates/wl'
+ /bin/cat
+ /bin/cat
+ exit 0
Executing(%build): /bin/sh -e /var/tmp/rpm-tmp.T8r6eV
+ umask 022
+ cd /home/jblair/rpmbuild/BUILD
+ cd wl-kmod-5_100_82_112
+ LANG=C
+ export LANG
+ unset DISPLAY
++ uname -r
+ /usr/bin/make KSRC=/usr/src/kernels/2.6.32-279.1.1.el6.i686
KBUILD_NOPEDANTIC=1 make -C "/usr/src/kernels/2.6.32-279.1.1.el6.i686" M=`pwd`
make[1]: Entering directory `/usr/src/kernels/2.6.32-279.1.1.el6.i686'
CFG80211 API is prefered for this kernel version
Using CFG80211 API
  LD      /home/jblair/rpmbuild/BUILD/wl-kmod-5_100_82_112/built-in.o
  CC [M]  /home/jblair/rpmbuild/BUILD/wl-kmod-5_100_82_112/src/shared/linux_osl.o
  CC [M]  /home/jblair/rpmbuild/BUILD/wl-kmod-5_100_82_112/src/wl/sys/wl_linux.o
  CC [M]  /home/jblair/rpmbuild/BUILD/wl-kmod-5_100_82_112/src/wl/sys/wl_iw.o
  CC [M]  /home/jblair/rpmbuild/BUILD/wl-kmod-5_100_82_112/src/wl/sys/wl_cfg80211.o
/home/jblair/rpmbuild/BUILD/wl-kmod-5_100_82_112/src/wl/sys/wl_cfg80211.c:64: warning: 'enum tx_power_setting' declared inside parameter list
/home/jblair/rpmbuild/BUILD/wl-kmod-5_100_82_112/src/wl/sys/wl_cfg80211.c:64: warning: its scope is only this definition or declaration, which is probably not what you want
/home/jblair/rpmbuild/BUILD/wl-kmod-5_100_82_112/src/wl/sys/wl_cfg80211.c:1110: warning: 'enum tx_power_setting' declared inside parameter list
/home/jblair/rpmbuild/BUILD/wl-kmod-5_100_82_112/src/wl/sys/wl_cfg80211.c:1110: error: parameter 2 ('type') has incomplete type
/home/jblair/rpmbuild/BUILD/wl-kmod-5_100_82_112/src/wl/sys/wl_cfg80211.c: In function 'wl_cfg80211_set_tx_power':
/home/jblair/rpmbuild/BUILD/wl-kmod-5_100_82_112/src/wl/sys/wl_cfg80211.c:1123: error: 'TX_POWER_AUTOMATIC' undeclared (first use in this function)
/home/jblair/rpmbuild/BUILD/wl-kmod-5_100_82_112/src/wl/sys/wl_cfg80211.c:1123: error: (Each undeclared identifier is reported only once
/home/jblair/rpmbuild/BUILD/wl-kmod-5_100_82_112/src/wl/sys/wl_cfg80211.c:1123: error: for each function it appears in.)
/home/jblair/rpmbuild/BUILD/wl-kmod-5_100_82_112/src/wl/sys/wl_cfg80211.c:1125: error: 'TX_POWER_LIMITED' undeclared (first use in this function)
/home/jblair/rpmbuild/BUILD/wl-kmod-5_100_82_112/src/wl/sys/wl_cfg80211.c:1131: error: 'TX_POWER_FIXED' undeclared (first use in this function)
/home/jblair/rpmbuild/BUILD/wl-kmod-5_100_82_112/src/wl/sys/wl_cfg80211.c: At top level:
/home/jblair/rpmbuild/BUILD/wl-kmod-5_100_82_112/src/wl/sys/wl_cfg80211.c:1649: warning: initialization from incompatible pointer type
/home/jblair/rpmbuild/BUILD/wl-kmod-5_100_82_112/src/wl/sys/wl_cfg80211.c:1651: warning: initialization from incompatible pointer type
/home/jblair/rpmbuild/BUILD/wl-kmod-5_100_82_112/src/wl/sys/wl_cfg80211.c:1652: warning: initialization from incompatible pointer type
/home/jblair/rpmbuild/BUILD/wl-kmod-5_100_82_112/src/wl/sys/wl_cfg80211.c:1653: warning: initialization from incompatible pointer type
/home/jblair/rpmbuild/BUILD/wl-kmod-5_100_82_112/src/wl/sys/wl_cfg80211.c:1654: warning: initialization from incompatible pointer type
/home/jblair/rpmbuild/BUILD/wl-kmod-5_100_82_112/src/wl/sys/wl_cfg80211.c:1658: warning: initialization from incompatible pointer type
/home/jblair/rpmbuild/BUILD/wl-kmod-5_100_82_112/src/wl/sys/wl_cfg80211.c: In function 'wl_inform_single_bss':
/home/jblair/rpmbuild/BUILD/wl-kmod-5_100_82_112/src/wl/sys/wl_cfg80211.c:1817: error: too few arguments to function 'ieee80211_channel_to_frequency'
/home/jblair/rpmbuild/BUILD/wl-kmod-5_100_82_112/src/wl/sys/wl_cfg80211.c: In function 'wl_bss_roaming_done':
/home/jblair/rpmbuild/BUILD/wl-kmod-5_100_82_112/src/wl/sys/wl_cfg80211.c:2117: warning: passing argument 2 of 'cfg80211_roamed' from incompatible pointer type
include/net/cfg80211.h:3035: note: expected 'struct ieee80211_channel *' but argument is of type 'u8 *'
/home/jblair/rpmbuild/BUILD/wl-kmod-5_100_82_112/src/wl/sys/wl_cfg80211.c:2117: warning: passing argument 4 of 'cfg80211_roamed' makes pointer from integer without a cast
include/net/cfg80211.h:3035: note: expected 'const u8 *' but argument is of type 's32'
/home/jblair/rpmbuild/BUILD/wl-kmod-5_100_82_112/src/wl/sys/wl_cfg80211.c:2117: warning: passing argument 5 of 'cfg80211_roamed' makes integer from pointer without a cast
include/net/cfg80211.h:3035: note: expected 'size_t' but argument is of type 'u8 *'
/home/jblair/rpmbuild/BUILD/wl-kmod-5_100_82_112/src/wl/sys/wl_cfg80211.c:2117: warning: passing argument 6 of 'cfg80211_roamed' makes pointer from integer without a cast
include/net/cfg80211.h:3035: note: expected 'const u8 *' but argument is of type 's32'
/home/jblair/rpmbuild/BUILD/wl-kmod-5_100_82_112/src/wl/sys/wl_cfg80211.c:2117: error: too few arguments to function 'cfg80211_roamed'
/home/jblair/rpmbuild/BUILD/wl-kmod-5_100_82_112/src/wl/sys/wl_cfg80211.c: In function 'wl_bss_connect_done':
/home/jblair/rpmbuild/BUILD/wl-kmod-5_100_82_112/src/wl/sys/wl_cfg80211.c:2149: warning: passing argument 2 of 'cfg80211_roamed' from incompatible pointer type
include/net/cfg80211.h:3035: note: expected 'struct ieee80211_channel *' but argument is of type 'u8 *'
/home/jblair/rpmbuild/BUILD/wl-kmod-5_100_82_112/src/wl/sys/wl_cfg80211.c:2149: warning: passing argument 4 of 'cfg80211_roamed' makes pointer from integer without a cast
include/net/cfg80211.h:3035: note: expected 'const u8 *' but argument is of type 's32'
/home/jblair/rpmbuild/BUILD/wl-kmod-5_100_82_112/src/wl/sys/wl_cfg80211.c:2149: warning: passing argument 5 of 'cfg80211_roamed' makes integer from pointer without a cast
include/net/cfg80211.h:3035: note: expected 'size_t' but argument is of type 'u8 *'
/home/jblair/rpmbuild/BUILD/wl-kmod-5_100_82_112/src/wl/sys/wl_cfg80211.c:2149: warning: passing argument 6 of 'cfg80211_roamed' makes pointer from integer without a cast
include/net/cfg80211.h:3035: note: expected 'const u8 *' but argument is of type 's32'
/home/jblair/rpmbuild/BUILD/wl-kmod-5_100_82_112/src/wl/sys/wl_cfg80211.c:2149: error: too few arguments to function 'cfg80211_roamed'
make[2]: *** [/home/jblair/rpmbuild/BUILD/wl-kmod-5_100_82_112/src/wl/sys/wl_cfg80211.o] Error 1
make[1]: *** [_module_/home/jblair/rpmbuild/BUILD/wl-kmod-5_100_82_112] Error 2
make[1]: Leaving directory `/usr/src/kernels/2.6.32-279.1.1.el6.i686'
make: *** [all] Error 2
error: Bad exit status from /var/tmp/rpm-tmp.T8r6eV (%build)


RPM build errors:
    InstallSourcePackage at: psm.c:244: Header V4 DSA/SHA1 Signature, key ID baadae52: NOKEY
    user ajb does not exist - using root
    group ajb does not exist - using root
    user ajb does not exist - using root
    group ajb does not exist - using root
    user ajb does not exist - using root
    group ajb does not exist - using root
    Bad exit status from /var/tmp/rpm-tmp.T8r6eV (%build)

Any help you can provide would be most appreciated. I will not have access to the box in question until this evening, but I should be able to answer most questions and will try any suggestions I receive as soon as I return from work tonight.

share|improve this question
add comment

2 Answers

From what you've posted, it looks like there's a problem linking the wl_cfg80211.o file, possibly a library missing. Some of the other errors seem to imply you're missing a header/include file to define things to match the library.

share|improve this answer
    
Ah, well, that does not sound in my area of expertise. I was hoping that there would be something that would be mentioned and I can go, "Duh, I should have known that," and fixed it. Thanks for the info about the header/include file! –  Josh Blair Jul 13 '12 at 13:35
    
You might try finding the source code in a more conventional format, allowing the './configure; make; make install' compilation sequence. If nothing else, you'll at least get better error messages if something IS missing. –  lornix Jul 13 '12 at 20:25
add comment

I have the same problem. Line 1110 produces the error as shown. The conditional compile macros are looking for a newer version of the kernel, since this old version will not compile. I wonder why CentOS is using such an old version of the kernel? I will be going to Fedora soon if I can not fix this.

share|improve this answer
    
There was a bug report that was filed and was worked on. It builds now and I have been browsing for a few weeks now with no issues. Go to elrepo.org/tiki/wl-kmod and follow the instructions for 6.3. –  Josh Blair Aug 1 '12 at 13:39
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.