WelcomeWelcome | FAQFAQ | DownloadsDownloads | WikiWiki

Author Topic: Tinycore 14.0 64bit: Macbook Air Wifi - Broadcom 4360 WLAN - wl not found  (Read 6499 times)

Offline Juanito

  • Administrator
  • Hero Member
  • *****
  • Posts: 14851
Thanks  :)

Offline Juanito

  • Administrator
  • Hero Member
  • *****
  • Posts: 14851

Offline pek

  • Full Member
  • ***
  • Posts: 111
Thanks guys.
I patched all that and
Code: [Select]
make API=CFG80211 -C /mnt/sda1/tcl/tcz/14/tcz64/compileKernel/src/linux-6.1.2/hybrid_wl M=`pwd`Then I got wl.mod
I searched for wl.ko but nowhere to be found.


When I "cat wl.mod" I got
Code: [Select]
/mnt/sda1/tcl/tcz/14/tcz64/compileKernel/src/linux-6.1.2/hybrid_wl/src/shared/linux_osl.o
/mnt/sda1/tcl/tcz/14/tcz64/compileKernel/src/linux-6.1.2/hybrid_wl/src/wl/sys/wl_linux.o
/mnt/sda1/tcl/tcz/14/tcz64/compileKernel/src/linux-6.1.2/hybrid_wl/src/wl/sys/wl_iw.o
/mnt/sda1/tcl/tcz/14/tcz64/compileKernel/src/linux-6.1.2/hybrid_wl/src/wl/sys/wl_cfg80211_hybrid.o
Is this the file I'm supposed to look for?


Btw, when I did "make API=CFG80211 -C..."
It showed this in terminal
Code: [Select]
tc@box:/mnt/sda1/tcl/tcz/14/tcz64/compileKernel/src/linux-6.1.2/hybrid_wl$ make API=CFG80211 -C /mnt/sda1/tcl/tcz/14/tcz64/compileKernel/src/

linux-6.1.2 M=`pwd` > /home/tc/logWL.txt
tc@box:/mnt/sda1/tcl/tcz/14/tcz64/compileKernel/src/linux-6.1.2/hybrid_wl$ make API=CFG80211 -C /mnt/sda1/tcl/tcz/14/tcz64/compileKernel/src/

linux-6.1.2 M=`pwd`
make: Entering directory '/mnt/sda1/tcl/tcz/14/tcz64/compileKernel/src/linux-6.1.2'
CFG80211 API specified in command line
Using CFG80211 API
  CC [M]  /mnt/sda1/tcl/tcz/14/tcz64/compileKernel/src/linux-6.1.2/hybrid_wl/src/wl/sys/wl_linux.o
In file included from /mnt/sda1/tcl/tcz/14/tcz64/compileKernel/src/linux-6.1.2/hybrid_wl/src/wl/sys/wl_linux.c:81:
/mnt/sda1/tcl/tcz/14/tcz64/compileKernel/src/linux-6.1.2/hybrid_wl/src/wl/sys/wl_iw.h:73: warning: "isprint" redefined
   73 | #define isprint(c) bcm_isprint(c)
      |
In file included from ./include/linux/string_helpers.h:6,
                 from ./include/linux/seq_file.h:7,
                 from ./include/linux/seq_file_net.h:5,
                 from ./include/net/net_namespace.h:191,
                 from ./include/linux/netdevice.h:38,
                 from /mnt/sda1/tcl/tcz/14/tcz64/compileKernel/src/linux-6.1.2/hybrid_wl/src/include/linuxver.h:69,
                 from /mnt/sda1/tcl/tcz/14/tcz64/compileKernel/src/linux-6.1.2/hybrid_wl/src/wl/sys/wl_linux.c:27:
./include/linux/ctype.h:30: note: this is the location of the previous definition
   30 | #define isprint(c)      ((__ismask(c)&(_P|_U|_L|_D|_SP)) != 0)
      |
/mnt/sda1/tcl/tcz/14/tcz64/compileKernel/src/linux-6.1.2/hybrid_wl/src/wl/sys/wl_linux.c: In function 'wl_dump_ver':
/mnt/sda1/tcl/tcz/14/tcz64/compileKernel/src/linux-6.1.2/hybrid_wl/src/wl/sys/wl_linux.c:2125:17: error: macro "__DATE__" might prevent reproducible builds []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wdate-time-Werror=date-time]8;;]
 2125 |                 __DATE__, __TIME__, EPI_VERSION_STR);
      |                 ^~~~~~~~
/mnt/sda1/tcl/tcz/14/tcz64/compileKernel/src/linux-6.1.2/hybrid_wl/src/wl/sys/wl_linux.c:2125:27: error: macro "__TIME__" might prevent reproducible builds []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wdate-time-Werror=date-time]8;;]
 2125 |                 __DATE__, __TIME__, EPI_VERSION_STR);
      |                           ^~~~~~~~
