Untuk beberapa alasan, saya perlu menjalankan penandatanganan kode manual untuk aplikasi macos saya di Bitrise. Saat melakukan itu dengan perintah berikut:

codesign --deep --force --verify --verbose --sign "Developer ID Application: Name (ID)" "MyApp.app"

Itu selalu kembali dengan kesalahan:

line 11:  3043 Segmentation fault: 11

Adakah yang tahu cara memperbaikinya?

3
Thor_Bux 16 Maret 2017, 00:26

2 jawaban

Jawaban Terbaik

Saat mencari solusi yang mungkin, saya menemukan dua posting ini:

Kesalahan segmentasi: 11 saat mencoba mendesain bersama .app

https://forums.developer.apple.com/thread/65055

Mereka membantu saya menemukan solusi untuk masalah saya. Jawaban yang ditandai sebagai benar di tautan pertama menyatakan bahwa:

--timestamp=none

Akan memperbaikinya yang tidak benar bagi saya. Tetapi jawaban kedua, serta solusi yang disebutkan di tautan kedua, berisi petunjuk yang benar.

Saya perlu masuk dengan pengidentifikasi hex dan bukan dengan nama sertifikat.

Anda bisa mendapatkan pengidentifikasi hex untuk sertifikat Anda yang menjalankan perintah ini:

security find-identity -p codesigning

Menggunakan pengidentifikasi hex yang dikembalikan untuk sertifikat saya, ini adalah perintah yang harus saya jalankan di Bitrise untuk menandatangani MyApp.app

codesign --deep --force --verify --verbose -s <<hex identifier>> "MyApp.app"

Ketahuilah bahwa urutan opsi juga penting. '-s' harus menjadi pilihan terakhir bagiku.

(Dan ingat untuk menyertakan langkah alur kerja Bitris 'Sertifikat dan penginstal profil')

=== Sunting ===

Saya berbicara tentang tumpukan MacOS Sierra di sini.

3
Community 23 Mei 2017, 12:10

Saya menemukan solusi dengan menandatangani dengan id hex dari sertifikat sebagai gantinya.

Anda dapat menemukan ID HEX dengan menjalankan: security find-identity -v

Kredit Di Sini: -- Kesalahan segmentasi: 11 saat mencoba mendesain bersama .app< /a>

0
D1v3 22 Agustus 2017, 20:30