Điểm:11

Cách chạy Six (một chương trình trò chơi KDE cũ) trong Kubfox 20.04

lá cờ pm

Six đã nhiều lần giành được huy chương vàng trong một cuộc thi olympiad trên máy tính. Mã nguồn có trên GitHub https://github.com/melisgl/six/tree/master/six. Nó đã được ghim trong vài thập kỷ, nhưng tôi muốn đưa nó lên, tuy nhiên tôi không rành về lập trình KDE, Qt hay thậm chí là C++. Tôi chủ yếu là lập trình viên lắp ráp, C và Python, và đã làm việc đó được khoảng 50 năm (thực sự!).

Tuy nhiên, hơi ngạc nhiên khi tôi xây dựng Kubfox 20.04.3 cho mục đích này, sao chép kho lưu trữ và bắt đầu. Bắt đầu thông thường là .configure, nhưng ngay cả điều đó cũng không hoạt động. Có lẽ vì mã quá cũ, nhưng tôi cần trợ giúp. Nó không đi được xa và cuối cùng hỏi tôi có cấu hình mọi thứ đúng không, rõ ràng là vì nó không thể tìm thấy kde-config. Một lần truy cập tìm kiếm tên đó cho biết nó nằm trong gói có tên kdelibs5-dev, nhưng tôi không thể thấy điều đó trong synap. Có phải trong một số gói khác tôi nên cài đặt? Có điều gì đơn giản mà tôi có thể làm để tìm hiểu sâu hơn một chút về .configure không?

Đây là những gì nỗ lực trông giống như

kevin@kackles:~/Six/six/six$ ./configure
kiểm tra loại hệ thống xây dựng... x86_64-unknown-linux-gnu
kiểm tra loại hệ thống máy chủ ... x86_64-unknown-linux-gnu
kiểm tra loại hệ thống đích... x86_64-unknown-linux-gnu
đang kiểm tra cài đặt tương thích với BSD... /usr/bin/install -c
kiểm tra cờ -p để cài đặt... có
kiểm tra xem môi trường xây dựng có lành mạnh không ... có
kiểm tra gawk ... không
kiểm tra mawk... mawk
kiểm tra xem make set $(MAKE)... có
kiểm tra xem có bật các phần Makefiles dành riêng cho người bảo trì hay không... không
kiểm tra kde-config... không tìm thấy
cấu hình: lỗi: Không tìm thấy chương trình quan trọng kde-config!
Vui lòng kiểm tra xem bạn đã cài đặt KDE đúng chưa.

