Linux下Code::Block使用Sqlite出现undefined reference to `sqlite3_open‘错误,修改GCC添加的编译参数选项的顺序

1、错误的做法:

选中Settring,选择Compiler

添加编译选项-lsqlite3

这样添加还是不能解决问题的,编译命令的顺序没有改变

实际的情况

用GCC来编译的时候总是会出现错误,编译的命令如下
gcc -static -o hello-lsqlite3 -L /usr/local/lib -I/usr/local/include hello.c

2、正确的做法:

选中Settring,选择Compiler

Other linker options中添加编译选项-lsqlite3

 

编译命令的顺序就改变了

实际的情况

Gcc的编译参数是有顺序的。正确的编译命令是:
gcc -o hello -L /usr/local/lib -I/usr/local/include -static hello.c-lsqlite3

至此,GCC添加的编译参数选项的顺序就发生了改变。


版权声明:本文为fantesting原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。