당신은 lib 디렉토리에 라이브러리를 작성하는 명령 행 가장 쉬운 방법을 사용하고 있기 때문에 명시 적으로 그것을 할 수 있습니다 :
AR -rcs lib 디렉토리/libcalc.a multiply.o sum.o
Makefile을 사용하면보다 정교한 작업을 할 수 있지만 그때조차도 같은 일을합니다. 라이브러리 이름 앞에 경로를 추가하십시오. 중요
CC=g++
CFLAGS=-c -Wall
LDFLAGS=
SOURCES=src/main.cpp src/sum.cpp src/multiply.cpp
OBJECTS=$(SOURCES:.cpp=.o)
LIBRARY=lib/libcalc.a
EXECUTABLE=main
all: $(SOURCES) $(LIBRARY) $(EXECUTABLE)
$(LIBRARY): $(OBJECTS)
<tab>mkdir -p lib
<tab>ar -rcs [email protected] $<
$(EXECUTABLE): $(OBJECTS)
<tab>$(CC) $(LDFLAGS) $(OBJECTS) -o [email protected]
.cpp.o:
<tab>$(CC) $(CFLAGS) $< -o [email protected]
clean:
<tab>rm -rf main lib/ src/*.o
을 : 당신이 당신의 의견에 대한 추가 정보를 요구하기 때문에
, 내가 여기 당신이 시작하는 데 도움이 될 수있는 간단한 Makefile을 추가 모든 <tab>
의 실제 탭으로 교체해야합니다 , Makefile 구문에 따라 필요합니다!
Makefile은 매우 유연하므로 문제가 매우 간단하고 특정하거나 수백만 개 또는 수백만 개의 소스 코드를 기반으로 많은 라이브러리 및 바이너리를 빌드하는 일반 및/또는 복잡한 파일 일 수 있습니다. 더 자세한 정보는 Makefile 문서를 검색하는 것이 좋습니다.
마지막으로, 라이브러리의 이름을 'libcalc.a'로 바꾸는 것이 좋습니다. 'lib'접두사는 Unix에서 표준이므로. 다른 유사한 표준이 다른 환경에도 적용됩니다.
lib 폴더가없는 경우 라이브러리를 만드는 동안 컴파일러 명령 줄 –