Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/qt/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C Makefile错误:/usr/bin/ld:找不到-lsqlite3_C_Makefile_Sqlite - Fatal编程技术网

C Makefile错误:/usr/bin/ld:找不到-lsqlite3

C Makefile错误:/usr/bin/ld:找不到-lsqlite3,c,makefile,sqlite,C,Makefile,Sqlite,我已经在Linux上从源代码安装了sqlite3,并用一个Makefile将其放入C代码的子目录中。这就是Makefile的外观 CC = gcc CFLAGS = -Wall -g -std=c99 SOURCES := src/file1.c src/file2.c src/file3.c LIB := -lm -lsqlite3 INC := -I include -I path/to/pathname/sqlite3/include all:

我已经在Linux上从源代码安装了sqlite3,并用一个Makefile将其放入C代码的子目录中。这就是Makefile的外观

CC      = gcc
CFLAGS  = -Wall -g -std=c99

SOURCES := src/file1.c src/file2.c src/file3.c
LIB     := -lm -lsqlite3 
INC     := -I include -I path/to/pathname/sqlite3/include 

all:
    @mkdir -p bin/

    $(CC) $(CFLAGS) $(SOURCES) main.c  -L path/to/pathname/sqlite3/ -o bin/software $(LIB) $(INC)

clean:
    rm -f bin/sofware
但是,每当我尝试执行make时,都会出现以下错误:

gcc -Wall -g -std=c99 src/file1.c src/file2.c src/file3.c -I include -I path/to/pathname/sqlite3/include 
/usr/bin/ld: cannot find -lsqlite3
collect2: error: ld returned 1 exit status
make: *** [all] Error 1
我不明白。sqlite3位于路径/to/pathname/sqlite3中/

以下是路径/to/pathname/sqlite3/中的文件/可执行文件列表:


如何正确地允许此C代码通过访问sqlite3正确编译

您需要添加-L/path/to/lib/dir

LDFLAGS=-Lpath/to/pathname/sqlite3/lib,假设lib是库二进制文件的实际驻留位置。另外,您提供的信息有些不太正确。makefile说main.c应该包含在build命令行中。但它不会显示在输出中。gcc行也没有显示-lsqlite3。不确定是哪里出了问题,还是粘贴了错误的输出。
aclocal.m4      config.log     configure.ac  install-sh     ltmain.sh    missing  shell.o       sqlite3.h   sqlite3.pc.in
autom4te.cache  config.status  depcomp       lib            Makefile     README   sqlite3       sqlite3.lo  tea
bin             config.sub     include       libsqlite3.la  Makefile.am  share    sqlite3.c     sqlite3.o
config.guess    configure      INSTALL       libtool        Makefile.in  shell.c  sqlite3ext.h  sqlite3.pc