gexplorer / RTS5209-linux-driver

PCIE RTS5209 card reader driver for Linux
10 stars 2 forks source link

cannot compile, makefile missing #1

Open phgachoud opened 6 years ago

phgachoud commented 6 years ago
sudo make
sed "s/RTSX_MK_TIME/`date +%y.%m.%d.%H.%M`/" timestamp.in > timestamp.h
cp -f ./define.release ./define.h
make -C /lib/modules/4.9.0-3-amd64/build/ SUBDIRS= modules
make[1]: Entering directory '/usr/src/linux-headers-4.9.0-3-amd64'
/usr/src/linux-headers-4.9.0-3-common/scripts/Makefile.build:44: /usr/src/linux-headers-4.9.0-3-common/scripts/basic/Makefile: No such file or directory
make[5]: *** No rule to make target '/usr/src/linux-headers-4.9.0-3-common/scripts/basic/Makefile'.  Stop.
/usr/src/linux-headers-4.9.0-3-common/Makefile:450: recipe for target 'scripts_basic' failed
make[4]: *** [scripts_basic] Error 2
/usr/src/linux-headers-4.9.0-3-common/scripts/Makefile.build:44: /usr/src/linux-headers-4.9.0-3-common/arch/x86/entry/syscalls/Makefile: No such file or directory
make[4]: *** No rule to make target '/usr/src/linux-headers-4.9.0-3-common/arch/x86/entry/syscalls/Makefile'.  Stop.
arch/x86/Makefile:192: recipe for target 'archheaders' failed
make[3]: *** [archheaders] Error 2
Makefile:150: recipe for target 'sub-make' failed
make[2]: *** [sub-make] Error 2
Makefile:8: recipe for target 'all' failed
make[1]: *** [all] Error 2
make[1]: Leaving directory '/usr/src/linux-headers-4.9.0-3-amd64'
Makefile:35: recipe for target 'default' failed
make: *** [default] Error 2

Even if dpkg -l|grep linux-headers


ii  linux-headers-4.9.0-3-amd64                   4.9.30-2+deb9u5                            amd64        Header files for Linux 4.9.0-3-amd64
ii  linux-headers-4.9.0-3-common                  4.9.30-2+deb9u5                            all          Common header files for Linux 4.9.0-3
ii  linux-headers-4.9.0-4-amd64                   4.9.51-1                                   amd64        Header files for Linux 4.9.0-4-amd64
ii  linux-headers-4.9.0-4-common                  4.9.51-1                                   all          Common header files for Linux 4.9.0-4
ii  linux-headers-amd64                           4.9+80+deb9u2                              amd64        Header files for Linux amd64 configuration (meta-package)
kallekj commented 5 years ago

In my case I get another error while compiling:

In file included from ./include/linux/bitmap.h:9,
                 from ./include/linux/cpumask.h:12,
                 from ./arch/x86/include/asm/paravirt.h:17,
                 from ./arch/x86/include/asm/irqflags.h:72,
                 from ./include/linux/irqflags.h:16,
                 from ./include/linux/rcupdate.h:39,
                 from ./include/linux/rculist.h:11,
                 from ./include/linux/pid.h:5,
                 from ./include/linux/sched.h:14,
                 from ./include/linux/blkdev.h:5,
                 from /home/kalle/Downloads/Drivers/RTS5209-linux-driver/rtsx_scsi.c:23:
In function ‘memcpy’,
    inlined from ‘inquiry’ at /home/kalle/Downloads/Drivers/RTS5209-linux-driver/rtsx_scsi.c:366:3,
    inlined from ‘rtsx_scsi_handler’ at /home/kalle/Downloads/Drivers/RTS5209-linux-driver/rtsx_scsi.c:3126:13:
./include/linux/string.h:344:4: error: call to ‘__read_overflow2’ declared with attribute error: detected read beyond size of object passed as 2nd parameter
    __read_overflow2();
    ^~~~~~~~~~~~~~~~~~
make[2]: *** [scripts/Makefile.build:304: /home/kalle/Downloads/Drivers/RTS5209-linux-driver/rtsx_scsi.o] Error 1
make[1]: *** [Makefile:1517: _module_/home/kalle/Downloads/Drivers/RTS5209-linux-driver] Error 2
make[1]: Leaving directory '/usr/lib/modules/4.19.49-1-MANJARO/build'
make: *** [Makefile:37: default] Error 2

Running kernel 4.19.49-1-MANJARO

pabloko commented 5 years ago

@kallekj just faced same issue, it seems related to usage of FORTIFY_SOURCE to get around this edit rtsx_scsi.c on line 366 from memcpy(buf + 8,... to memcpy(buf[8],... so it compiled and i can use the sdcard reader on a lenovo P51

kallekj commented 5 years ago

@pabloko Thanks! But after some more research I found out that I actually don't have an RTS5209 reader in my Lenovo T490, it's an GL9750. It's working now after applying these patches! https://patchwork.kernel.org/project/linux-mmc/list/?series=167439