Hiển thị kết quả từ 1 đến 6 / 6
  1. #1
    Tham gia
    25-05-2007
    Location
    Hà Nội
    Bài viết
    108
    Like
    0
    Thanked 0 Times in 0 Posts

    Cài đặt gói tar.gz

    Em tải về trên internet một gói có đuôi tar.gz, em phải làm thế nào để cài đặt nó a.
    Em giải nén nó ra bằng cách click chuột phải vào file đó chọn extract here thì nó ra một thư mục, trong đó có một file là install.sh, nó có phải là file cài đặt ko ạ
    Quote Quote

  2. #2
    Tham gia
    03-07-2007
    Bài viết
    40
    Like
    0
    Thanked 0 Times in 0 Posts
    Muốn cài đặt bạn phải có đầy đủ thư viện để biên dịch vì đây chỉ là source thôi, chưa được biên dịch và đóng gói như trong Win hoặc RPM. Nếu bạn dùng Ubuntu thì mở Terminal và gõ:
    sudo apt-get install build-essential
    (nếu cài đặt xvnkb thì cần gõ thêm: sudo apt-get install xorg-dev). Sau dó bạn mở file README ra xem cách cài đặt. Thường thì sẽ là:
    -giải nén file đó ra
    -mở Terminal và gõ cd [đường dẫn đến thư mục vừa giải nén]
    -./configure
    -make
    -sudo make install
    (thường là vậy thôi, quan trọng là file README kêu mình làm gì kìa)

  3. #3
    Tham gia
    22-05-2006
    Bài viết
    63
    Like
    0
    Thanked 0 Times in 0 Posts
    Sưu tầm :

    Cài đặt các ứng dụng từ mã nguồn trên Linux

    Có nhiều bạn khi lần đầu tiên đến với Linux cảm giác sự khó khăn và bất tiện của việc cài đặt các ứng dụng trên Linux, đặc biệt là các ứng dụng phải cài đặt từ mã nguồn như xine, openGL .v.v…
    Trên Windows, bạn chỉ cần tải ứng dụng về, giải nén rồi click vào file setup là hòan tất việc cài đặt, nhưng trên Linux đó là một chuyện hòan tòan khác. Bài viết này sẽ nhằm mục đích hướng dẫn bạn các thao tác cài đặt các phần mềm ứng dụng trên Linux và cung cấp các kiến thức căn bản giúp bạn có thể quản lý hệ thống của riêng mình.

    Bài viết sẽ giả sử rằng bạn đã biết cách sử dụng một số phần mềm quản lý gói như rpm. Để dễ dàng thì bài viết sẽ gọi các phần mềm trên Linux là các gói (package). Thực tế tên gọi ‘gói’ đúng đắn hơn vì các gói trên Linux có thể không phải là một trình ứng dụng nào đó mà chỉ là các thư viện nền như thư viện đồ họa Gtk+ hoặc OpenGL .v.v…

    1. Giới thiệu

    Bạn có thể sẽ tự hỏi rằng tại sao các phần mềm trên Linux không tự đóng gói sẵn cho chúng ta rồi khi xuất bạn chỉ cần tải về và cài đặt nó. Câu trả lời nằm ở 2 vấn đề, vấn đề thứ 1 là các phần mềm viết trên Linux không hẳn chỉ có thể chạy trên Linux mà có thể chạy trên nhìều hệ thống khác nhau trong họ Unix như Solaris, AIX, HP-UX .v.v.. thậm chí các phần mềm đó có thể chạy trên rất nhiều vi xử lý khác nhau như Intel, Motorola, PPC .v.v… Có được sự đa năng đó là nhờ vào tính đa nền (portable) của ngôn ngữ C/C++ nhưng đòi hỏi chúng ta phải biên dịch lại phần mềm từ mã nguồn cho hệ thống mà chúng vận hành. Bạn sẽ tự hỏi là tại sao các nhà phát triển lại không biên dịch sẵn cho chúng ta trên hệ thống thông dụng nào đó như Linux chẳng hạn.

    Câu trả lời là bởi vì các phần mềm này là phần mềm mã nguồn mở Smiling và các nhà phát triển không có cách gì hơn là để lại phần biên dịch cho chúng ta. Tuy nhiên bạn đừng thất vọng vì có một số nhà phát triển rất là tốt bụng có thể biên dịch sẵn cho chúng ta ra các gói có dạng rpm và cùng với sự hỗ trợ của công ty Red Hat chúng ta cũng đã có những chương trình quản lý các phần mềm hiệu quả không kém gì trên Windows như RPM (Redhat Package Manager). Mặc dù là thế nhưng không phải lúc nào các gói mới nhất từ các nhà phát triển gốc đều có phiên bản biên dịch sẵn mà thường là một khỏang thời gian sau các phiên bản đó mới có được dưới
    dạng biên dịch sẵn. Bên cạnh đó còn có rất nhiều nhà phát triển không hề biên dịch sẵn sản phầm của mình mà đòi hòi người dùng phải biên dịch, điển hình là trình chơi phim và nhạc xine. Các gói biên dịch sẵn các bạn có từ xine đa số là từ các nhà phát triển khác. Do đó nếu bạn không bạn không biết cách cài đặt các gói từ nguồn là một trở ngại rất lớn cho việc hiểu và quản trị hệ thống của riêng mình.

    2. Căn bản của việc cài đặt

    Điều đầu tiên khi bạn tiến hành cài đặt là bạn phải có mã nguồn của gói đó trước. Hãy lên mạng search bất kì gói nào bạn thích như thư viện Gtk+ hoặc Gnome .v.v… Sau khi tải về, thông thường có dạng là .gz hoặc .bz2, đây đều là 2 chuẩn nén khác nhau, sau khi giải nén bằng gunzip cho gz hoặc bunzip2 cho bz2 thì các gói sẽ có dạng mới là tar, cũng là một chuẩn nén khác, bạn có thể giải nén bằng lệnh, tar -xvf … Thế nhưng đế dễ dàng và tiết kiệm dung lượng ổ đĩa thì chúng ta có thể gộp các câu lệnh đó thành 1 như sau:

    - Đối với gói .gz:



    Code:

    # tar -zxvf tengoi.gz

    - Đối với gói .bz2:



    Code:

    # tar -jxvf tengoi.bz2

    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:



    Code:

    # ./configure # make # make install

    Chỉ có vài gói đặc biệt sẽ có riêng cách cài đặt nhưng khi bạn đã nắm vững nguyên tắc chung thì dù là cách thức nào bạn cũng có thể xoay xở được. Chúng ta hãy xét đến câu lệnh đầu tiên,



    Code:

    ./configure

    … Thực chất configure là một shell script sẽ kiểm tra những yêu cầu của hệ thống của bạn có đáp ứng đủ để cài đặt gói lên không, ví dụ như một số gói đòi hỏi bạn phải có sẵn thư viện đồ họa Gtk 2.4 trở lên hoặc là thư viện để giải nén nhạc Mp3..v.v… Rất nhiều gói có sự phụ thuộc như thế chứ các gói khi tải về không hề có sẵn các gói tương ứng cần thiết cho nó. Khi bạn chạy configure xong kết quả sẽ cho bạn biết các gói nào cần thiết để cài đặt. Nhiệm vụ của bạn không gì hơn là phải tìm các gói phụ thuộc đó cài lên máy rồi mới tiếp tục việc cài đặt. Nếu như hệ thống của bạn thỏa mãn đầy đủ các yêu cầu để cài đặt thì các Makefile sẽ được
    tạo ra. Makefile là một file đặc biệt của tiện ích make nhằm hướng dẫn biên dịch mã nguồn của gói ra dạng
    thực thi. Sau khi bạn thực thi lệnh ‘make’ xong thì tòan bộmã nguồn của gói đã được biên dịch sang dạng thực thi nhưng các file thực thi vẫn còn nằm trên thư mục hiện hành. Do đó bạn cần phải thực hiện thêm lệnh ‘make install’ để chép các file thực thi đó sang đúng vị trí của nó trên hệ thống. Nếu như không có thông báo lỗi gì xảy ra thì bạn đã hòan tất việc cài đặt gói lên hệ thống của mình.

    3. Tổ chức các file trên hệ thống

    Bạn hòan tòan biết thư mục trên Linux thì thư mục /usr là thư mục quan trọng nhất vì nó sẽ chứa các chương trình và hàm thư viện trên đó. Trong thư mục /usr/bin là sẽ chứa các file thực thi cho các gói bạn đã cài đặt trên máy, các file trong thư mục này bạn sẽ thấy các file rất quen thuộc như mozilla, gedit .v.v… Thư mục /usr/lib sẽ chứa các hàm thư viện, bạn sẽ thấy rất nhiều files có phần mở rộng là .so (shared object) là các hàm thư viện liên kết động hoặc .a (archive) hoặc .la đều là các hàm thư viện liên kết tĩnh. Đặc tính căn bản của 2 dạng thư viện này là hàm thư viện liên kết tĩnh sẽ được liên kết thẳng với files thực thi luôn trong quá trình liên kết, còn hàm thư viện liên kết động thì sẽ được liên kết trong quá trình thực thi, cho nên sau khi chương trình đã được biên dịch và liền kết rồi các thư viên tĩnh chúng ta có thể bỏ đi nhưng thư viện liên kết động thì bắt buộc phải đi kèm với chương trình. Thư mục /usr/share sẽ chứa các icon, manual hoặc info của gói.

    4. Lọai bỏ một gói

    Nế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



    Code:

    ‘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



    Code:

    ‘make clean’

    cái cuối cùng



    Code:

    ‘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. Quản lý các 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:



    Code:

    ./configure –prefix=/soft/gedit

    thì khi bạn gõ



    Code:

    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. Lời kết

    Đối với cách cài trên thì bạn dể dàng quản lý các gói của mình nhưng đối với các dạng thư viện thì bạn nên cài nó vào thư mục /usr hơn là thư mục riêng của mình vì một số gói sẽ tìm các thư việc trên thư mục mặc định /usr và /usr/local hơn là các thư mục riêng người dùng nên nếu bạn cài lên thư mục riêng thì đôi lúc các thư viện đó sẽ không được tìm ra. Thông thường lênh ./configure đi đôi với rất nhiều tùy chọn cho phép bạn lựa chọn nhiều tính năng khác nhau, bạn hãy gỏ ./configure –help để mà biết đầy đủ các tùy chọn của gói. Bài viết chắc chắn sẽ không tránh khỏi những thiếu sót bằng cách này hay cách khác, rất mong sự góp ý của các bạn, Xin cám ơn.

  4. #4
    Tham gia
    14-07-2009
    Bài viết
    11
    Like
    0
    Thanked 0 Times in 0 Posts
    Quote Được gửi bởi abang View Post
    Sưu tầm :

    Cài đặt các ứng dụng từ mã nguồn trên Linux

    Code:

    make install
    ....
    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.
    Cám ơn bạn vì bài sưu tầm rất hay, nhưng còn chổ này bạn có thể giải thích thêm hay sưu tầm thêm để rõ hơn thì hay hơn rất nhiều. TẠO 2 ĐƯỜNG DẪN CHO 2 BIẾN MÔI TRƯỜNG NHƯ THẾ NÀO, BẠN CÓ THỂ HƯỚNG DẪN RÕ HƠN CHỔ NÀY, VÀ THÊM BIẾN PATH CHO GÓI LÀ PHẢI LÀM NHƯ THẾ NÀO... VÌ BÀI NÀY CHẮC DÀNH CHO DÂN CHỈ ABC NHƯ MÌNH THÔI MÀ.

    Cho hỏi thêm nếu là nén .tgz thì vẫn dùng tar để giải nén được chứ?
    Một lần nữa cám ơn rất nhiều về bài viết của bạn!

  5. #5
    Tham gia
    28-11-2008
    Bài viết
    1,847
    Like
    31
    Thanked 38 Times in 36 Posts
    với file install.sh thì chỉ cần ./install.sh là chạy thôi.
    còn với các file nén mặc định của linux thì tất nhiên nó phải support chứ. còn zip rar thì có thể phải cài thêm.

  6. #6
    Tham gia
    30-06-2010
    Bài viết
    24
    Like
    0
    Thanked 0 Times in 0 Posts

    Cài đặt các ứng dụng từ mã nguồn trên Linux

    e mới tham gia học linux lên cũng không biết gì nhiều lắm.
    nay nge các anh nói cũng biết được chút ít.
    cám ơn nhiều

Bookmarks

Quy định

  • Bạn không thể tạo chủ đề mới
  • Bạn không thể trả lời bài viết
  • Bạn không thể gửi file đính kèm
  • Bạn không thể sửa bài viết của mình
  •