linux下如何安裝SFML及如何更新gcc爲7.3.0

SFML是什麼

SFML 是多媒體庫,它爲PC的各個組件提供簡單的界面,用來簡化遊戲和多媒體應用程序的開發。 主要由五個模塊組成,分別是:系統,窗口,圖形,音頻和網絡。

如何安裝SFML

我是在linux下進行開發的,所以這裏只介紹linux

  1. wget https://www.sfml-dev.org/files/SFML-2.5.1-linux-gcc-64-bit.tar.gz
  2. tar -xvzf SFML-2.5.1-linux-gcc-64-bit.tar.gz
  3. cd /SFML-2.5.1
  4. 複製 include ,lib目錄下的所有文件到 /usr/include /usr/lib /usr/lib64下面
  5. 運行example下面的示例,這時發現運行不了,一般是報如下這種錯誤:
[root@jeremyqin1584598822574-0 ~/SFML-2.5.1/share/SFML/examples/window]# ./window 
./window: /lib64/libstdc++.so.6: version `CXXABI_1.3.9' not found (required by /lib64/libsfml-window.so.2.5)
./window: /lib64/libstdc++.so.6: version `GLIBCXX_3.4.21' not found (required by /lib64/libsfml-window.so.2.5)
./window: /lib64/libstdc++.so.6: version `GLIBCXX_3.4.20' not found (required by /lib64/libsfml-system.so.2.5)
./window: /lib64/libstdc++.so.6: version `CXXABI_1.3.9' not found (required by /lib64/libsfml-system.so.2.5)
./window: /lib64/libstdc++.so.6: version `GLIBCXX_3.4.21' not found (required by /lib64/libsfml-system.so.2.5)

這時gcc版本太低導致的,可以只更換libstdc++.so庫解決這個問題。但是解決的不夠徹底。所以我們選擇更新gcc,來解決這個問題。下面介紹更新gcc的方法:
6. 不要卸載舊版本的gcc,我的是4.8.5的版本
7. 下載gcc,我這裏安裝 gcc-7.3.0版本 wget https://mirrors.ustc.edu.cn/gnu/gcc/gcc-7.3.0/gcc-7.3.0.tar.gz
8. tar -xvzf gcc-7.3.0.tar.gz
9. 運行 download_prerequisites 腳本,下載所以依賴
./contrib/download_prerequisites (這個必須在gcc的頂層目錄,否則會提示不能運行)
10. ./configure --enable-checking=release --enable-languages=c,c++ --disable-multilib
11. make -j4 (這步非常久,估計要半個小時)
12. make install
13. 最後運行example下面的示例就可以了
14.如何運行程序報錯:

Failed to open X11 display; make sure the DISPLAY environment variable is set correctly
Aborted

是沒有安裝桌面環境,這個就要再安裝下了。在控制檯下面是沒法運行圖形化的東西的。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章