iOS Question Two common local builder errors

CaptKronos

Active Member
Licensed User
After several months of not using B4i, I have just updated to the latest version. My distribution certificate had expired, so I had to update that, which went smoothly. Unfortunately, I am now seeing two problems that seem to have been experienced by other B4i developers which don't seem to have a consistent fix.
Firstly, using the hosted builder everything works perfectly. However, I need to use the local builder because some projects use libraries that are not yet on the hosted builder.
The first problem is the one discussed in (for example) this thread Local Builder: "codesign wants to access key 'B4i' in your keychain". I have managed to circumvent this problem by running B4iBuildServer with sudo. It would be nice not to have to use sudo, but I can live with it.
The second problem is the one discussed in this post https://www.b4x.com/android/forum/t...keychain-password-required.132386/post-836470. Which is error: "B4iProject" requires a provisioning profile. Select a provisioning profile in the Signing & Capabilities editor. (in target 'B4iProject' from project 'B4iProject')
I had xcode 13.2.1 installed, so I uninstalled it and installed the recommended version, 13.2, but I still get the same error.
I assume because the hosted builder works perfectly, I don't have a problem with the distribution certificate.
I note that from this thread new profile [SOLVED] moore_it fixed the problem by reinstalling windows and macOS. I have to say that I would rather not do that! Any suggestions for something less drastic would be much appreciated.

The full output showing the second problem:
B4X:
B4i Version: 7.80
Parsing code.    (0.19s)
Building folders structure.    (0.20s)
Compiling code.    (0.38s)
Compiling layouts code.    (0.01s)
Compiling debugger engine code.    (0.03s)
Building Xcode project.    (0.20s)
Preparing project for builder.    (0.19s)
    Project size: 0.52 MB
Sending data to remote compiler.    Error
Out: Command line invocation:
    /Applications/Xcode.app/Contents/Developer/usr/bin/xcodebuild -configuration Release "PRODUCT_NAME=B4i Example" CONFIGURATION_BUILD_DIR=/Users/bob/Desktop/B4iBuildServer/UploadedProjects/<user id>/Payload "CODE_SIGN_IDENTITY=iPhone Distribution: Cyfer Ltd (SL4N43XN56)" "OTHER_CODE_SIGN_FLAGS=--keychain <user id>" PROVISIONING_PROFILE=0a174552-f1f0-4c2d-b050-d7fef7bda5fb -arch arm64

User defaults from command line:
    IDEPackageSupportUseBuiltinSCM = YES

Build settings from command line:
    ARCHS = arm64
    CODE_SIGN_IDENTITY = iPhone Distribution: Cyfer Ltd (SL4N43XN56)
    CONFIGURATION_BUILD_DIR = /Users/bob/Desktop/B4iBuildServer/UploadedProjects/<user id>/Payload
    OTHER_CODE_SIGN_FLAGS = --keychain <user id>
    PRODUCT_NAME = B4i Example
    PROVISIONING_PROFILE = 0a174552-f1f0-4c2d-b050-d7fef7bda5fb

note: Using new build system
note: Using codesigning identity override: iPhone Distribution: Cyfer Ltd (SL4N43XN56)
note: Planning
Analyze workspace

Create build description
Build description signature: c139d1cb06634658e24f7a42bc20fe90
Build description path: /Users/bob/Desktop/B4iBuildServer/UploadedProjects/<user id>/build/XCBuildData/c139d1cb06634658e24f7a42bc20fe90-desc.xcbuild

note: Build preparation complete
warning: Building targets in manual order is deprecated - check "Parallelize build for command-line builds" in the project editor, or set DISABLE_MANUAL_TARGET_ORDER_BUILD_WARNING in any of the targets in the current build to suppress this warning
error: "B4iProject" requires a provisioning profile. Select a provisioning profile in the Signing & Capabilities editor. (in target 'B4iProject' from project 'B4iProject')

Error: ** BUILD FAILED **
 

CaptKronos

