关于编译 MiniGUI 程序的问题
写了个登录框的小程序,login.c,在命令行下用:
gcc –lpthread –lminigui –ljpeg –lpng –lz login.c -o login
能成功编译。
但是写成 Makefile:
CFLAGS = –lpthread –lminigui –ljpeg –lpng –lz
CC = gcc
all: login
$(CC) login.c -o login $(CFLAGS)
clean:
rm -f *.o
rm -f *~
rm -f login
保存后 #make 却出现如下错误:
[root@localhost login]# make
gcc –lpthread –lminigui –ljpeg –lpng –lz login.c -o login 手工把这行复制出来在命令行下输入则能成功编译。
gcc: –lpthread: No such file or directory
gcc: –lminigui: No such file or directory
gcc: –ljpeg: No such file or directory
gcc: –lpng: No such file or directory
gcc: –lz: No such file or directory
make: *** [login] Error 1
请问这是怎么回事?非常感谢!
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(9)
字符输入不对吧
不知道楼主试了没有
你这个估计加-L指定路径候就会好了
纯属学习~~你们继续。~
我看你的是在 make的时候第一步就错了呀
最好指定一下-L/usr/lib
加上这条,pc上的应该可以编过
难得这里有人弄MINIGUI 支持下
$(CC) login.c -o login $(CFLAGS)
改成 $(CC) $(CFLAGS) login.c -o login 这样看看
哦,可能是字符输入不对,我再重新把 Makefile 按照原内容输入一遍就可以了。
没有这些库文件。
非常感谢,我在 CFLAGS 加入了 -v,显示以下内容.
是不是把 -lpthread -lminigui 这些东西当成一些文件去处理了? 谁能给一个简单的 MiniGUI 的 Makefile 样板呢?
[root@localhost login]# make
gcc login.c -o login -v –lpthread –lminigui –ljpeg –lpng –lz
gcc: –lpthread: No such file or directory
gcc: –lminigui: No such file or directory
gcc: –ljpeg: No such file or directory
gcc: –lpng: No such file or directory
gcc: –lz: No such file or directory
Using built-in specs.
Target: i386-redhat-linux
Configured with: ../configure --prefix=/usr --mandir=/usr/share/man --infodir=/u sr/share/info --enable-shared --enable-threads=posix --enable-checking=release - -with-system-zlib --enable-__cxa_atexit --disable-libunwind-exceptions --enable- libgcj-multifile --enable-languages=c,c++,objc,java,f95,ada --enable-java-awt=gt k --with-java-home=/usr/lib/jvm/java-1.4.2-gcj-1.4.2.0/jre --host=i386-redhat-li nux
Thread model: posix
gcc version 4.0.2 20051125 (Red Hat 4.0.2-
/usr/libexec/gcc/i386-redhat-linux/4.0.2/cc1 -quiet -v login.c -quiet -dumpbase login.c -auxbase login -version -o /tmp/ccTj8zqm.s
ignoring nonexistent directory "/usr/lib/gcc/i386-redhat-linux/4.0.2/../../../.. /i386-redhat-linux/include"
#include "..." search starts here:
#include <...> search starts here:
/usr/local/include
/usr/lib/gcc/i386-redhat-linux/4.0.2/include
/usr/include
End of search list.
GNU C version 4.0.2 20051125 (Red Hat 4.0.2- (i386-redhat-linux)
compiled by GNU C version 4.0.2 20051125 (Red Hat 4.0.2-.
GGC heuristics: --param ggc-min-expand=63 --param ggc-min-heapsize=63274
as -V -Qy -o /tmp/cc0jzysH.o /tmp/ccTj8zqm.s
GNU assembler version 2.15.94.0.2.2 (i386-redhat-linux) using BFD version 2.15.9 4.0.2.2 20041220
make: *** [all] Error 1
找不到那么几个lib
你可以确信一下他是否找到了
在 CFLAGS里加个-v参数查查找你的lib没