1. THÔNG BÁO TUYỂN ADMIN DIỄN ĐÀN 2013
    Tìm kiếm nhà trọ - Ở ghép
    THÔNG BÁO BÁN ÁO SPKT.NET CHO THÀNH VIÊN DIỄN ĐÀN


    HÃY TÌM KIẾM Ở ĐÂY TRƯỚC KHI ĐẶT CÂU HỎI
    {xen:phrase loading}

[lập trình nhúng] Thắc mắc về lệnh trong linux..!

Thảo luận trong 'Lập trình nhúng' bắt đầu bởi linhdong, 27 Tháng ba 2012.

  1. linhdong Member

    Số bài viết: 306
    Đã được thích: 6
    Điểm thành tích: 18
    Giới tính: Nam
    Trong quá trình thực hiện chắc chắn các bạn sẽ gặp phải những lệnh mà không thể nào hiểu được ý nghĩa của nó là gì?Vậy topic này sẽ giúp bạn giải đáp những thắc mắc đó.
  2. linhdong Member

    Số bài viết: 306
    Đã được thích: 6
    Điểm thành tích: 18
    Giới tính: Nam
    Ý nghĩa các tùy chọn trong việc nén và giải nén file:
    • -z để lệnh cho tar chạy file này thông qua gzip để giải nén (sử dụng –j cho các file bzip)
    • -x để bung các file
    • -v cho “verbose”, để chúng ta có thể thấy danh sách các file đang bung
    • -f để lệnh cho tar rằng chúng ta đang làm việc với một file
  3. linhdong Member

    Số bài viết: 306
    Đã được thích: 6
    Điểm thành tích: 18
    Giới tính: Nam
    Sau khi giải nén xong và tìm tập tin INSTALL để đọc cụ thể cho phần hướng dẫn cài đặt.
    Thế nhưng hầu như các gói đều tuân theo các thao tác tuần tự sau:
    # ./configure
    # make
    # make install
    Ý nghĩa của lệnh Configure
    Khi các file được bung ra, mở một command terminal và vào thư mục nơi các file được giải nén trong đó. Trước khi biên dịch, chúng ta cần chạy kịch bản cấu hình. Công việc của kịch bản cấu hình là kiểm tra hệ thống của bạn về tất cả những gì phần mềm cần thiết để biên dịch chương trình từ mã nguồn thành chương trình nhị phân có thể sử dụng được. Nó sẽ tìm kiếm những thứ như phiên bản GCC và các công cụ cần thiết khác để xây dựng phần mềm. Khi bạn nằm trong thư mục với tất cả các file đã được bung từ tarball (sử dụng lệnh cd để change directory), hãy đánh vào ./configure
    Nếu tất cả đều diễn ra tốt đẹp, lệnh trên sẽ kiểm tra một loạt các phần khác nhau của hệ thống bạn, sau đó đưa bạn trở lại dòng lệnh như bên dưới:
    Vấn đề gây ra lỗi chung nhất trong bước này là mất dependency. Hãy quan sát bất cứ lỗi nào mà bạn gặp phải để xác định xem gói phần mềm nào bị thiếu.

  4. linhdong Member

    Số bài viết: 306
    Đã được thích: 6
    Điểm thành tích: 18
    Giới tính: Nam
    Ý nghĩa của lệnh Make

    Đây là phần cốt lõi của quá trình cài đặt 1 phần mềm trên linux – nơi chúng ta biên dịch mã nguồn thành một chương trình có khả năng chạy. Đây là bước đơn giản nhất, chỉ yêu cầu một lệnh đơn giản. Nếu bước cấu hình hoàn tất mà không có lỗi, bạn chỉ cần đánh vào make Đối với các chương trình lớn, bước này có thể mất đến vài phút. Khi quá trình kết thúc, bạn sẽ được đưa quay trở lại shell nhắc lệnh
    Chương trình của bạn lúc này đã hoàn toàn sẵn sàng cho sử dụng. Mặc dù vậy bạn vẫn nên chạy thêm một bước nữa để chương trình có thể được cài đặt hoàn toàn vào đúng location và có thể chạy từ bất cứ đâu.

    Make install

    Tất cả những gì cần thiết lúc này là copy chương trình vừa được biên dịch vào các thư mục hệ thống như /usr/bin để có thể chạy từ bất cứ thư mục nào mà không cần chỉ định đường dẫn đến các file. Do nó sẽ copy đến một thư mục bên ngoài thư mục chủ nên bạn có thể cần đến các đặc quyền root. Nếu bước này được hoàn tất mà không có lỗi, bạn hãy chạy sudo make install để copy các file. Đến đây, bạn đã hoàn thành xong phần việc của mình. Chương trình mới của bạn có thể được sử dụng giống như bất cứ chương trình nào đang chạy khác.
    * Các mẹo
    - Bạn có thể biên dịch từ mã nguồn nhiều lần (nhất là với những người muốn sử dụng các chương trình mới nhất) nên để làm cho quá trình biên dịch đó dễ dàng hơn, bạn hãy mở file .bashrc của mình từ thư mục chủ và bổ sung thêm các alias dưới đây vào phần cuối của nó:
    alias ungz="tar -zxvf" alias unbz="tar -jxvf" alias
    cmi="./configure && make && sudo make install"

    - Xem thêm phần Read INSTALL / README file đi kèm tarball nếu gói phải được build và install theo cách riêng
    $ vi INSTALL (hoặc Readme)
    (Vim là Text Editor, trên Ubuntu thay bằng gedit, nano,… )
    - Lọai bỏ một góiNếu bạn mong muốn lọai bỏ một gói đã cài đặt trên hệthống thì cách duy nhất là bạn phải vào lại thư mục mã nguồn của gói và gõ lệnh 'make uninstall' ... thông thường bạn sẽ có các câu lệnh sau: 'make clean' 'make
    distclean' ... Các câu lệnh có ý nghĩa rất tương đối và được định nghĩa trong tập tin Makefile, nên đầu tiên bạn cứ thử với 'make uninstall' rồi 'make clean' cái cuối cùng
    'make distclean' là giúp bạn xóa hết các tập tin đã biên dịch ở thư mục nguồn và đồng thời xóa Makefile, bạn phải chạy lại ./configure để tạo lại Makefile.
  5. linhdong Member

    Số bài viết: 306
    Đã được thích: 6
    Điểm thành tích: 18
    Giới tính: Nam
    Bạn đã từng gặp dòng lệnh kiểu này chưa: ./configure --prefix=/soft/gedit
    Giải thích: Đây là thảo tác quản lý gói
    Do việc xóa bỏ một gói như trên rất là phiền phức đôi lúc bạn chẳng thể xóa bỏđược nếu như mất đi mã nguồn, cho nên bạn có thể thay vì cài nó vào thư mục mặc định là /usr thì bạn có thể cài vào các thư mục của riêng bạn, ví dụ như bạn có thể tạo thư mục '/soft' ...
    Sau đó để cài gói gedit thì bạn tạo thêm thư mục /soft/gedit và dùng lệnh ./configure ...
    bạn thêm tùy chọn sau:
    ./configure --prefix=/soft/gedit
    thì khi bạn gõ make install sẽ copy tòan bộ sang thư mục /soft/gedit .. Khi bạn muốn xóa tòan bộ gói thì chỉ đơn giản xóa đi thư mục đó thôi. Lưu ý là khi bạn cài vào thư mục riêng của mình rồi bạn phải tạo 2 đường dẫn cho 2 biến mội trường (environment
    variable) LD_LIBRARY_PATH và PKG_CONFIG_PATH ...
    LD_LIBRARY_PATH sẽ có đường dẫn đến thư mục lib của gói vừa tạo (ví dụ như /soft/gedit/lib) còn PKG_CONFIG_PATH sẽ có đường dẫn đến thư mục pkg_config trong thư mục lib (ví dụ như /soft/gedit/lib/pkg_config) .. Bên cạnh đó nếu bạn muốn chương trình gọi tự động thì bạn cũng nên thêm vào biến PATH cho gói của mình.
  6. linhdong Member

    Số bài viết: 306
    Đã được thích: 6
    Điểm thành tích: 18
    Giới tính: Nam
  7. linhdong Member

    Số bài viết: 306
    Đã được thích: 6
    Điểm thành tích: 18
    Giới tính: Nam

Chia sẻ trang này