今天在某台64位LInux下编译一个简单的hello wor
ld
的C程序,报错:
/
usr
/lib/gcc/x86_64-redhat-linux/4.4.7/../../../crt1.o: cou
ld
not read symbols:
File
in wrong format
查看该文件的格式,竟然是32位的:
#
file
/
usr
/lib/gcc/x86_64-redhat-l...
[root@hadoop1 s
bin
]# ssh-copy-id hadoop1
/
usr
/
bin
/ssh-copy-id: ERROR: failed to open ID
file
'/root/.pub': 没有那个文件或目录
(to install the contents of '/root/.pub' anyway, look at the -f option)
[root@hadoop1 s
bin
]# ssh-keygen -t dsa
Generating public/private dsa key pair.
Enter
file
in which to
ln -s 改成 ln -sf 还是不行。反正还是不对,后来去/
usr
/lib/gcc/x86_64-linux-gnu/3.4.6/查看一下libgcc_s.so,发现它损坏了。如果没安装,需要安装一下:sudo apt-get install libxxx-dev。这个bug真是要我老命,后来发现解决方法其实很简单,根据教程。如果希望永久有效,将其加在.bashrc文件中。再看看gcc能否搜索到指定的库文件。先看看有没有安装这个库。然后就报错了,报错如下。
ubuntu18.04 , cuda10.0 编译darknet出现/
usr
/
bin
/
ld
: cannot find -lcuda
cannot find -lcuda 意思是编译时未找到libcuda库。
首先查看Make
file
这中cuda路径是否正确,即下面第四行lib路径
ifeq ($(GPU), 1)
COMMON+= -DGPU -I/
usr
/local/cuda-10.0/include/
CFLAGS+= -DGPU
LD
FLAGS+= -L/
usr
/local/cuda-10.0/lib64 -lcuda -lcudart -lcublas -lcurand
endif
最近在CentOS7的64位机器上,通过编译源代码安装gcc8.3.0时遇到一个问题如下;
/
usr
/
bin
/
ld
: cannot find crt1.o: No such
file
or
directory
/
usr
/
bin
/
ld
: cannot find crti.o: No such
file
or
directory
看了好多网上的解决方案:有的是把crtl1.o的路径加入PATH,有...
交叉编译一个库在运行configure生成Make
file
时遇到如下错误:
$ ./configure --host=arm-linux-gnueabihf CC=/home/joe/worksource/toolchain_sdk_j6entry/sysroots/x86_64-arago-linux/
usr
/
bin
/arm-linux-gnueabihf-gcc --prefix=/
usr
/local/ncurse --without-ada --enable-termcap --with-share
@[TOC](linux编译出现 (.text+0x20):对‘main’未定义的引用 collect2: 错误:
ld
返回 1 | (.text+0x20): undefined reference to `main’ and undefined reference to function 解决方法)
linux编译出现 (.text+0x20):对‘main’未定义的引用 collect2: ...
有时候会碰到cuda报错,OSError: libcudart.so.10.0: cannot open shared object
file
: No such
file
原因是cuda动态链接库没有链接上。
解决方法如下:
cuda10.0:
sudo
ld
config /
usr
/local/cuda-10.0/lib64
cuda9.0:
sudo
ld
config /
usr
/local/cuda-9.0/lib64/
ld
config 命令的用途,主要是在默认搜寻目录(/lib和/
usr
/lib)以及动态库配置文件/etc/
ld
.so.conf内所列的目录下,搜索出可共享的动态
最近一个多月来,我曾经多次尝试在Ubuntu 16.04 LTS上使用g++和gcc(这俩好像合起来叫MinGW?)来编译C/C++代码,但是在解决所有语法问题后还是会出现错误提示:
/
usr
/
bin
/
ld
:error:/
usr
/lib/gcc/x86_64-linux-gnu/5/../../../x86_64-linux-gnu/crt1...