cc1: some warnings being treated as errors
make[1]: *** [scripts/Makefile.build:250: /mnt/sda1/tcl/tcz/14/tcz64/compileKernel/src/linux-6.1.2/hybrid_wl/src/wl/sys/wl_linux.o] Error 1
make: *** [Makefile:1992: /mnt/sda1/tcl/tcz/14/tcz64/compileKernel/src/linux-6.1.2/hybrid_wl] Error 2
make: Leaving directory '/mnt/sda1/tcl/tcz/14/tcz64/compileKernel/src/linux-6.1.2'
tc@box:/mnt/sda1/tcl/tcz/14/tcz64/compileKernel/src/linux-6.1.2/hybrid_wl$


Offline Juanito

  • Administrator
  • Hero Member
  • *****
  • Posts: 14851
wl.ko is not built because of this:
Code: [Select]
cc1: some warnings being treated as errors
Edit the Makefile and try changing "EXTRA_CFLAGS :=" to "EXTRA_CFLAGS := -Wno-error"

Offline pek

  • Full Member
  • ***
  • Posts: 111
It gives same error I think
Code: [Select]
tc@box:/mnt/sda1/tcl/tcz/14/tcz64/compileKernel/src/linux-6.1.2/hybrid_wl$ make API=CFG80211 -C /mnt/

sda1/tcl/tcz/14/tcz64/compileKernel/src/linux-6.1.2 M=`pwd`
make: Entering directory '/mnt/sda1/tcl/tcz/14/tcz64/compileKernel/src/linux-6.1.2'
CFG80211 API specified in command line
Using CFG80211 API
  CC [M]  /mnt/sda1/tcl/tcz/14/tcz64/compileKernel/src/linux-6.1.2/hybrid_wl/src/wl/sys/wl_linux.o
In file included from /mnt/sda1/tcl/tcz/14/tcz64/compileKernel/src/linux-6.1.2/hybrid_wl/src/wl/sys/wl_linux.c:81:
/mnt/sda1/tcl/tcz/14/tcz64/compileKernel/src/linux-6.1.2/hybrid_wl/src/wl/sys/wl_iw.h:73: warning: "isprint" redefined
   73 | #define isprint(c) bcm_isprint(c)
      |
In file included from ./include/linux/string_helpers.h:6,
                 from ./include/linux/seq_file.h:7,
                 from ./include/linux/seq_file_net.h:5,
                 from ./include/net/net_namespace.h:191,
                 from ./include/linux/netdevice.h:38,
                 from /mnt/sda1/tcl/tcz/14/tcz64/compileKernel/src/linux-6.1.2/hybrid_wl/src/include/linuxver.h:69,
                 from /mnt/sda1/tcl/tcz/14/tcz64/compileKernel/src/linux-6.1.2/hybrid_wl/src/wl/sys/wl_linux.c:27:
./include/linux/ctype.h:30: note: this is the location of the previous definition
   30 | #define isprint(c)      ((__ismask(c)&(_P|_U|_L|_D|_SP)) != 0)
      |
/mnt/sda1/tcl/tcz/14/tcz64/compileKernel/src/linux-6.1.2/hybrid_wl/src/wl/sys/wl_linux.c: In function 'wl_dump_ver':
/mnt/sda1/tcl/tcz/14/tcz64/compileKernel/src/linux-6.1.2/hybrid_wl/src/wl/sys/wl_linux.c:2125:17: error: macro "__DATE__" might prevent reproducible builds []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wdate-time-Werror=date-time]8;;]
 2125 |                 __DATE__, __TIME__, EPI_VERSION_STR);
      |                 ^~~~~~~~
/mnt/sda1/tcl/tcz/14/tcz64/compileKernel/src/linux-6.1.2/hybrid_wl/src/wl/sys/wl_linux.c:2125:27: error: macro "__TIME__" might prevent reproducible builds []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wdate-time-Werror=date-time]8;;]
 2125 |                 __DATE__, __TIME__, EPI_VERSION_STR);
      |                           ^~~~~~~~
cc1: some warnings being treated as errors
make[1]: *** [scripts/Makefile.build:250: /mnt/sda1/tcl/tcz/14/tcz64/compileKernel/src/linux-6.1.2/hybrid_wl/src/wl/sys/wl_linux.o] Error 1
make: *** [Makefile:1992: /mnt/sda1/tcl/tcz/14/tcz64/compileKernel/src/linux-6.1.2/hybrid_wl] Error 2
make: Leaving directory '/mnt/sda1/tcl/tcz/14/tcz64/compileKernel/src/linux-6.1.2'
tc@box:/mnt/sda1/tcl/tcz/14/tcz64/compileKernel/src/linux-6.1.2/hybrid_wl$


Offline Rich

  • Administrator
  • Hero Member
  • *****
  • Posts: 11702
Hi pek

Try changing this in your  Makefile:
Code: [Select]
ifeq "$(GE_49)" "1"
EXTRA_CFLAGS       += -Wno-date-time
endif
to this:
Code: [Select]
#ifeq "$(GE_49)" "1"
EXTRA_CFLAGS       += -Wno-date-time
#endif

I think you then need to run:
Code: [Select]
make clean
# You may need to re-apply your patches here.
make

Offline pek

  • Full Member
  • ***
  • Posts: 111
