Skip to content

Latest commit

 

History

History
199 lines (170 loc) · 11 KB

TROUBLESHOOTING.md

File metadata and controls

199 lines (170 loc) · 11 KB

갑자기 문제가 생겼습니다

iOS 빌드가 되지 않아요

❌  ld: symbol(s) not found for architecture x86_64
❌  clang: error: linker command failed with exit code 1 (use -v to see invocation)
에러 메세지 자세히 보기
Undefined symbols for architecture x86_64:
"_sqlite3_bind_blob", referenced from:
mapEngine::ResourceCacheDao::_updateCacheData(mapEngine::ResourceCacheEntity*) in DaumMap(ResourceCacheDao.o)
mapEngine::ResourceCacheDao::_insertCacheData(mapEngine::ResourceCacheEntity*) in DaumMap(ResourceCacheDao.o)
"_sqlite3_bind_double", referenced from:
mapCore::DiskCacheDao::insertEntity(mapCore::DiskCacheEntity*) in DaumMap(DiskCacheDao.o)
mapCore::DiskCacheDao::updateEntity(mapCore::DiskCacheEntity*) in DaumMap(DiskCacheDao.o)
mapCore::DiskCacheDao::updateAccessTime(mobileToolkit::BasicString const*) in DaumMap(DiskCacheDao.o)
mapEngine::ResourceCacheDao::_updateCacheEntity(mapEngine::ResourceCacheEntity*) in DaumMap(ResourceCacheDao.o)
mapEngine::ResourceCacheDao::_insertCacheEntity(mapEngine::ResourceCacheEntity*) in DaumMap(ResourceCacheDao.o)
mapEngine::ResourceCacheDao::updateAccessTime(mobileToolkit::BasicString const*) in DaumMap(ResourceCacheDao.o)
"_sqlite3_bind_int", referenced from:
mapCore::DiskCacheDao::selectByType(int, bool) in DaumMap(DiskCacheDao.o)
mapCore::DiskCacheDao::selectCleaningList(int, int) in DaumMap(DiskCacheDao.o)
mapCore::DiskCacheDao::insertEntity(mapCore::DiskCacheEntity*) in DaumMap(DiskCacheDao.o)
mapCore::DiskCacheDao::updateEntity(mapCore::DiskCacheEntity*) in DaumMap(DiskCacheDao.o)
mapCore::DiskCacheDao::deleteEntitiesByType(int) in DaumMap(DiskCacheDao.o)
mapCore::DiskCacheDao::invalidateAllEntries() in DaumMap(DiskCacheDao.o)
mapEngine::ResourceCacheDao::selectCleaningList(int, int) in DaumMap(ResourceCacheDao.o)
...
"_sqlite3_bind_text", referenced from:
mapCore::DiskCacheDao::selectByKey(mobileToolkit::BasicString const*) in DaumMap(DiskCacheDao.o)
mapCore::DiskCacheDao::insertEntity(mapCore::DiskCacheEntity*) in DaumMap(DiskCacheDao.o)
mapCore::DiskCacheDao::updateEntity(mapCore::DiskCacheEntity*) in DaumMap(DiskCacheDao.o)
mapCore::DiskCacheDao::updateAccessTime(mobileToolkit::BasicString const*) in DaumMap(DiskCacheDao.o)
mapCore::DiskCacheDao::deleteEntity(mobileToolkit::BasicString const*) in DaumMap(DiskCacheDao.o)
mapEngine::ResourceCacheDao::selectCacheEntity(mobileToolkit::BasicString const*) in DaumMap(ResourceCacheDao.o)
mapEngine::ResourceCacheDao::selectCacheData(mobileToolkit::BasicString const*, mobileToolkit::BasicString*) in DaumMap(ResourceCacheDao.o)
...
"_sqlite3_close", referenced from:
mapCore::DiskCacheDao::_openOrCreateDB() in DaumMap(DiskCacheDao.o)
mapCore::BaseSqliteDao::~BaseSqliteDao() in DaumMap(BaseSqliteDao.o)
mapCore::BaseSqliteDao::open() in DaumMap(BaseSqliteDao.o)
mapCore::BaseSqliteDao::close() in DaumMap(BaseSqliteDao.o)
"_sqlite3_column_blob", referenced from:
mapEngine::ResourceCacheDao::selectCacheData(mobileToolkit::BasicString const*, mobileToolkit::BasicString*) in DaumMap(ResourceCacheDao.o)
"_sqlite3_column_bytes", referenced from:
mapEngine::ResourceCacheDao::selectCacheData(mobileToolkit::BasicString const*, mobileToolkit::BasicString*) in DaumMap(ResourceCacheDao.o)
"_sqlite3_column_double", referenced from:
mapCore::DiskCacheDao::selectByKey(mobileToolkit::BasicString const*) in DaumMap(DiskCacheDao.o)
mapCore::DiskCacheDao::selectByType(int, bool) in DaumMap(DiskCacheDao.o)
mapCore::DiskCacheDao::selectCleaningList(int, int) in DaumMap(DiskCacheDao.o)
mapEngine::ResourceCacheDao::selectCacheEntity(mobileToolkit::BasicString const*) in DaumMap(ResourceCacheDao.o)
mapEngine::ResourceCacheDao::selectCleaningList(int, int) in DaumMap(ResourceCacheDao.o)
"_sqlite3_column_int", referenced from:
mapCore::DiskCacheDao::selectByKey(mobileToolkit::BasicString const*) in DaumMap(DiskCacheDao.o)
mapCore::DiskCacheDao::selectByType(int, bool) in DaumMap(DiskCacheDao.o)
mapCore::DiskCacheDao::selectCleaningList(int, int) in DaumMap(DiskCacheDao.o)
mapEngine::ResourceCacheDao::selectCacheEntity(mobileToolkit::BasicString const*) in DaumMap(ResourceCacheDao.o)
"_sqlite3_column_text", referenced from:
mapCore::DiskCacheDao::selectByKey(mobileToolkit::BasicString const*) in DaumMap(DiskCacheDao.o)
mapCore::DiskCacheDao::selectByType(int, bool) in DaumMap(DiskCacheDao.o)
mapCore::DiskCacheDao::selectCleaningList(int, int) in DaumMap(DiskCacheDao.o)
mapEngine::ResourceCacheDao::selectCacheEntity(mobileToolkit::BasicString const*) in DaumMap(ResourceCacheDao.o)
mapEngine::ResourceCacheDao::selectCleaningList(int, int) in DaumMap(ResourceCacheDao.o)
mapEngine::ResourceCacheDao::selectDanglingList(mobileToolkit::BasicString*) in DaumMap(ResourceCacheDao.o)
"_sqlite3_errmsg", referenced from:
mapCore::BaseSqliteDao::~BaseSqliteDao() in DaumMap(BaseSqliteDao.o)
mapCore::BaseSqliteDao::open() in DaumMap(BaseSqliteDao.o)
mapCore::BaseSqliteDao::_logError(char const*) in DaumMap(BaseSqliteDao.o)
mapCore::BaseSqliteDao::close() in DaumMap(BaseSqliteDao.o)
mapCore::BaseSqliteDao::_logErrorOnPrepareStatement() in DaumMap(BaseSqliteDao.o)
"_sqlite3_exec", referenced from:
mapCore::DiskCacheDao::_openOrCreateDB() in DaumMap(DiskCacheDao.o)
mapEngine::ResourceCacheDao::_attachDatabase(mobileToolkit::BasicString const*, mobileToolkit::BasicString const*) in DaumMap(ResourceCacheDao.o)
mapEngine::ResourceCacheDao::updateEntity(mapEngine::ResourceCacheEntity*) in DaumMap(ResourceCacheDao.o)
mapEngine::ResourceCacheDao::insertEntity(mapEngine::ResourceCacheEntity*) in DaumMap(ResourceCacheDao.o)
mapEngine::ResourceCacheDao::deleteEntity(mapEngine::ResourceCacheEntity const*) in DaumMap(ResourceCacheDao.o)
"_sqlite3_finalize", referenced from:
mapCore::DiskCacheDao::onAfterInitializeDb() in DaumMap(DiskCacheDao.o)
mapCore::DiskCacheDao::selectByKey(mobileToolkit::BasicString const*) in DaumMap(DiskCacheDao.o)
mapCore::DiskCacheDao::selectByType(int, bool) in DaumMap(DiskCacheDao.o)
mapCore::DiskCacheDao::selectCleaningList(int, int) in DaumMap(DiskCacheDao.o)
mapCore::DiskCacheDao::insertEntity(mapCore::DiskCacheEntity*) in DaumMap(DiskCacheDao.o)
mapCore::DiskCacheDao::updateEntity(mapCore::DiskCacheEntity*) in DaumMap(DiskCacheDao.o)
mapCore::DiskCacheDao::updateAccessTime(mobileToolkit::BasicString const*) in DaumMap(DiskCacheDao.o)
...
"_sqlite3_free", referenced from:
mapCore::DiskCacheDao::_openOrCreateDB() in DaumMap(DiskCacheDao.o)
"_sqlite3_last_insert_rowid", referenced from:
mapCore::DiskCacheDao::insertEntity(mapCore::DiskCacheEntity*) in DaumMap(DiskCacheDao.o)
mapEngine::ResourceCacheDao::insertEntity(mapEngine::ResourceCacheEntity*) in DaumMap(ResourceCacheDao.o)
"_sqlite3_open", referenced from:
mapCore::DiskCacheDao::_openOrCreateDB() in DaumMap(DiskCacheDao.o)
mapCore::BaseSqliteDao::open() in DaumMap(BaseSqliteDao.o)
"_sqlite3_prepare_v2", referenced from:
mapCore::DiskCacheDao::onAfterInitializeDb() in DaumMap(DiskCacheDao.o)
mapCore::DiskCacheDao::selectByKey(mobileToolkit::BasicString const*) in DaumMap(DiskCacheDao.o)
mapCore::DiskCacheDao::selectByType(int, bool) in DaumMap(DiskCacheDao.o)
mapCore::DiskCacheDao::selectCleaningList(int, int) in DaumMap(DiskCacheDao.o)
mapCore::DiskCacheDao::insertEntity(mapCore::DiskCacheEntity*) in DaumMap(DiskCacheDao.o)
mapCore::DiskCacheDao::updateEntity(mapCore::DiskCacheEntity*) in DaumMap(DiskCacheDao.o)
mapCore::DiskCacheDao::updateAccessTime(mobileToolkit::BasicString const*) in DaumMap(DiskCacheDao.o)
...
"_sqlite3_reset", referenced from:
mapEngine::ResourceCacheDao::_insertCacheEntity(mapEngine::ResourceCacheEntity*) in DaumMap(ResourceCacheDao.o)
mapEngine::ResourceCacheDao::_insertCacheData(mapEngine::ResourceCacheEntity*) in DaumMap(ResourceCacheDao.o)
"_sqlite3_step", referenced from:
mapCore::DiskCacheDao::selectByKey(mobileToolkit::BasicString const*) in DaumMap(DiskCacheDao.o)
mapCore::DiskCacheDao::selectByType(int, bool) in DaumMap(DiskCacheDao.o)
mapCore::DiskCacheDao::selectCleaningList(int, int) in DaumMap(DiskCacheDao.o)
mapCore::DiskCacheDao::insertEntity(mapCore::DiskCacheEntity*) in DaumMap(DiskCacheDao.o)
mapCore::DiskCacheDao::updateEntity(mapCore::DiskCacheEntity*) in DaumMap(DiskCacheDao.o)
mapCore::DiskCacheDao::updateAccessTime(mobileToolkit::BasicString const*) in DaumMap(DiskCacheDao.o)
mapCore::DiskCacheDao::deleteEntity(mobileToolkit::BasicString const*) in DaumMap(DiskCacheDao.o)
...
ld: symbol(s) not found for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)

