免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
楼主: luckmonkey
打印 上一主题 下一主题

gcc与makefile solaris9与solaris 10 [复制链接]

论坛徽章:
0
11 [报告]
发表于 2006-09-15 10:13 |只看该作者
你在solaris 9 和solaris 10里面装的什么开发环境?
sunstudio还是gcc?

论坛徽章:
0
12 [报告]
发表于 2006-09-15 10:22 |只看该作者
贴上我的makefile
  FLAGS = -g -Wall -Waggregate-return -Wstrict-prototypes -Wno-unused

INCLUDES = -I../

COMPILE = gcc

LINKOBJ = ld -r

LIBRARIES = -lpthread -lposix4 -lsocket -lnsl

LINKEXE = $(CPS_COMPILE)

AR = ar rv

RANLIB = ranlib

targets = go

library = go.a

objects = \
           go.o

default: $(targets) $(library)

$(library)(objects)
        $(AR)go.a$(objects)
        $(RANLIB) go.a
               
$(objects):%.o: $(ROOTDIR)../%.c
        $(COMPILE) $(FLAGS) -c $(INCLUDES) -c $< -o $@

go(objects)$(osobjects)
        $(LINKEXE) $(FLAGS) -o $@ $(objects) $(LIBRARIES)
               
clean:
        rm -rf go go.a $(objects) $(targets) $(library) core *.bak

configshow:
        @echo
        @echo "Configuration"
        @echo "    COMPILE (Compiler) is:        $(COMPILE)"
        @echo "    FLAGS (Flags) are:            $(FLAGS)"
        @echo "    LINKOBJ (Partial Linker) is:  $(LINKOBJ)"
        @echo "    LINKEXE (Final Linker) is:    $(LINKEXE)"
        @echo "    LIBRARIES (Libraries) are:    $(LIBRARIES)"
        @echo "    AR (Archiver) is:             $(AR)"
        @echo "    RANLIB (Ranlib) is:           $(RANLIB)"       
        @echo
真实的文件目录比这么复杂,还有port, drivers等目录等,有一个配置文件的
但makefile的大致框架就是这样的

solaris 9与solaris 10上安装的都是gcc环境
只是版本不同 solaris 10上是3.4.6,从www.sunsoftware.com上下载的

在执行make时,提示读取makefile读取错误,说有额外的 : ::等
但有时提示的那行都是空的,附近几行也没有这些内容
所以一直没有解决
请大家帮忙看看

谢谢

论坛徽章:
0
13 [报告]
发表于 2006-09-15 10:27 |只看该作者
s10 上装的是  gnu make 吗?

论坛徽章:
0
14 [报告]
发表于 2006-09-15 10:28 |只看该作者
你写个简单点的makefile看看呗;

论坛徽章:
0
15 [报告]
发表于 2006-09-15 10:29 |只看该作者
FLAGS = -g -Wall -Waggregate-return -Wstrict-prototypes -Wno-unused

INCLUDES = -I../

COMPILE = gcc

LINKOBJ = ld -r

LIBRARIES = -lpthread -lposix4 -lsocket -lnsl

LINKEXE = $(CPS_COMPILE)

AR = ar rv

RANLIB = ranlib

targets = go

library = go.a

objects = \
                                        go.o

default(targets)$(library)

$(library)(objects)
        $(AR)go.a$(objects)
        $(RANLIB) go.a
               
$(objects):%.o(ROOTDIR)../%.c
        $(COMPILE) $(FLAGS) -c $(INCLUDES) -c $< -o $@

go(objects)
        $(LINKEXE) $(FLAGS) -o $@ $(objects) $(LIBRARIES)
               
clean:
        rm -rf go go.a $(objects) $(targets) $(library) core *.bak

configshow:
        @echo
        @echo "Configuration"
        @echo "    COMPILE (Compiler) is:        $(COMPILE)"
        @echo "    FLAGS (Flags) are:            $(FLAGS)"
        @echo "    LINKOBJ (Partial Linker) is:  $(LINKOBJ)"
        @echo "    LINKEXE (Final Linker) is:    $(LINKEXE)"
        @echo "    LIBRARIES (Libraries) are:    $(LIBRARIES)"
        @echo "    AR (Archiver) is:             $(AR)"
        @echo "    RANLIB (Ranlib) is:           $(RANLIB)"       
        @echo

再贴一次,刚才有些是在中文形式下打入的,有些bug

论坛徽章:
0
16 [报告]
发表于 2006-09-15 10:30 |只看该作者
原帖由 win_hate 于 2006-9-15 10:27 发表
s10 上装的是  gnu make 吗?


哈,我想起来了,sol 10默认安装带有make;
在/usr/ccs/bin里面
需要把指向改掉;

[ 本帖最后由 deathbravo 于 2006-9-15 10:33 编辑 ]

论坛徽章:
0
17 [报告]
发表于 2006-09-15 10:32 |只看该作者
make安装了 3.8

  上面就是我写的建议makefile,大家看一下

  出现的地方是 :  $  发上来就成这个样子了
  大家指点一下
  我在线

论坛徽章:
0
18 [报告]
发表于 2006-09-15 10:35 |只看该作者
原帖由 deathbravo 于 2006-9-15 10:30 发表


哈,我想起来了,sol 10默认安装带有make;
在/usr/ccs/bin里面
需要把指向改掉;


如何改变指向呢
谢谢

论坛徽章:
0
19 [报告]
发表于 2006-09-15 10:41 |只看该作者
原帖由 deathbravo 于 2006-9-15 10:30 发表


哈,我想起来了,sol 10默认安装带有make;
在/usr/ccs/bin里面
需要把指向改掉;


  找到原因了
在solaris 10中默认安装了make
  在/usr/ccs/bin里面
我重新安装了make 在/usr/local/bin里面
执行 /usr/local/bin/make就可以了

请问如何重定向,让系统默认执行/usr/local/bin/make
  谢谢

论坛徽章:
0
20 [报告]
发表于 2006-09-15 10:43 |只看该作者
在.profile中将/usr/local/bin的位置提前到/usr/css/bin就可了
谢谢
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP