01/10/2018, 10:54

Lỗi chạy gcc/g++ trên Ubuntu?

Em mất cả ngày để tìm cách sửa lỗi này mà không được nên lên đây nhờ các bác giúp đỡ . Không nhớ là đã nghịch gì mà giờ chạy gcc/g++ trên ubuntu không thể nào chạy được, kể cả hello-world.
gcc main.c -o main

  • Khi chạy với gcc/g++ 4.9 thì lỗi này:
    gcc-4.9: error trying to exec 'cc1': execvp: No such file or directory
  • Còn khi chạy với gcc/g++ 5.4 thì lỗi này:
    gcc: fatal error: -fuse-linker-plugin, but liblto_plugin.so not found compilation terminated.

Em đã thử cài lại gcc/g++, đồng bộ version cpp, reinstall build-essentials mà vẫn không được. Không hiểu có phải động vào driver ko mà gặp lỗi lạ thế này, có ai biết cách sửa không ạ?

Dark.Hades viết 13:06 ngày 01/10/2018

Bạn tìm file liblto… kia xem có không nhé:

sudo find /usr/lib -name "liblto_plugin*"

Bạn cho thêm thông tin khi build file helloworld bằng g++ bạn gõ như nào nhé

yoloh3 viết 13:08 ngày 01/10/2018

Không có bác ơi. Giống như là cái thư viện của em bị lỗi ấy. Có cách nào reinstall lại không nhỉ?

Dark.Hades viết 12:59 ngày 01/10/2018

Bạn gõ thử:

sudo find / -name "liblto_plugin*"

rồi chụp màn hình terminal xem

yoloh3 viết 13:07 ngày 01/10/2018

Đây bác

Dark.Hades viết 12:56 ngày 01/10/2018

Bạn copy file liblto_plugin.so kia vào trong thư mục /usr/local/lib và /usr/lib, hoặc dùng ln -s
Để rõ hơn thì bạn echo $LD_LIBRARY_PATH xem cho chính xác thư mục lưu static object library

yoloh3 viết 13:09 ngày 01/10/2018
`echo $LD_LIBRARY_PATH` không ra kết quả gì luôn :joy:.

Copy file vào vẫn chưa được bác ạ.

Dark.Hades viết 12:58 ngày 01/10/2018

vậy thì do bạn xoá cái load thư viện tĩnh rồi.
nếu bạn dùng bash thì gõ:

echo "export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/lib:/usr/lib:/usr/local/lib" | tee -a ~/.bashrc
# tương tự zsh thì là .zshrc

Sau đó gõ bash hoặc bật lại terminal

yoloh3 viết 13:05 ngày 01/10/2018

sudo find /usr/lib -name “liblto_plugin*”

Vẫn chưa đươc :((

Dark.Hades viết 13:01 ngày 01/10/2018

Giờ có các cách:

  1. Gỡ hoàn toàn tất cả các bản g++, gcc, sau đó cài lại. (nhớ chạy sudo apt autoremove và xoá toàn bộ cache về gcc)
  2. Thử dùng c++ main.c -o main
  3. Thử khởi động lại máy xem
  4. Download source của gcc về build
yoloh3 viết 13:07 ngày 01/10/2018

Mình xóa hết gcc, g++, cpp rồi cài lại gcc-6, đã chạy được rồi bác ạ. Hơi khó hiểu nhưng cảm ơn bác nhiều

nghia viết 13:07 ngày 01/10/2018

mình toàn build C trên ubuntu = gcc -o filerun filebuild.c

Dark.Hades viết 13:05 ngày 01/10/2018

Mình toàn build bằng CMake, với lại chưa bao giờ build = gcc, cho vào g++ -std=c++1z hết :))

nghia viết 13:00 ngày 01/10/2018

em xài VIM rồi dùng terminal build cho mau thuộc code :))

Dark.Hades viết 12:59 ngày 01/10/2018

Trên này ít gặp vimmer quá, lâu lắm mới lại thấy đồng môn :)).
Xài vim thì cài tmux, không cần dùng 2 màn hình, cho hết vào chung 1 màn, code phê lắm bạn, hehe

nghia viết 12:55 ngày 01/10/2018

dạ em cảm ơn anh! Sài vim thấy mệt nhưng sài nhiều thì thấy nó thú vị gây tò mò và muốn tìm hiểu thêm + code phải tự nhớ nên em mau thuộc code!

Dark.Hades viết 13:08 ngày 01/10/2018

@moderators sr các mod vì thớt đã solved mà vẫn rep

Mới xài mệt mà xài 1 time thì thấy không còn lưu luyến gì Windows hay VS/GUI IDE nữa.
Thực ra không cần quá khổ dâm, cứ cài mấy cái youcompleme và plugin hỗ trợ tìm lỗi (lint) đi bạn, nó giúp mình nhiều đấy, tuy nhiên vẫn phải gõ (nếu muốn).

Tạo 1 cái repo trên github lưu lại folder ~/.vim/, cài plugin cần thiết vào, đến lúc đi làm hay ở nhà chỉ cần sync là dùng được.

Cài phím tắt cho NERDTree + Tmux vim, cứ hjkl dùng, rất thoải mái, cảm giác không dùng chuột khi code nó phê lắm

yoloh3 viết 12:56 ngày 01/10/2018

Mình cũng NerdTree với hjkl đây. Cũng dùng Vim gần năm rồi nhưng còn gà mờ lắm, còn cái tmux thử dũng nhưng chưa thấy thích ở điểm nào cả. Thấy mấy ông trong phòng bảo thử dùng Emacs rồi hẵng quyết định main editor, nó cũng tương tự Vim nhưng nhiều extention hơn.

Bài liên quan
0