お知らせ

  • 利用規約を守って投稿してください。また、よくある質問および投稿の手引きも参照してください。
  • メッセージの投稿にはアカウントが必要です。未登録の方は、ユーザ登録ページからアカウントを作成することができます。

#1 2009-05-14 04:20:42

bbbstar
新しいメンバ
登録日: 2009-05-14

分割コンパイルについて

makeコマンドを使って分割コンパイルしようとしたら下記ののようになりできません。
makeのためのパッケージがインストーされてないのが原因でしょうか?それとも、ソースファイルに原因があるのでしょうか?
使っているのはubuntu9.04です
~/prog3/C3$ ls
Makefile      Q1_kensaku.c   Q1_main.o      Q1_soat.c~     Q1_zyouhou.h
Makefile~     Q1_kensaku.c~  Q1_sakuzyo.c   Q1_soat.o      Q1_zyouhou.h~
Q1_henkou.c   Q1_kensaku.o   Q1_sakuzyo.c~  Q1_touroku.c   a.out
Q1_henkou.c~  Q1_main.c      Q1_sakuzyo.o   Q1_touroku.c~  example.c
Q1_henkou.o   Q1_main.c~     Q1_soat.c      Q1_touroku.o   example.c~
bbbstar-laptop:~/prog3/C3$ make
gcc -c Q1_main.c
gcc -c Q1_touroku.c
Q1_touroku.c: In function ‘touroku’:
Q1_touroku.c:21: 警告: format ‘%d’ expects type ‘int *’, but argument 2 has type ‘int’
gcc -c Q1_soat.c
gcc -c Q1_kensaku.c
Q1_kensaku.c: In function ‘kensaku’:
Q1_kensaku.c:26: 警告: format ‘%d’ expects type ‘int *’, but argument 2 has type ‘int’
gcc -c Q1_henkou.c
Q1_henkou.c: In function ‘kensaku’:
Q1_henkou.c:31: 警告: format ‘%d’ expects type ‘int *’, but argument 2 has type ‘int’
gcc -c Q1_sakuzyo.c
gccmain.o touroku.o soat.o kensaku.o henkou.o sakuzyo.o -o datacomp
make: gccmain.o: コマンドが見つかりませんでした
make: *** [datacomp] エラー 12

オフライン

 

#2 2009-05-14 09:14:37

weyk
メンバ
登録日: 2009-04-03

Re: 分割コンパイルについて

makefileの内容がおかしい可能性があります。linkする際に、コマンド名がどこにもありません。
正常に動くことが確認されている(実績がある)mafkefileですか?もし、動作実績の無いものでしたら、内容を全て掲載することで、だれか確認してくれるかもしれません。

オフライン

 

#3 2009-05-14 12:37:39

bbbstar
新しいメンバ
登録日: 2009-05-14

Re: 分割コンパイルについて

makefileの内容です

OBJS=main.o touroku.o soat.o kensaku.o henkou.o sakuzyo.o
CC=gcc
datacomp:$(OBJS)
    $(CC)$(OBJS) -o datacomp

main.o:Q1_main.c Q1_zyouhou.h
    $(CC) -c Q1_main.c

touroku.o:Q1_touroku.c Q1_zyouhou.h
    $(CC) -c Q1_touroku.c

soat.o:Q1_soat.c Q1_zyouhou.h
    $(CC) -c Q1_soat.c

kensaku.o:Q1_kensaku.c Q1_zyouhou.h
    $(CC) -c Q1_kensaku.c

henkou.o:Q1_henkou.c Q1_zyouhou.h
    $(CC) -c Q1_henkou.c

sakuzyo.o:Q1_sakuzyo.c Q1_zyouhou.h
    $(CC) -c Q1_sakuzyo.c

clean:
    rm -f $(OBJS)

オフライン

 

#4 2009-05-14 12:59:44

si
メンバ
From: hokkaido kitami, jp
登録日: 2007-01-15

Re: 分割コンパイルについて

原因箇所

bbbstar による投稿:

datacomp:$(OBJS)
    $(CC)$(OBJS) -o datacomp ←

## 開発関連のスレッドに投稿した方が良いかも...

最後の編集者: si (2009-05-14 13:01:44)

オフライン

 

#5 2009-05-14 16:24:38

CMasami
拒否
From: Utsunomiya
登録日: 2007-12-13

Re: 分割コンパイルについて

※規約違反により追放されたユーザの投稿は、ログインユーザにのみ表示されます。

オフライン

 

#6 2009-05-15 00:56:27

bbbstar
新しいメンバ
登録日: 2009-05-14

Re: 分割コンパイルについて

$(CC)と$(OBJ)の間にスペースがないためにコンパイルできなかったようです。
どうもありがとうございました。

オフライン

 

Board footer

Powered by FluxBB