기존 이솝 임베디드 포럼의 지식인 서비스가 게시판 형태로 변경되었습니다.
static 라이브러리파일을 만들어서 테스트해보고 있는 상태인데요
이전에 shared 라이브러리를 만들었습니다. 테스트까지 성공하였습니다.
arm-linux-gcc -fPIC -c xxx.c
arm-linux-gcc -shared -W1,-sname,libxxx.so
명령을 사용하여 shared 라이브러리를 만들었는데요
그대로 static lib 만들어 테스트를 했는데요
arm-linux-gcc -c xxx.c
arm-linux-ar rscv libxxx.a xxx.o
명령으로 libxxx.a 를만들어서
make를 실행( makefile 내용은 shared, static 동일합니다)
libxxx.a 의 static 라이브러리의 내용을 못읽어 들이는지
빌드상에서 undefined reference to '함수' 에러가 나오는 상태인데요
참조하는 방식이 잘못된건가요?
shared 에서 사용한 방식을 라이브러리만드는 방법만 바꾸고 make(빌드)는 똑같은 상태인데
제가 어디 빠트린부분이 있을까요?
자체 해결했는데요
제가 xxx.a yyy.a 두개의 static 라이브러리를 만들어서 테스트했는데
makefile에서 두 라이브러리 참조 순서를 바꾸었더니 정상 빌드가 되더라구요
... -lxxx -lyyy 이것을 ...-lyyy -lxxx로 바꿨습니다.
두 라이브러리의 상관관계가 있는 상태인데 순서차이에 의미가 있는가요?