컴 파일 boost for android 경력

주로 이 블 로 그 를 빌 리 는 방법http://blog.csdn.net/lovesh5/article/details/11694941
제 가 처음으로 컴 파일 한 컴 파일 플랫폼 은 MACOSX 입 니 다.
1. boost 라 이브 러 리 1.49 (이것 은 이전에 다른 사람 이 한 번 만 든 boost 라 이브 러 리 입 니 다. 여러 G 는 어떤 플랫폼 에서 만 들 었 는 지 잊 어 버 렸 습 니 다. MACOSX 일 것 입 니 다.)
2. ndk 버 전: android - ndk - r8b
많은 오 류 를 만 들 었 습 니 다. 생 성 된 라 이브 러 리 가 몇 개 부족 합 니 다. 예 를 들 어 filesystem, thread.
원인 을 먼저 확인 하 세 요. 이 유 는 제 가 안 드 로 이 드 플랫폼 을 수 동 으로 고 쳤 는데 잘못 고 쳤 기 때 문 입 니 다.고 친 후에 도 잘못 이 있 습 니 다. 글 에서 r9 라 이브 러 리 를 사용 했다 고 언급 했 기 때문에 저 는 r9b 를 바 꾸 었 습 니 다. 잘못 이 많이 줄 었 지만 아직 있 습 니 다.
마지막 알림 error: fatal error: sys / statvfs. h: No such file or directory, 이 때 도착 해 야 할 라 이브 러 리 는 filesystem 라 이브 러 리 만 남 았 습 니 다.
글 에서 언급 한 방법 에 따라 boost 의 파일 을 바 꾸 면 됩 니 다.
Android doesn't have sys/statvfs.h. instead sys/vfs.h should be used.
possible fix (libs/filesystem/src/operations.cpp):
#   if !defined(__APPLE__) && !defined(__OpenBSD__) && !defined(__ANDROID__)
#     include 
#     define BOOST_STATVFS statvfs
#     define BOOST_STATVFS_F_FRSIZE vfs.f_frsize
#   else
#     ifdef __ANDROID__
#     include 
#     endif
#     ifdef __OpenBSD__
#     include 
#     endif
#     include 
#     define BOOST_STATVFS statfs
#     define BOOST_STATVFS_F_FRSIZE static_cast<:uintmax_t>(vfs.f_bsize)
#   endif

주:
1. 그 동안 많은 시행 착 오 를 겪 었 습 니 다. 주로 제 시 된 오류 에 따라 자 료 를 찾 았 기 때문에 찾 은 것 도 문 제 를 해결 하지 못 했 습 니 다.윗글 의 환경 에 엄 격 히 따 르 면 이전에 제시 한 잘못 은 많이 사라 진다.filesystem 만 고 쳐 야 할 것 이 있 습 니 다.
2. 나의 세 번 째 명령 을 첨부 합 니 다. / b2 toolset = gcc - android 4.6 link = static threading = multi runtime - link = static target - os = linux -- stagedir = android
3. 지금 은 잠시 필요 하지 않 은 라 이브 러 리 가 있 습 니 다. atomic 라 이브 러 리 가 만들어 지지 않 았 습 니 다. 지 도 를 구 합 니 다...

좋은 웹페이지 즐겨찾기