Makefileについて
Posted: 2011年6月28日(火) 10:06
今現在、分割コンパイルについて勉強しているのですが、うまくいきません。
分割したファイルが31個あるのですが、それらをリンクさせようとすると、
make: Too long command line:
というエラーが出て、実行ファイルが作成できません。
最初から一つ一つ試してみて、どうやらファイル数が7個までの場合は
エラーが出ずに作成できるのですが、それ以上になると必ず同じエラーが出ます。
以下がMakefile(実際はもっとファイルがあります)とエラーメッセージになります。
WinXP 32bit、CPad for LSI C-86というソフトで作成しております。
解決方法がありましたら、よろしくお願いいたします。
Makefile
# source : main.c メイン
# : InitList.c 線形リストを初期化
# : SMenu.c メニュー
# : InputD.c ノードのデータ入力
# : InsertR.c ノードを挿入
# : InsertF.c 先頭にノードを挿入
# : AllocN.c 一つのノードを動的に確保
# : SetNode.c ノードの各メンバに値を設定
# : ShowAll.c 全ノード表示
# : PrintD.c ノードの内容を表示
# target : main.exe
#
OBJECTS = main.obj InitList.obj SMenu.obj InputD.obj InsertR.obj InsertF.obj AllocN.obj SetNode.obj ShowAll.obj PrintD.obj
main.exe: $(OBJECTS)
lcc -o main.exe $(OBJECTS)
コンパイルした際のメッセージ
■C:\Documents and Settings\あああ\デスクトップ\testoo> make
lcc -c -o main.obj main.c
lcc -c -o InitList.obj InitList.c
lcc -c -o SMenu.obj SMenu.c
lcc -c -o InputD.obj InputD.c
lcc -c -o InsertR.obj InsertR.c
lcc -c -o InsertF.obj InsertF.c
lcc -c -o AllocN.obj AllocN.c
lcc -c -o SetNode.obj SetNode.c
lcc -c -o ShowAll.obj ShowAll.c
lcc -c -o PrintD.obj PrintD.c
make: Too long command line:
lcc -o main.exe main.obj InitList.obj SMenu.obj InputD.obj InsertR.obj InsertF.obj AllocN.obj SetNode.obj ShowAll.obj PrintD.ob...
分割したファイルが31個あるのですが、それらをリンクさせようとすると、
make: Too long command line:
というエラーが出て、実行ファイルが作成できません。
最初から一つ一つ試してみて、どうやらファイル数が7個までの場合は
エラーが出ずに作成できるのですが、それ以上になると必ず同じエラーが出ます。
以下がMakefile(実際はもっとファイルがあります)とエラーメッセージになります。
WinXP 32bit、CPad for LSI C-86というソフトで作成しております。
解決方法がありましたら、よろしくお願いいたします。
Makefile
# source : main.c メイン
# : InitList.c 線形リストを初期化
# : SMenu.c メニュー
# : InputD.c ノードのデータ入力
# : InsertR.c ノードを挿入
# : InsertF.c 先頭にノードを挿入
# : AllocN.c 一つのノードを動的に確保
# : SetNode.c ノードの各メンバに値を設定
# : ShowAll.c 全ノード表示
# : PrintD.c ノードの内容を表示
# target : main.exe
#
OBJECTS = main.obj InitList.obj SMenu.obj InputD.obj InsertR.obj InsertF.obj AllocN.obj SetNode.obj ShowAll.obj PrintD.obj
main.exe: $(OBJECTS)
lcc -o main.exe $(OBJECTS)
コンパイルした際のメッセージ
■C:\Documents and Settings\あああ\デスクトップ\testoo> make
lcc -c -o main.obj main.c
lcc -c -o InitList.obj InitList.c
lcc -c -o SMenu.obj SMenu.c
lcc -c -o InputD.obj InputD.c
lcc -c -o InsertR.obj InsertR.c
lcc -c -o InsertF.obj InsertF.c
lcc -c -o AllocN.obj AllocN.c
lcc -c -o SetNode.obj SetNode.c
lcc -c -o ShowAll.obj ShowAll.c
lcc -c -o PrintD.obj PrintD.c
make: Too long command line:
lcc -o main.exe main.obj InitList.obj SMenu.obj InputD.obj InsertR.obj InsertF.obj AllocN.obj SetNode.obj ShowAll.obj PrintD.ob...