Quy trình chung để cài đặt thư viện phát triển trong Ubuntu là gì?


24

Tôi đang gặp khó khăn khi cài đặt các thư viện phát triển mới nhất của SDL trong Ubuntu 12.04 của mình. Năm ngoái, bằng cách nào đó tôi đã quản lý để cài đặt libsdl 1.2-dev cho Ubuntu. Theo như tôi nhớ, tôi đã làm điều đó bằng Trình quản lý gói Synaptic . Bây giờ, tôi muốn làm việc với các thư viện SDL mới nhất. Trong trang chứa các bản tải xuống cho SDL phiên bản 2.0.0 (là phiên bản ổn định mới nhất), trong phần Linux dành cho Thư viện phát triển , nó được đưa ra

Vui lòng liên hệ với nhà bảo trì phân phối của bạn để cập nhật.

Nó sẽ giúp tôi rất nhiều nếu ai đó trả lời những câu hỏi sau:

  1. Tại sao việc cài đặt thư viện dev trong Ubuntu lại không đơn giản ?
  2. Bất cứ ai cũng có thể đưa ra một danh sách đầy đủ các cách để cài đặt các thư viện này trên hệ thống để người ta có thể sử dụng chúng để lập trình?
  3. Sẽ rất hữu ích nếu bạn có thể đưa ra câu trả lời ở trên lấy các thư viện dev SDL mới nhất làm ví dụ. Ngoài ra quy trình để làm sạch tất cả các phiên bản trước khỏi hệ thống trong khi cài đặt các phiên bản mới nhất là gì?

PS: Tôi đã tìm kiếm gói libsdl-dev trên Trình quản lý gói Synaptic, nhưng nó không hiển thị phiên bản mới nhất.


Các hệ thống dựa trên Debian (bao gồm Ubuntu) chỉ có thể thực hiện "sudo apt-get install libsdl2-2.0" để cài đặt thư viện trên toàn hệ thống và tất cả các loại phụ thuộc hữu ích khác. "sudo apt-get install libsdl2-dev" sẽ cài đặt mọi thứ cần thiết để xây dựng các chương trình sử dụng SDL ( wiki.libsdl.org/Installation )
Dr.jacky

Câu trả lời:


23

Bạn phải tải về nguồn và biên dịch các lib.

Bạn cũng cần một số phụ thuộc trước khi biên dịch SDL2. Vì vậy, cài đặt các gói này đầu tiên :

sudo apt-get install build-essential xorg-dev libudev-dev libts-dev libgl1-mesa-dev \
libglu1-mesa-dev libasound2-dev libpulse-dev libopenal-dev libogg-dev \
libvorbis-dev libaudiofile-dev libpng12-dev libfreetype6-dev libusb-dev \
libdbus-1-dev zlib1g-dev libdirectfb-dev
  • Phương pháp 1: Lưu trữ mã nguồn
    Bây giờ bạn có thể truy cập trang tải xuống libsdl và tải xuống SDL2-2.0.0.tar.gz, giải nén kho lưu trữ (bạn có thể trích xuất kho lưu trữ bằng tar tar -xvzf SDL2-2.0.0.tar.gz:), cdvào thư mục đã tạo và chạy các lệnh sau ( đừng quên cài đặt phụ thuộc được đề cập ở trên, trước khi bắt đầu biên dịch ):

    ./configure
    make
    sudo make install
    
  • Phương pháp 2: Kho lưu trữ Mercurial
    Một cách khác để cài đặt SDL2 là tải xuống SDL từ kho lưu trữ trực tuyến. Để làm được điều này, trước tiên bạn phải cài đặt đồng bóng:

    sudo apt-get install mercurial
    

    sau đó tải xuống SDL (SDL sẽ được tải xuống thư mục bạn đang sử dụng thiết bị đầu cuối)

    hg clone http://hg.libsdl.org/SDL
    

    bây giờ hãy vào thư mục SDL đã tải xuống và xây dựng & cài đặt ( đừng quên cài đặt các phụ thuộc được đề cập ở trên, trước khi bắt đầu biên dịch ) các lib bằng cách chạy:

    cd SDL
    ./configure
    make
    sudo make install
    

Đừng quên chạy:

sudo ldconfig

để cập nhật các liên kết và bộ nhớ cache cần thiết cho các thư viện.

Mã :: Khối
Thêm vào
Dự án> Tùy chọn bản dựng> Cài đặt trình biên dịch> Tùy chọn khác> -lSDL2

và đến
Dự án> Tùy chọn bản dựng> Cài đặt trình liên kết> Tùy chọn trình liên kết khác -lSDL2

Hãy nhớ thêm các tùy chọn này vào các tùy chọn Dự án và không chỉ cho cài đặt Gỡ lỗi hoặc Phát hành . Ngoài ra, nếu bạn đã biên dịch sai các nguồn, hãy nhớ Xây dựng lại nó ( CTRL+ F11)


Trước hết, cảm ơn câu trả lời tuyệt vời! Tất cả các lệnh làm việc rất tốt với nhau. Tôi sử dụng codeblocks và nó không phát hiện ra các thư viện. Những thay đổi mà tôi cần thực hiện trong môi trường Codeblocks của mình để tôi có thể sử dụng các thư viện này là gì?
jsp99

Dự án
mới-

1
Bạn có thể biên dịch nó bằng gcc bằng cách thêm -lSDL2 vào gcc. Ví dụ : gcc source.c -lSDL2. Tôi không biết làm thế nào để làm điều này với codeblocks, nhưng tôi đang tải xuống codeblocks và tôi sẽ thử và cho bạn biết.
PeppeDAlterio

1
Btw, đó là SDL2 / SDL.h KHÔNG phải SDL / SDL.h
PeppeDAlterio

1
Dù sao bạn có thể kiểm tra Ubuntu Wiki cho tấn hướng dẫn hữu ích: help.ubuntu.com/community và cũng lin này cho hướng dẫn viên linux chung: help.ubuntu.com/community/ExternalGuides
PeppeDAlterio

10

Bạn cũng có thể làm:

Nếu bạn chỉ muốn các thư viện:

sudo apt-get install libsdl2-2.0

Nếu bạn muốn phát triển:

sudo apt-get install libsdl2-dev
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.