【Debug】【Ubuntu】cannot find crt1.o | cannot find lgcc_s

问题是,可能只有当前架构的gcc,而且是64位的。所以需要32位的支持文件。

对于 cannot find crt1.o

查找crti.o文件

sudo find /usr/ -name crti.o

打开~/.bashrc文件

gedit ~/.bashrc

添加下面的内容,保存

LIBRARY_PATH=/usr/lib/x86_64-linux-gnu:$LIBRARY_PATH
export LIBRARY_PATH

更新环境变量

source ~/.bashrc

对于 cannot find lgcc_s

查找lgcc_s文件

sudo find /usr/ -name libgcc_s.so

查看连接lgcc_s文件的时候的查找目录,会发现找不到-lgcc_s

ld -lgcc_s --verbose

【Debug】【Ubuntu】cannot find crt1.o | cannot find lgcc_s_第1张图片

将找到的libgcc_s.so和libgcc_s.so.1软连接到相应的目录/usr/lib/x86_64-linux-gnu/

sudo ln -s /usr/lib/gcc/x86_64-linux-gnu/7/libgcc_s.so /usr/lib/x86_64-linux-gnu/
sudo ln -s /usr/lib/gcc/x86_64-linux-gnu/7/libgcc_s.so.1 /usr/lib/x86_64-linux-gnu/

再次查看,已经找到了
【Debug】【Ubuntu】cannot find crt1.o | cannot find lgcc_s_第2张图片

你可能感兴趣的:(【Debug】【Ubuntu】cannot find crt1.o | cannot find lgcc_s)