동적 라이브러리에 사용되는 기술을 만들고 이해하는 공식적인 방법은 어디입니까? g ++ 컴파일러를 사용하고 있습니다. 나는이 질문을 봤지만 이것에 대해서는 공식적인 것을 찾을 수 없다.g ++를 통한 공유 라이브러리 생성 방법
1
A
답변
2
할 수 있습니다 곱셈
multiplyNum.cpp
것처럼 -fpic 옵션이 이야기에 대한
내가 샘플 프로그램이 ... 쉽게 예를 들어, 공유 라이브러리를 만들 g ++ 공유에 필요한 위치 독립적 인 코드를 작성하는 방법 라이브러리. 내 소스 파일은 src/
폴더에 있습니다.
> g++ -I ./inc -fpic -c src/multiplyNum.cpp -o obj/multiplyNum.o
마지막으로 공유 라이브러리가 생성됩니다. 라이브러리 이름은 lib의 세 문자로 시작하고 접미사는 .so이어야합니다.
> g++ -shared -o lib/libmultiplyNum.so obj/multiplyNum.o
귀하의 메이크 파일에 libmultiplyNum.so
라이브러리를 사용할 수 있습니다.
1
또한 유명한 Drepper의 논문 인 How To Write Shared Libraries을 읽는 것이 좋습니다.
관련 문제
- 1. Linux에서 G ++를 사용하는 공유 라이브러리
- 2. g ++의 공유 C++ 라이브러리 사이의 예외
- 3. g ++ ld 공유 라이브러리 오류 (코드 :: 블록)
- 4. g ++를 사용하는 표준 템플릿 라이브러리
- 5. gcc와 공유 라이브러리에서 "-g"전파
- 6. C++의 공유 라이브러리 (공유) 내에서 공유 메모리에 객체 생성
- 7. SCons가 정적 라이브러리 (.a)와 공유 라이브러리 (.so)를 만듭니다.
- 8. 솔라리스에서 동적 공유 라이브러리 생성 및 사용
- 9. C에서 공유 라이브러리 생성, sqlite3 문제
- 10. Uncatchable C++ 예외 (공유 라이브러리, arm-linux-gnueabi-g ++)
- 11. Reflection.Emit을 통한 휴대용 클래스 라이브러리 생성
- 12. 요청 라이브러리 (Python)를 통한 수락 테스트
- 13. 공유 라이브러리 연결 Autotools
- 14. 다른 공유 라이브러리를 사용하여 공유 라이브러리 만들기
- 15. linux g ++ 64 비트 공유 라이브러리 코드를 정적 라이브러리에 연결
- 16. Android 플랫폼 용 공유 라이브러리 생성 문제
- 17. 안드로이드, IOS를 통한 비디오 공유
- 18. 다른 공유 라이브러리를 생성 할 때 공유 라이브러리 연결하기
- 19. 공유 라이브러리를 서로 공유 라이브러리 공유 C++
- 20. 내가 사용하는 공유 라이브러리 A가 라이브러리 B를 공유 한 리눅스
- 21. 공유 라이브러리 : 윈도우 리눅스 방법
- 22. 서비스를 통한 공유 호스팅
- 23. 공유 라이브러리 스트리핑 .so
- 24. Python이 (cython) 공유 라이브러리
- 25. JDBC (오라클)를 통한 트리거 생성
- 26. C++의 임베디드 LLVM에서 이진 코드 (공유 라이브러리) 생성
- 27. 공유 라이브러리의 외부 라이브러리
- 28. 공유 라이브러리
- 29. 공유 라이브러리
- 30. 공유 라이브러리
"공유 라이브러리 생성"으로 Google 검색의 두 번째 결과는 나에게 [이.] (http://www.cprogramming.com/tutorial/shared-libraries-linux-gcc.html) – wavemode
당신에게이 하나의 http를 봤어 : //stackoverflow.com/questions/22001017/how-to-create-a-dynamic-library-for-c-on-linux? rq = 1? –
** [3.4. 공유 라이브러리 생성] (http://tldp.org/HOWTO/Program-Library-HOWTO/shared-libraries.html) ** 리눅스 문서 프로젝트의'공유 라이브러리'섹션에 있습니다. – mockinterface