xcarchive missing BCSymbolMaps (_hidden functions)

In our bitcode-enabled iOS project written in Swift, if we create an archive via "Product > Archive" our xcarchive contains dSYMs, BCSymbolMaps, and SCMBlueprint dirs. When we build on the command line with "xcodebuild archive" we only get dSYMs. I noticed some .bcsymbolmap files being created during the build process, but they aren't ending up in the archive.


I believe this is what's preventing us from resolving symbols on app store submissions. Our crash dumps show "_hidden" for functions in our app.


Am I on the right track? What makes "Product > Archive" special?

Accepted Reply

I get the same issue and i have solved it now. i'd like to share my solution.


command line below will result in xcarchive missing BSCymbolMaps and dSYMs

"${xcodePath}/xcodebuild" -workspace "${workspace}" -scheme "${scheme}" -configuration "${configuration}" -sdk "${sdk}" -archivePath "${archive_path}" archive CONFIGURATION_BUILD_DIR="${build_dir}"


command line below will solve the problem

"${xcodePath}/xcodebuild" -workspace "${workspace}" -scheme "${scheme}" -configuration "${configuration}" -sdk "${sdk}" -archivePath "${archive_path}" archive


I find adding a buildingsetting "CONFIGURATION_BUILD_DIR=Path" will change the others buildSetting variables such as "DWARF_DSYM_FOLDER_PATH", i guess it will lead the missing of BCSymbolMaps and empty dSYMs folder in xcarchive

check DWARF_DSYM_FOLDER_PATH buildsettings value maybe help


you can see DWARF_DSYM_FOLDER_PATH value by excute command line "xcodebuild -workspace APP.xcworkspace -scheme APP -showBuildSettings" in your project root path.

Replies

I get the same issue and i have solved it now. i'd like to share my solution.


command line below will result in xcarchive missing BSCymbolMaps and dSYMs

"${xcodePath}/xcodebuild" -workspace "${workspace}" -scheme "${scheme}" -configuration "${configuration}" -sdk "${sdk}" -archivePath "${archive_path}" archive CONFIGURATION_BUILD_DIR="${build_dir}"


command line below will solve the problem

"${xcodePath}/xcodebuild" -workspace "${workspace}" -scheme "${scheme}" -configuration "${configuration}" -sdk "${sdk}" -archivePath "${archive_path}" archive


I find adding a buildingsetting "CONFIGURATION_BUILD_DIR=Path" will change the others buildSetting variables such as "DWARF_DSYM_FOLDER_PATH", i guess it will lead the missing of BCSymbolMaps and empty dSYMs folder in xcarchive

check DWARF_DSYM_FOLDER_PATH buildsettings value maybe help


you can see DWARF_DSYM_FOLDER_PATH value by excute command line "xcodebuild -workspace APP.xcworkspace -scheme APP -showBuildSettings" in your project root path.

It wasn't CONFIGURATION_BUILD_DIR for us, but you're right something about specifying the intermediate directories messes it up. We were passing SYMROOT and OBJROOT on the command line and removing those appears to fix it.

  • hello i set SYMROOT and OBJROOT but alse missing BSCymbolMaps and dSYMs ......

Add a Comment