Undefined symbol: _sqlite3_bind_blob

Undefined symbol: _sqlite3_bind_double

Undefined symbol: _sqlite3_bind_int

Undefined symbol: _sqlite3_bind_text

Undefined symbol: _sqlite3_close

Undefined symbol: _sqlite3_column_blob

Undefined symbol: _sqlite3_column_bytes

Undefined symbol: _sqlite3_column_double

Undefined symbol: _sqlite3_column_int

Undefined symbol: _sqlite3_column_text

Undefined symbol: _sqlite3_errmsg

Undefined symbol: _sqlite3_exec

Undefined symbol: _sqlite3_finalize

Undefined symbol: _sqlite3_free

Undefined symbol: _sqlite3_last_insert_rowid

Undefined symbol: _sqlite3_open

Undefined symbol: _sqlite3_prepare_v2

Undefined symbol: _sqlite3_reset

Undefined symbol: _sqlite3_step

해결방법

Build Phases > Link Binary With Libraries > libsqlite3.tbd 추가


iOS 빌드가 되지 않아요

❌  ld: in /Users/jiggag/react-native-kakao-maps/example/node_modules/@jiggag/react-native-kakao-maps/ios/DaumMap.embeddedframework/DaumMap.framework/DaumMap(HashUtils.o), building for iOS Simulator, but linking in object file built for iOS, file '/Users/jiggag/react-native-kakao-maps/example/node_modules/@jiggag/react-native-kakao-maps/ios/DaumMap.embeddedframework/DaumMap.framework/DaumMap' for architecture arm64
❌  clang: error: linker command failed with exit code 1 (use -v to see invocation)

해결방법

xcode > example.xcworkspace 열어서 빌드


지도가 보이지 않아요

카카오 지도 개발자 문서를 참고하여 앱 키 발급 및 키 해시를 등록해주세요

안드로이드 키 해시 추출하기
keytool -exportcert -alias {key_alias} -keystore {keystore_path} -storepass {store_password} -keypass {key_password} | openssl sha1 -binary | openssl base64
keytool -exportcert -alias androiddebugkey -keystore ./android/app/debug.keystore -storepass android -keypass android | openssl sha1 -binary | openssl base64

해결방법

발급 받은 앱 키 strings.xml > kakao_app_key 교체 및 앱 설정 > 플랫폼 키 해시 등록


안드로이드 에뮬레이터에서 지도를 열면 앱이 크래시 발생해요

java.lang.UnsatisfiedLinkError
at net.daum.mf.map.n.api.NativeMapLibraryLoader.loadLibrary(NativeMapLibraryLoader.java:39)
...

해결방법

  • 안드로이드 에뮬레이터(x86, x86_64)에서는 카카오 맵을 지원하지 않고 있습니다. (관련 이슈 #31)
  • 실기기를 이용해주세요.