在Ubuntu中找不到libcrypto

在Ubuntu中找不到libcrypto,c,gcc,ubuntu,C,Gcc,Ubuntu,我想尝试一个包含makefile的程序,但当我将make放入shell时,错误是: g++ -g -DaUNIX -I../../acroname/aInclude -I../../acroname/aSource -Wl,-rpath,. unix_aLaserDemo_Data/aLaserDemo.o unix_aLaserDemo_Data/acpLaser.o -lpthread -lcrypto -lssl -o ../../acroname/aBinary/aLaser

我想尝试一个包含makefile的程序,但当我将
make
放入shell时,错误是:

 g++ -g -DaUNIX -I../../acroname/aInclude -I../../acroname/aSource -Wl,-rpath,.     unix_aLaserDemo_Data/aLaserDemo.o unix_aLaserDemo_Data/acpLaser.o -lpthread -lcrypto -lssl  -o ../../acroname/aBinary/aLaserDemo
/usr/bin/ld: cannot find -lcrypto
collect2: ld returned 1 exit status
以下是生成文件:

 CC = g++
 CFLAGS = -DaUNIX -I../../acroname/aInclude -I../../acroname/aSource
 LFLAGS = -Wl,-rpath,.
 SRC = ../../acroname/aSource
 BIN = ../../acroname/aBinary
 LIBS = -lpthread -lcrypto -lssl \
 #LIBS = -lpthread\
       -L../../acroname/aBinary -l aUtil -l aIO
 OBJ = unix_aLaserDemo_Data

.PHONY : app
 app : $(OBJ) $(BIN)/aLaserDemo

$(OBJ) :
        mkdir $(OBJ)

$(BIN)/aLaserDemo : $(OBJ)/aLaserDemo.o $(OBJ)/acpLaser.o
        $(CC) -g $(CFLAGS) $(LFLAGS) $^ $(LIBS) -o $@

$(OBJ)/aLaserDemo.o : aLaserDemo.cpp
        $(CC) -c $(CFLAGS) $< -o $@

$(OBJ)/acpLaser.o : $(SRC)/acpLaser.cpp $(SRC)/acpLaser.h
        $(CC) -c $(CFLAGS) $< -o $@

 .PHONY : clean
 clean :
    rm -rf $(OBJ)
    rm -f $(BIN)/aLaserDemo

我应该怎么做才能修复它?

ld
正在尝试查找
libcrypto。因此,
在您的
输出中不存在。

您可以复制
libcrypto.so.0.9.8
,并将其命名为
libcrypto.so
。这是你的身份证路径。(如果您没有根访问权限,则可以将其放入本地路径并手动指定路径)

我在12.10上通过安装libssl-dev解决了这个问题

sudo apt-get install libssl-dev

我们如何知道它是64位还是32位?我是linux初学者。您需要安装加密库的开发代码(包)。具体来说,您需要
/usr/lib/libcrypto.so
(无数字后缀)指向(符号链接到)
/usr/lib/libcrypto.so.9.8
。链接过程查找以
结尾的名称;运行时查找带有版本后缀的名称。
devel
软件包将确保为加密库的开发创建正确的链接;您目前所拥有的仅用于运行时。您可以执行
uname-a
检查它是否为64位。另外,请执行
sudo apt get install libssl dev
以安装开发包。不幸的是,我没有根访问权限。我尝试#LIBS=-lpthread-lcrypto-lssl\并更改为LIBS=-lpthread\但当我执行uname-a时会出现更多错误,结果是:Linux pc4268 2.6.20-16-generic#2 SMP Sun Sep 23 19:50:39 UTC 2007 i686 GNU/Linux您可以指定如何将
libcrypto.so
放入ld路径吗?
sudo apt-get install libssl-dev