kevin@kackles:~/Six/six/six$
cocomac avatar
lá cờ cn
Hãy xem [câu hỏi này](https://askubuntu.com/questions/1365307/20-04-configure-error-the-important-program-kde-config-was-not-found). Nó có thể giải quyết lỗi. Tôi cũng sẽ thực hiện lệnh `sudo apt update && sudo apt install gawk` để cài đặt `gawk`.
Điểm:10
lá cờ zw

Tổng hợp trực tiếp từ nguồn 15 năm trước có thể sẽ không hoạt động vì các phụ thuộc bị bỏ lỡ tại thời điểm biên dịch.

Nhưng ở đó là manh mối rằng gói này vẫn có sẵn ở dạng đã biên dịch trên Fedora. Để ngăn phiên bản Glibc không khớp, chúng ta nên chuyển đổi các gói vòng/phút từ Fedora 32 vào các gói gỡ lỗi, sau đó cài đặt chúng như sau:

sudo apt-get cài đặt người ngoài hành tinh libart-2.0-2 libmng2 libjpeg62 libaudiofile1 libmad0

cd ~/Tải xuống

wget -c https://kojipkgs.fedoraproject.org//packages/qt3/3.3.8b/80.fc32/x86_64/qt3-3.3.8b-80.fc32.x86_64.rpm
người ngoài hành tinh sudo -i qt3-3.3.8b-80.fc32.x86_64.rpm

wget -c https://kojipkgs.fedoraproject.org//packages/kdelibs3/3.5.10/105.fc32/x86_64/kdelibs3-3.5.10-105.fc32.x86_64.rpm
người ngoài hành tinh sudo -i kdelibs3-3.5.10-105.fc32.x86_64.rpm

wget -c https://kojipkgs.fedoraproject.org//packages/arts/1.5.10/46.fc32/x86_64/arts-1.5.10-46.fc32.x86_64.rpm
người ngoài hành tinh sudo -i art-1.5.10-46.fc32.x86_64.rpm

wget -c https://kojipkgs.fedoraproject.org//packages/six/0.5.3/35.fc32/x86_64/six-0.5.3-35.fc32.x86_64.rpm
người ngoài hành tinh sudo -i six-0.5.3-35.fc32.x86_64.rpm

Và sau đó khởi chạy trò chơi với LD_LIBRARY_PATH=/usr/lib64 sáu để có được

sáu trên Ubuntu MATE 20.04 LTS

Lưu ý: hiện tại mình chưa biết cách sửa lỗi "No text!" nhãn, nhưng trò chơi dường như đang hoạt động.

lá cờ cm
Điều thú vị là tôi thấy các nguồn fedora tại https://src.fedoraproject.org/rpms/six/tree/rawhide dường như có một bản vá cho sự cố liên quan đến gcc mới hơn và bản sửa lỗi cho sự cố liên kết thư viện nhưng dường như chúng không được làm bất cứ điều gì liên quan đến kde-config.
N0rbert avatar
lá cờ zw
Đây là lý do tại sao tôi đã sử dụng phương pháp trên. Tôi thực sự ấn tượng về cách Fedora duy trì các gói cũ như Qt3 và KDE 3.5.
ForDummies avatar
lá cờ pm
Điều này thật thú vị, nhưng ngay cả khi nó hoạt động (mà tôi sẽ thử) thì nó cũng không giải quyết được vấn đề của tôi, vì tôi muốn thay thế giao diện người dùng bằng phiên bản dòng lệnh cho một dự án nghiên cứu. Tuy nhiên, nếu tôi có thể làm cho phiên bản GUI hoạt động, nó sẽ giúp tôi hiểu mã để tôi có thể thiết kế một phiên bản dòng lệnh phù hợp.
Mark avatar
lá cờ ke
@ForDummies, nếu bạn đang loại bỏ giao diện người dùng, cách tốt nhất của bạn có lẽ là bắt đầu bằng cách xem mã nguồn, loại bỏ mọi thứ về giao diện người dùng và tạo tệp tạo tệp mới cho dự án của riêng bạn. Tôi cho rằng hầu hết các lỗi biên dịch mà bạn gặp phải sẽ nằm trong mã dành riêng cho giao diện người dùng mà bạn đang định xóa -- không có ích gì khi sửa chúng.
ForDummies avatar
lá cờ pm
@N0rbert cảm ơn vì điều này. Tôi đã cài đặt Fedora và tôi sẽ dùng thử ở đó. Tôi đã không sử dụng Fedora trong hơn một thập kỷ, rất nhiều điều mơ hồ và một số điều chưa biết - có lẽ tôi sẽ hỏi mọi thứ trên StackExchange như cách tìm trình cài đặt gói (tôi đoán là không có synap).
ForDummies avatar
lá cờ pm
@Mark, đã đồng ý nhưng tôi muốn xem nó hoạt động để hiểu các khả năng mà tôi có thể truy cập trong giao diện mới.
ForDummies avatar
lá cờ pm
@ N0rbert Tôi đã đánh dấu đây là câu trả lời được chấp nhận mặc dù nó khiến tôi đi theo một hướng khác. Tôi hy vọng có thể xây dựng từ những nguồn mà Peter Green đã tìm thấy.
ForDummies avatar
lá cờ pm
@Peter Green cảm ơn. Tôi sẽ cố gắng xây dựng những nguồn đó. Chúc tôi may mắn.
ForDummies avatar
lá cờ pm
Hừm. Tôi không thể tải xuống các nguồn mà Peter Green đã tìm thấy. Đầu tiên, nó muốn tôi tạo một tài khoản Fedora, sau đó không thành công vì "Phương thức không được phép tại URL này" (có thể diễn giải).

Đăng câu trả lời

Hầu hết mọi người không hiểu rằng việc đặt nhiều câu hỏi sẽ mở ra cơ hội học hỏi và cải thiện mối quan hệ giữa các cá nhân. Ví dụ, trong các nghiên cứu của Alison, mặc dù mọi người có thể nhớ chính xác có bao nhiêu câu hỏi đã được đặt ra trong các cuộc trò chuyện của họ, nhưng họ không trực giác nhận ra mối liên hệ giữa câu hỏi và sự yêu thích. Qua bốn nghiên cứu, trong đó những người tham gia tự tham gia vào các cuộc trò chuyện hoặc đọc bản ghi lại các cuộc trò chuyện của người khác, mọi người có xu hướng không nhận ra rằng việc đặt câu hỏi sẽ ảnh hưởng—hoặc đã ảnh hưởng—mức độ thân thiện giữa những người đối thoại.