2022年3月29日 星期二

MacOS Monterey+XCode 13.3+ cocoapods filepermissionerror

自從換了XCode 13.3 系統變的超級慢

只好重裝 MacOS Monterey

但安裝cocoapods出現問題, 會出現 filepermissionerror 錯誤

 試了十幾種都無法解決, 終於找到方法 

另一個方法升級到XCode 15.x(但Mac Mini 舊版無法執行XCode 15.x)


> sudo gem update --system 

> brew install ruby

user_name 要自行修改為 mac 的使用者名稱

> echo 'export PATH="/usr/local/opt/ruby/bin:$PATH"' >> /Users/user_name/.bash_profile

> export LDFLAGS="-L/usr/local/opt/ruby/lib"

> export CPPFLAGS="-I/usr/local/opt/ruby/include"

> echo 'export PATH="/usr/local/opt/ruby/bin:$PATH"' >> /Users/user_name/.bash_profile

> echo 'export LDFLAGS="-L/usr/local/opt/ruby/lib"' >> ~/.bash_profile

> echo 'export CPPFLAGS="-I/usr/local/opt/ruby/include"' >> ~/.bash_profile

> source ~/.bash_profile

> sudo gem install -n /usr/local/bin cocoapods



來源:

 Could not find 'minitest' (>= 5.1) among 39 total gem(s) (Gem::MissingSpecError)




2022年3月16日 星期三

swift 5: CRC16 String vs [Int]

 swift 5: CRC16 String vs [Int]


如何將 String 的資料轉換為 Integer陣列


//---------------------

let string = "hello"

let array: [UInt8] = Array(string.utf8)

//---------------------

let str = "test"

let byteArray = [UInt8](str.utf8)

//---------------------

public func int8Array() -> [Int8] {

    var retVal : [Int8] = []

    for thing in self.utf16 {

        retVal.append(Int8(thing))

    }

    return retVal

}

//---------------------


下面是一個簡單範例

利用swift4.0語言寫個CRC16校驗碼程序