Hi Rich,
"make clean" gives me this
Code: [Select]
tc@box:/mnt/sda1/tcl/tcz/14/tcz64/compileKernel/src/linux-6.1.2/hybrid_wl$ make clean
KBUILD_NOPEDANTIC=1 make -C /lib/modules/`uname -r`/build M=`pwd` clean
make[1]: Entering directory '/mnt/sda1/tcl/tcz/14/tcz64/compileKernel/src/linux-6.1.2/hybrid_wl'
make[1]: *** /lib/modules/6.1.2-tinycore64/build: No such file or directory.  Stop.
make[1]: Leaving directory '/mnt/sda1/tcl/tcz/14/tcz64/compileKernel/src/linux-6.1.2/hybrid_wl'
make: *** [Makefile:165: clean] Error 2
tc@box:/mnt/sda1/tcl/tcz/14/tcz64/compileKernel/src/linux-6.1.2/hybrid_wl$
Turns out /lib/modules/6.1.2-tinycore64/build is not there.

Offline Juanito

  • Administrator
  • Hero Member
  • *****
  • Posts: 14851
wl-modules-KERNEL posted to CorePure64 14.x repo - maybe you could test it (blacklist needed as per info file).

aus9

  • Guest
Hi pek

as Juanito as already built the module for you, forgive me for making observation
Quote
make[1]: *** /lib/modules/6.1.2-tinycore64/build: No such file or directory.  Stop.

Other posts by Juanito and others suggests you forgot to do this
Code: [Select]
sudo ln -s /usr/src/linux-6.1.2 /lib/modules/6.1.2-tinycore64/build

Offline pek

  • Full Member
  • ***
  • Posts: 111
Hi Juanito,
Thanks for the module. It works perfectly. The wifi is working well. :D


I would also like to point out my mistakes that I think caused my failed attempts.
I followed this http://www.tinycorelinux.net/11.x/x86_64/tcz/src/wl/
But I skipped this part..
Code: [Select]
gunzip Module.symvers-5.4.3-tinycore64.gz
cp Module.symvers-5.4.3-tinycore64 Module.symvers
make SUBDIRS=scripts/mod
Because I didn't know where to find Module.symvers-5.4.3-tinycore64.gz and there's no wget instruction for it.
After random google searching I think I found an article stating that "make SUBDIRS" is obsolete after Linux 5.0 or so that I thought.
So conveniently I left this part out.


Now I come back again to check the latest documentation
http://www.tinycorelinux.net/14.x/x86_64/tcz/src/wl/compile_wl
Then I realized my mistakes.


Well.. Another mission accomplished..!! (almost by me) ;D
Thank you very much for all the helps and guidance guys!!!
I learnt more awesome stuffs today.

Offline pek

  • Full Member
  • ***
  • Posts: 111
Hi pek

as Juanito as already built the module for you, forgive me for making observation
Quote
make[1]: *** /lib/modules/6.1.2-tinycore64/build: No such file or directory.  Stop.

Other posts by Juanito and others suggests you forgot to do this
Code: [Select]
sudo ln -s /usr/src/linux-6.1.2 /lib/modules/6.1.2-tinycore64/build

Thanks for looking into this aus9.
I tried "sudo ln -s /usr/src/linux-6.1.2 /lib/modules/6.1.2-tinycore64/build"

It makes the error go away
make[1]: *** /lib/modules/6.1.2-tinycore64/build: No such file or directory.  Stop.

However, it still does not produce wl.ko

So I think the mistakes that I posted right just before your reply is the problem.
Thanks.

Offline Juanito

  • Administrator
  • Hero Member
  • *****
  • Posts: 14851
But I skipped this part..
Code: [Select]
gunzip Module.symvers-5.4.3-tinycore64.gz
cp Module.symvers-5.4.3-tinycore64 Module.symvers
make SUBDIRS=scripts/mod

Prior to kernel 5.x this used to be a quick way to prepare the kernel source for an out of tree build.

Since kernel 5.x it looks like this is the equivalent of "make modules", which may take an hour or longer to complete.

One or the other needs to be done in order to properly prepare the kernel source.
« Last Edit: May 15, 2023, 05:00:08 AM by Juanito »

Offline pek

  • Full Member
  • ***
  • Posts: 111
Noted. Thank you for clarifying.. :)

Offline Rich

  • Administrator
  • Hero Member
  • *****
  • Posts: 11702
Hi pek
... Because I didn't know where to find Module.symvers-5.4.3-tinycore64.gz ...
In your case that would have been  Module.symvers-6.1.2-tinycore64.gz.
It is located with the matching source and config files:
http://tinycorelinux.net/14.x/x86_64/release/src/kernel/

Offline pek

  • Full Member
  • ***
  • Posts: 111
Hi Rich,
Yes I realized that after reading this
http://www.tinycorelinux.net/14.x/x86_64/tcz/src/wl/compile_wl

It was not hinted to download it (or at least I didn't know it's something to download) in
http://www.tinycorelinux.net/11.x/x86_64/tcz/src/wl/compile_wl
Which I initially tried to follow. Thus the confusion.
I thought "Module.symvers.." was some sort of command. :o

All good now.. Thanks