在Makefile中-L${SOME_LIB}是什么意思?
这里我用下面的Makefile编译一个C代码在Makefile中-L${SOME_LIB}是什么意思?,makefile,shared-libraries,Makefile,Shared Libraries,这里我用下面的Makefile编译一个C代码 MAIN: g++ -c -o td.o -I/home/user/dp/pro/include td.c g++ -c -o disk.o -I/home/user/dp/pro/include disk.c g++ -o disk disk.o tds2.o -L ${DP_LIB} -L ${LIPN_LIB} -lgnb -lgtd -lnbl -lpin ./disk.exe RUN.dat 这里的-L${
MAIN:
g++ -c -o td.o -I/home/user/dp/pro/include td.c
g++ -c -o disk.o -I/home/user/dp/pro/include disk.c
g++ -o disk disk.o tds2.o -L ${DP_LIB} -L ${LIPN_LIB} -lgnb -lgtd -lnbl -lpin
./disk.exe RUN.dat
这里的-L${DP_LIB}
的目的是什么?确切地说,我想知道${}
的功能。
如果它正在链接库,它与-llib
有何不同
这个makefile非常粗糙(我见过更大更好的)。我不熟悉makefiles,但至少这一个是有效的。-L选项告诉链接器向用于搜索库的列表添加路径。
${DP_LIB}
问题是如何在makefile中使用变量。大概DP_LIB
是通往某处的路径
如果您只需阅读文档和实际的makefile,所有这些都应该非常清楚。使用-Ldir指定链接器搜索lib的目录。lib文件本身是用-llib参数指定的
例如:
-L/usr/X11R6/lib -lX11
表示链接器将在/usr/X11R6/lib中查找libX11.so
(…和其他默认位置。)请注意:
g++
有一本手册,您可以在其中查找内容。