Hi anh Phú. Ở 45:10 với bài toán share variable giữa 2 kernel module thì ở Linux 5.15 (như Ubuntu 20.04) không còn support cách này nữa ạ mà chỉ ở Linux 4 như Ubuntu 16.04 (4.15.0-142-generic). Mà như với Ubuntu 16.04 thì compile 2 kernel này như trong video cũng bị WARNING đó ạ. Với bài toán share variable này thì cách giải quyết toàn diện nhất là dùng module.symvers và KBUILD_EXTRA_SYMBOLS trong Makefile
Ko đâu em, em thử đọc 1 số module trong tài liệu reference manual của Pi thì sẽ thấy họ mô tả ko đủ chi tiết cách config thanh ghi như thế nào cho 1 driver.
Hi anh Phú, khi em dùng makefile để build source code thì em gặp lỗi như này: make -C /lib/modules/5.19.0-35-generic/build/ M=$PWD modules make: Entering directory '/usr/src/linux-headers-5.19.0-35-generic' warning: the compiler differs from the one used to build the kernel The kernel was built by: x86_x64-linux-gnu-gcc(Ubuntu 11.3.0-1ubuntu1~22.04) 11.3.0 You are using: gcc (Ubuntu 11.3.0-1ubuntu1~22.04) 11.3.0 Em thử cài x86_x64-linux-gnu-gcc, nhưng không cài được. Làm sao để fix lỗi này nhỉ a. Em cảm ơn ạ
Nó báo là em thiếu cái binuties và 1 cái depend của cái này, em cài nó báo 2 cái này đã cài thành công. Nhưng khi em cài lại cái x86_64-linux-gnu thì nó lại báo là em chưa cài 2 cái trên
@@phuthodien Em đang dùng ubuntu 22.04, h em cài lại ubuntu 20 hay sao nhỉ a. Em cài gcc-x86-64 với câu lệnh sudo apt-get install -y gcc-x86-64-linux-gnu thì nó báo là em thiếu binutils-x86-64-linux-gnu, thằng này bị depend bởi libgcc-11-dev-amd-cross, em đã cài cả 2 thành công.
Quá chất những ý nghĩa của từng câu nói 9:30
Hi anh Phú. Ở 45:10 với bài toán share variable giữa 2 kernel module thì ở Linux 5.15 (như Ubuntu 20.04) không còn support cách này nữa ạ mà chỉ ở Linux 4 như Ubuntu 16.04 (4.15.0-142-generic). Mà như với Ubuntu 16.04 thì compile 2 kernel này như trong video cũng bị WARNING đó ạ. Với bài toán share variable này thì cách giải quyết toàn diện nhất là dùng module.symvers và KBUILD_EXTRA_SYMBOLS trong Makefile
Cảm ơn em đã góp ý nhé
video bài giảng quá hay ạ. Mong AD ra thêm nhiều video hơn
tuyệt vời !!! mong a ra thật nhiều clip
Quá hay. Cảm ơn a rất nhiều. Mong a ra video đều và có file code đáp án bài tập luôn cho ae học hỏi.
File code giải bài tập ở trong group nhé em
@@phuthodienVâng a. Hay quá😁
Em đang có sẵn Pi 4, tìm reference manual em thấy cũng khá chi tiết. Không biết Pi 4 có lý tưởng cho khóa này như BeagleBone không Thầy?
Ko đâu em, em thử đọc 1 số module trong tài liệu reference manual của Pi thì sẽ thấy họ mô tả ko đủ chi tiết cách config thanh ghi như thế nào cho 1 driver.
@@phuthodien Dạ em hiểu rồi ạ, em cảm ơn!
Cảm ơn anh nhé. Anh cho em xin file pptx bài này với ạ
dùng visual code ssh vào máy ảo
lúc compile file hello_world2 thì mặc dù e đã dùng extern rồi mà nó vẫn báo là undefined
Chắc do em chưa truyền options linker vào file c nữa
Hi anh Phú, khi em dùng makefile để build source code thì em gặp lỗi như này:
make -C /lib/modules/5.19.0-35-generic/build/ M=$PWD modules
make: Entering directory '/usr/src/linux-headers-5.19.0-35-generic'
warning: the compiler differs from the one used to build the kernel
The kernel was built by: x86_x64-linux-gnu-gcc(Ubuntu 11.3.0-1ubuntu1~22.04) 11.3.0
You are using: gcc (Ubuntu 11.3.0-1ubuntu1~22.04) 11.3.0
Em thử cài x86_x64-linux-gnu-gcc, nhưng không cài được.
Làm sao để fix lỗi này nhỉ a. Em cảm ơn ạ
Thế thì em phải fix lỗi không cài đc x86_64 gcc chứ. Em cài báo lỗi gì
Nó báo là em thiếu cái binuties và 1 cái depend của cái này, em cài nó báo 2 cái này đã cài thành công. Nhưng khi em cài lại cái x86_64-linux-gnu thì nó lại báo là em chưa cài 2 cái trên
@@vantungduong8758 em dùng ubuntu 20 là dc
@@phuthodien Em đang dùng ubuntu 22.04, h em cài lại ubuntu 20 hay sao nhỉ a. Em cài gcc-x86-64 với câu lệnh sudo apt-get install -y gcc-x86-64-linux-gnu thì nó báo là em thiếu binutils-x86-64-linux-gnu, thằng này bị depend bởi libgcc-11-dev-amd-cross, em đã cài cả 2 thành công.
anh gửi bản rm cho em với =)), tìm mãi không ra anh ơi
:))
b tìm ra chưa thế :((