[C言語] 共有ライブラリを作って呼んでみる
共有ライブラリで発生した異常をgdbで調べてみる実験をしたく、まずは、共有ライブラリを作成&実験してみた。 環境は、以下。 2.6.18-92.1.22.el5 gcc (GCC) 4.1.2 20071124 (Red Hat 4.1.2-42) 以下のファイルをそれぞれ作成してから、make; sh run.shと実行すればめでたく(?)core発生。 "Makefile" all : test_core clean : rm -f test_core test_core.o liba.so liba.so.1 liba.so.1.0 liba.o rm -f core.* test_core : test_core.o liba.so.1.0 gcc -g -o test_core test_core.o -L. -la test_core.o : test_core.c gcc -Wall -g -c test_core.c -o test_core.o liba.so.1.0 : liba.o gcc -g -shared -Wl,-soname,liba.so.1 -o liba.so.1.0 liba.o -lc ln -sf liba.so.1 liba.so ln -sf liba.so.1.0 liba.so.1 liba.o : liba.c liba.h gcc -fpic -g -c -Wall liba.c "liba.h" int liba(); "liba.c" int liba() { int i = 10 / ...