Active Member
Licensed User
After several months of not using B4i, I have just updated to the latest version. My distribution certificate had expired, so I had to update that, which went smoothly. Unfortunately, I am now seeing two problems that seem to have been experienced by other B4i developers which don't seem to have a consistent fix.
Firstly, using the hosted builder everything works perfectly. However, I need to use the local builder because some projects use libraries that are not yet on the hosted builder.
The first problem is the one discussed in (for example) this thread Local Builder: "codesign wants to access key 'B4i' in your keychain". I have managed to circumvent this problem by running B4iBuildServer with sudo. It would be nice not to have to use sudo, but I can live with it.
The second problem is the one discussed in this post https://www.b4x.com/android/forum/t...keychain-password-required.132386/post-836470. Which is error: "B4iProject" requires a provisioning profile. Select a provisioning profile in the Signing & Capabilities editor. (in target 'B4iProject' from project 'B4iProject')
I had xcode 13.2.1 installed, so I uninstalled it and installed the recommended version, 13.2, but I still get the same error.
I assume because the hosted builder works perfectly, I don't have a problem with the distribution certificate.
I note that from this thread new profile [SOLVED] moore_it fixed the problem by reinstalling windows and macOS. I have to say that I would rather not do that! Any suggestions for something less drastic would be much appreciated.

The full output showing the second problem:
B4X:
B4i Version: 7.80
Parsing code.    (0.19s)
Building folders structure.    (0.20s)
Compiling code.    (0.38s)
Compiling layouts code.    (0.01s)
Compiling debugger engine code.    (0.03s)
Building Xcode project.    (0.20s)
Preparing project for builder.    (0.19s)
    Project size: 0.52 MB
Sending data to remote compiler.    Error
Out: Command line invocation:
    /Applications/Xcode.app/Contents/Developer/usr/bin/xcodebuild -configuration Release "PRODUCT_NAME=B4i Example" CONFIGURATION_BUILD_DIR=/Users/bob/Desktop/B4iBuildServer/UploadedProjects/<user id>/Payload "CODE_SIGN_IDENTITY=iPhone Distribution: Cyfer Ltd (SL4N43XN56)" "OTHER_CODE_SIGN_FLAGS=--keychain <user id>" PROVISIONING_PROFILE=0a174552-f1f0-4c2d-b050-d7fef7bda5fb -arch arm64

User defaults from command line:
    IDEPackageSupportUseBuiltinSCM = YES

Build settings from command line:
    ARCHS = arm64
    CODE_SIGN_IDENTITY = iPhone Distribution: Cyfer Ltd (SL4N43XN56)
    CONFIGURATION_BUILD_DIR = /Users/bob/Desktop/B4iBuildServer/UploadedProjects/<user id>/Payload
    OTHER_CODE_SIGN_FLAGS = --keychain <user id>
    PRODUCT_NAME = B4i Example
    PROVISIONING_PROFILE = 0a174552-f1f0-4c2d-b050-d7fef7bda5fb

note: Using new build system
note: Using codesigning identity override: iPhone Distribution: Cyfer Ltd (SL4N43XN56)
note: Planning
Analyze workspace

Create build description
Build description signature: c139d1cb06634658e24f7a42bc20fe90
Build description path: /Users/bob/Desktop/B4iBuildServer/UploadedProjects/<user id>/build/XCBuildData/c139d1cb06634658e24f7a42bc20fe90-desc.xcbuild

note: Build preparation complete
warning: Building targets in manual order is deprecated - check "Parallelize build for command-line builds" in the project editor, or set DISABLE_MANUAL_TARGET_ORDER_BUILD_WARNING in any of the targets in the current build to suppress this warning
error: "B4iProject" requires a provisioning profile. Select a provisioning profile in the Signing & Capabilities editor. (in target 'B4iProject' from project 'B4iProject')

Error: ** BUILD FAILED **
I have been messing about with these problems for over a day, I post here about them, and then 30 minutes later I discover a solution! A fix for the first problem is to enter 111111 for the requested password (as Erel has posted in this forum), instead of running B4iBuildServer with sudo. And then, the second problem doesn't occur! So the provisioning profile error was caused by running the build server with sudo.
(Make sure to click Always Allow so as not to have to continually type in the password.)
 
Last edited:
Upvote 0
Top