'Programming > Linux Coding' 카테고리의 다른 글
| 자신만의 Command 만들기 - alias (0) | 2016.04.26 |
|---|---|
| find (0) | 2016.04.14 |
| SVN(Subvision) 간단히 사용하기 (0) | 2016.04.14 |
| Ex10. Makefile - lv4 (0) | 2016.02.25 |
| Ex10. Makefile - lv3 (0) | 2016.02.25 |
| 자신만의 Command 만들기 - alias (0) | 2016.04.26 |
|---|---|
| find (0) | 2016.04.14 |
| SVN(Subvision) 간단히 사용하기 (0) | 2016.04.14 |
| Ex10. Makefile - lv4 (0) | 2016.02.25 |
| Ex10. Makefile - lv3 (0) | 2016.02.25 |
novrain - 이글루스
| find (0) | 2016.04.14 |
|---|---|
| Linux Commands (0) | 2016.04.14 |
| Ex10. Makefile - lv4 (0) | 2016.02.25 |
| Ex10. Makefile - lv3 (0) | 2016.02.25 |
| Ex10. Makefile - lv2 (0) | 2016.02.24 |
매크로 치환
# make dep gccmakedep test.c hello.c # make gcc -I/home/ysw/study -g -c test.c gcc -I/home/ysw/study -g -c hello.c gcc -lm -o test test.o hello.o
| Linux Commands (0) | 2016.04.14 |
|---|---|
| SVN(Subvision) 간단히 사용하기 (0) | 2016.04.14 |
| Ex10. Makefile - lv3 (0) | 2016.02.25 |
| Ex10. Makefile - lv2 (0) | 2016.02.24 |
| Ex10. Makefile - lv1 (0) | 2016.02.24 |
확장자규칙 .c.o
# make gcc -I/home/ysw/study -g -c test.c gcc -I/home/ysw/study -g -c hello.c gcc -lm -o test test.o hello.o #
| SVN(Subvision) 간단히 사용하기 (0) | 2016.04.14 |
|---|---|
| Ex10. Makefile - lv4 (0) | 2016.02.25 |
| Ex10. Makefile - lv2 (0) | 2016.02.24 |
| Ex10. Makefile - lv1 (0) | 2016.02.24 |
| Ex09. mycopy.c (0) | 2016.02.22 |
Internal macro (내부 매크로)
$@ |
현재의 목표 파일 (target) |
$* |
확장자가 없는 현재의 목표 파일 (target) |
$< |
조건 파일 중 첫번째 파일 |
$? |
현재의 목표 파일(target)보다 더 최근에 갱신된 파일 이름 |
$^ | 현재의 모든 조건 파일 |
test: test.o hello.o gcc -lm -o test test.o hello.o test: test.o hello.o gcc -lm -o $@ $^
test.o: test.c gcc -c test.c test.o: test.c gcc -c $*.c
hello.o: hello.c hello.h gcc -c hello.c hello.o: hello.c hello.h gcc -c $<
Makefile
| Ex10. Makefile - lv4 (0) | 2016.02.25 |
|---|---|
| Ex10. Makefile - lv3 (0) | 2016.02.25 |
| Ex10. Makefile - lv1 (0) | 2016.02.24 |
| Ex09. mycopy.c (0) | 2016.02.22 |
| Ex08. simplecalc.c - libmycalcso.so (shared library) (1) | 2016.02.22 |
# make gcc -c test.c gcc -c hello.c gcc -lm -o test test.o hello.o # ./test - Call HelloWorld function - Hello world. it's compiled by Makefile # make clean rm -f test test.o hello.o #
| Ex10. Makefile - lv3 (0) | 2016.02.25 |
|---|---|
| Ex10. Makefile - lv2 (0) | 2016.02.24 |
| Ex09. mycopy.c (0) | 2016.02.22 |
| Ex08. simplecalc.c - libmycalcso.so (shared library) (1) | 2016.02.22 |
| Ex07. simplecalc.c - libmycalc.a (static library) (0) | 2016.02.22 |
# gcc -o mycopy mycopy.c # ./mycopy mycopy.c mycopy.bak #
| Ex10. Makefile - lv2 (0) | 2016.02.24 |
|---|---|
| Ex10. Makefile - lv1 (0) | 2016.02.24 |
| Ex08. simplecalc.c - libmycalcso.so (shared library) (1) | 2016.02.22 |
| Ex07. simplecalc.c - libmycalc.a (static library) (0) | 2016.02.22 |
| Ex06. simplecalc.c (0) | 2016.02.22 |
# gcc -fPIC -c sum.c sub.c mul.c div.c
# gcc -shared -Wl,-soname,libmycalcso.so.1 -o libmycalcso.so.1.0.1 sum.o sub.o mul.o div.o
# ln -s libmycalcso.so.1.0.1 libmycalcso.so
# gcc -o simplecalcso simplecalc.c -L./ -l mycalcso
# ./simplecalcso
./simplecalcso: error while loading shared libraries: libmycalc.so:
cannot open shared object file: No such file or directory
# cat /etc/ld.so.conf
include /etc/ld.so.conf.d/*.conf
/usr/local/boost_1_48_0/libs
# sudo cp ./libmycalcso.so.1.0.1 /usr/local/boost_1_48_0/libs/
# ./simplecalcso
sum : 1225
sub : 1175
mul : 30000
div : 48
#
# ldd simplecalc
linux-vdso.so.1 => (0x00007ffe6f7fd000)
libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007f08f2758000)
/lib64/ld-linux-x86-64.so.2 (0x00007f08f2b1d000)
#| Ex10. Makefile - lv1 (0) | 2016.02.24 |
|---|---|
| Ex09. mycopy.c (0) | 2016.02.22 |
| Ex07. simplecalc.c - libmycalc.a (static library) (0) | 2016.02.22 |
| Ex06. simplecalc.c (0) | 2016.02.22 |
| Ex05. userinfo.c (0) | 2016.02.22 |
# ar rc libmycalc.a sum.o sub.o mul.o div.o # ar t libmycalc.a sum.o sub.o mul.o div.o # gcc -o simplecalc simplecalc.c -L./ -l mycalc # ./simplecalc sum : 1225 sub : 1175 mul : 30000 div : 48 #
| Ex09. mycopy.c (0) | 2016.02.22 |
|---|---|
| Ex08. simplecalc.c - libmycalcso.so (shared library) (1) | 2016.02.22 |
| Ex06. simplecalc.c (0) | 2016.02.22 |
| Ex05. userinfo.c (0) | 2016.02.22 |
| Ex04. array_char.c (0) | 2016.02.22 |
# gcc -c sum.c sub.c mul.c div.c simplecalc.c # gcc -o simplecalc sum.o sub.o mul.o div.o simplecalc.o # ./simplecalc sum : 1225 sub : 1175 mul : 30000 div : 48 #
| Ex08. simplecalc.c - libmycalcso.so (shared library) (1) | 2016.02.22 |
|---|---|
| Ex07. simplecalc.c - libmycalc.a (static library) (0) | 2016.02.22 |
| Ex05. userinfo.c (0) | 2016.02.22 |
| Ex04. array_char.c (0) | 2016.02.22 |
| Ex03. hello_pat.c (0) | 2016.02.22 |