Thiết lập Môi trường Phát triển Trình điều khiển Thiết bị trên Linux Kernel 2.6.10
Việc phát triển trình điều khiển thiết bị cho các phiên bản kernel Linux cũ, chẳng hạn như Linux 2.6.10, thường đặt ra những thách thức đáng kể do sự không tương thích của các bộ công cụ biên dịch hiện đại. Mặc dù hệ thống hiện tại của bạn có thể đang chạy một kernel khá cũ (ví dụ: RHEL 5.8 với kernel 2.6.18), nhưng để biên dịch kernel 2.6.10 v ...
Đăng vào ngày 6 tháng 8 lúc 01:51
Cập nhật gcc và gcc-c++ trên CentOS 7
Trước khi cập nhật gcc, bạn cần xác định phiên bản gcc mong muốn và tham khảo bảng tương thích C++ từ trang chủ GCC: https://gcc.gnu.org/projects/cxx-status.html.
Trang chủ GCC: https://gcc.gnu.org.
Địa chỉ tải nguồn gcc: https://ftp.gnu.org/gnu/gcc/.
Môi trường thí nghiệm
CPU: 4 lõi xử lý, RAM: 8GB, Hệ điều hành: CentOS 7.9.2009.
Đã cấu hình ...
Đăng vào ngày 8 tháng 7 lúc 16:30
Khắc phục lỗi libstdc++.so.6 thiếu trong quá trình cài đặt CentOS7
Trong quá trình cài đặt MySQL 8.0.33 dạng nhị phân, tôi gặp phải các thông báo lỗi sau đây:
./mysqld: /lib64/libstdc++.so.6: version `CXXABI_1.3.11' not found (required by ./mysqld)
./mysqld: /lib64/libstdc++.so.6: version `CXXABI_1.3.8' not found (required by ./mysqld)
./mysqld: /lib64/libstdc++.so.6: version `GLIBCXX_3.4.22' not found (requir ...
Đăng vào ngày 5 tháng 7 lúc 19:18
Phân tích hệ số hằng trong tối ưu hóa hàm nhập nhanh bằng mã máy
Chức năng nhập dữ liệu nhanh (fast I/O) là một kỹ thuật phổ biến trong lập trình thi đấu nhằm giảm độ trễ khi đọc đầu vào. Một triển khai tiêu biểu như sau:
inline int fast_int_read() {
char c;
int result = 0;
while ((c = getchar()) < 33); // Bỏ qua ký tự trắng
do {
result = result * 10 + (c - '0');
c = get ...
Đăng vào ngày 4 tháng 7 lúc 19:18
Giải quyết vấn đề thường gặp khi cài đặt gói R
Giới thiệu
Khi sử dụng ngôn ngữ R để phân tích dữ liệu hoặc vẽ đồ thị, việc cài đặt các gói R là không thể tránh khỏi. Trong quá trình cài đặt, có thể gặp một số vấn đề không phải do mạng hoặc ngôn ngữ R mà do thiếu cấu hình hoặc trình biên dịch trong hệ thống. Bài viết này sẽ giới thiệu một lỗi phổ biến và cách khắc phục.
Vấn đề
Một ngườ ...
Đăng vào ngày 1 tháng 7 lúc 19:54
Khắc phục lỗi không gõ được tiếng Việt trong Sublime Text 3 trên Ubuntu qua terminal
Di chuyển vào thư mục cài đặt Sublime Text và tạo tệp nguồn C để xử lý input method:
cd /opt/sublime_text/
sudo nano sublime-fcitx-fix.c
Dán đoạn mã sau vào tệp sublime-fcitx-fix.c — mã này giúp đồng bộ vị trí con trỏ với bộ gõ tiếng Việt (fcitx):
#include <gtk/gtk.h>
#include <gdk/gdkx.h>
typedef GdkSegment GdkRegionBox;
struct ...
Đăng vào ngày 29 tháng 6 lúc 03:24
Phân tích file khởi động STM32 và script liên kết, cùng với việc thực hiện lại file khởi động STM32 bằng C
Trong phát triển STM32, file khởi động được cung cấp bởi ST offic chính cho toolchain GCC được viết bằng assembler ARM. Bài viết này sẽ phân tích cấu trúc của file đó và thực hiện lại nó bằng ngôn ngữ C.
Chúng ta sẽ lấy ví dụ từ dự án STM32F103C8T6 do ST cung cấp, bao gồm file khởi động startup_stm32f10x_md.s và script liên kết stm32_flash.ld. ...
Đăng vào ngày 26 tháng 6 lúc 16:48
Cấu Hình Monero Trên CentOS 7
Đầu tiên, tắt chức năng SELinux và tường lửa trên CentOS.
Nên nâng cấp gcc lên phiên bản 7.3.
Cài đặt môi trường
<pre><code>yum install centos-release-scl epel-release
yum install cmake3 devtoolset-7-gcc* hwloc-devel libmicrohttpd-devel openssl-devel make git -y
scl enable devtoolset-7 bash
git clone https://github.com/fireice-uk/xm ...
Đăng vào ngày 24 tháng 6 lúc 11:20
Tạo và Sử dụng Thư viện - Thư viện Tĩnh và Thư viện Động
Tạo và Sử dụng Thư viện - Thư viện Tĩnh và Thư viện Động
I. Giới thiệu Thư viện
Thư viện là các tệp tin trong lập trình máy tính được sử dụng để lưu trữ các biến, hàm và lớp, cung cấp cho các nhà phát triển tài nguyên có thể sử dụng ngay lập tức. Thư viện được chia thành hai loại chính: thư viện tĩnh và thư viện động, khác nhau về cách thức hoạ ...
Đăng vào ngày 24 tháng 6 lúc 10:36
Hiểu về "Định nghĩa lại" trong GCC - weak
Khi làm việc với STM32, có một từ khóa __weak mà khi chúng ta định nghĩa lại hàm được đánh dấu bởi __weak, chương trình sẽ gọi hàm mới này thay vì hàm gốc.
Tính năng này tương tự như việc định nghĩa lại trong C++ và cũng giống như khái niệm về weak symbol được mô tả trong cuốn sách "The Self-Cultivation of a Programmer".
Weak Symbol v ...
Đăng vào ngày 19 tháng 6 lúc 05:31