diff --git a/Makefile b/Makefile
new file mode 100644
index 0000000000000000000000000000000000000000..62e8c2accc612f6714d429ddce873f10db6ef51d
--- /dev/null
+++ b/Makefile
@@ -0,0 +1,61 @@
+SRCS := test.c fx_s4716_double.c
+OBJS := $(SRCS:.c=.o)
+CC := gcc
+CFLAGS = -c -Wall -g
+
+mytest : $(OBJS)
+	$(CC) -o $@ $^ -lm
+
+#test1.o : tset1.c a.h c.h
+
+# dummy target
+clean : 
+	-rm $(OBJS)
+	rm mytest
+
+dep :
+	gccmakedep $(SRCS)
+# DO NOT DELETE
+test.o: test.c /usr/include/stdc-predef.h /usr/include/stdio.h \
+ /usr/include/features.h /usr/include/arm-linux-gnueabihf/sys/cdefs.h \
+ /usr/include/arm-linux-gnueabihf/bits/wordsize.h \
+ /usr/include/arm-linux-gnueabihf/gnu/stubs.h \
+ /usr/include/arm-linux-gnueabihf/gnu/stubs-hard.h \
+ /usr/lib/gcc/arm-linux-gnueabihf/6/include/stddef.h \
+ /usr/include/arm-linux-gnueabihf/bits/types.h \
+ /usr/include/arm-linux-gnueabihf/bits/typesizes.h /usr/include/libio.h \
+ /usr/include/_G_config.h /usr/include/wchar.h \
+ /usr/lib/gcc/arm-linux-gnueabihf/6/include/stdarg.h \
+ /usr/include/arm-linux-gnueabihf/bits/stdio_lim.h \
+ /usr/include/arm-linux-gnueabihf/bits/sys_errlist.h fx_s4716_double.h \
+ /usr/include/math.h /usr/include/arm-linux-gnueabihf/bits/math-vector.h \
+ /usr/include/arm-linux-gnueabihf/bits/libm-simd-decl-stubs.h \
+ /usr/include/arm-linux-gnueabihf/bits/huge_val.h \
+ /usr/include/arm-linux-gnueabihf/bits/huge_valf.h \
+ /usr/include/arm-linux-gnueabihf/bits/huge_vall.h \
+ /usr/include/arm-linux-gnueabihf/bits/inf.h \
+ /usr/include/arm-linux-gnueabihf/bits/nan.h \
+ /usr/include/arm-linux-gnueabihf/bits/mathdef.h \
+ /usr/include/arm-linux-gnueabihf/bits/mathcalls.h
+fx_s4716_double.o: fx_s4716_double.c /usr/include/stdc-predef.h \
+ /usr/include/stdio.h /usr/include/features.h \
+ /usr/include/arm-linux-gnueabihf/sys/cdefs.h \
+ /usr/include/arm-linux-gnueabihf/bits/wordsize.h \
+ /usr/include/arm-linux-gnueabihf/gnu/stubs.h \
+ /usr/include/arm-linux-gnueabihf/gnu/stubs-hard.h \
+ /usr/lib/gcc/arm-linux-gnueabihf/6/include/stddef.h \
+ /usr/include/arm-linux-gnueabihf/bits/types.h \
+ /usr/include/arm-linux-gnueabihf/bits/typesizes.h /usr/include/libio.h \
+ /usr/include/_G_config.h /usr/include/wchar.h \
+ /usr/lib/gcc/arm-linux-gnueabihf/6/include/stdarg.h \
+ /usr/include/arm-linux-gnueabihf/bits/stdio_lim.h \
+ /usr/include/arm-linux-gnueabihf/bits/sys_errlist.h fx_s4716_double.h \
+ /usr/include/math.h /usr/include/arm-linux-gnueabihf/bits/math-vector.h \
+ /usr/include/arm-linux-gnueabihf/bits/libm-simd-decl-stubs.h \
+ /usr/include/arm-linux-gnueabihf/bits/huge_val.h \
+ /usr/include/arm-linux-gnueabihf/bits/huge_valf.h \
+ /usr/include/arm-linux-gnueabihf/bits/huge_vall.h \
+ /usr/include/arm-linux-gnueabihf/bits/inf.h \
+ /usr/include/arm-linux-gnueabihf/bits/nan.h \
+ /usr/include/arm-linux-gnueabihf/bits/mathdef.h \
+ /usr/include/arm-linux-gnueabihf/bits/mathcalls.h
diff --git a/README.md b/README.md
index 54eda61fdf1de70265e1eabc9a231baf7f25c533..598f9cd8a7e6263ff20e065b2ce7afdfaa73acaa 100644
--- a/README.md
+++ b/README.md
@@ -23,3 +23,12 @@
 * fx_to_double(a) - 고정소수점에서 double형으로 변환
 * double_to_fx(a) - double형에서 고정소수점으로 변환
 * fx_sine(a) - sin(a)값을 고정소수점으로 변환
+
+
+
+### Make Build
+
+- test.c, fx_s4716_double.c 와  fx_s4716_double.h를 make 명령어 하나로 자동으로 빌드하게 해줌
+- gcc 컴파일러를 사용하였으며 mytest 실행파일과 각 c파일의 목적파일을 자동으로 생성
+- make clean을 통해 실행파일과 목적파일을 삭제할 수 있음
+- make dep를 통해 각 파일의 헤더파일을 미리 연결해줌
\ No newline at end of file
diff --git a/fx_s4716_double.h b/fx_s4716_double.h
index 484b7055daf433c56a234b58c4e6dd6024566ce7..2eafb19c148e36c05a2f637e65ec2f9c63463aa7 100644
--- a/fx_s4716_double.h
+++ b/fx_s4716_double.h
@@ -1,10 +1,10 @@
+#define _USE_MATH_DEFINES
 #include <math.h>
 
 typedef long long fx_s4716;
 
 #define F_POWER_2_16 65536.0
 #define F_POWER_2_8 256.0
-#define M_PI 3.1415926535
 
 #define FX_TO_DOUBLE(a) (a)/(F_POWER_2_16)
 #define DOUBLE_TO_FX(a) ((a)*(F_POWER_2_16))
diff --git a/fx_s4716_double.o b/fx_s4716_double.o
index 02dde8e19d140cb387c865b89d727b91ab9157db..9bbda51826fc5f8b7a9b59876d1610e60c788af9 100644
Binary files a/fx_s4716_double.o and b/fx_s4716_double.o differ
diff --git a/test.o b/test.o
index 46c0d5921a88b47fc0c8d4bd0d03e6a9961945f5..62f0638c6d0fafdb2fdc407cd866f44104e289de 100644
Binary files a/test.o and b/test.o differ