我有这些库:biblioteca.a
biblioteca.2
main2.c
biblioteca.h
和biblioteca.c
。我最近使用main2.c
和biblioteca.c
创建了一个excecutable。所有文件都来自路径/home/Embedded/Class2
。
我使用下一个命令行创建一个带有静态库的可执行文件。
gcc -o Staticalc main2.c -L</home/Embedded/Class2> -lbiblioteca
并返回:bash /home/Embedded/Class2
如果我从<>
中取出这些符号-L
并执行以下操作:
gcc -o Staticalc main2.c -L/home/Embedded/Class2 -lbiblioteca
它返回:/usr/bin/ld: cannot find -lbiblioteca
答案 0 :(得分:0)
不要使用<>
。这些是shell重定向(例如cat /etc/passwd > /tmp/out
)
而不是:
gcc -o Staticalc main2.c -L/home/Embedded/Class2 -lbiblioteca
尝试:
gcc -o Staticalc main2.c -L /home/Embedded/Class2 -lbiblioteca
或者:
gcc -o Staticalc main2.c --library-path=/home/Embedded/Class2 -lbiblioteca