Xcode10正式版今天終于可以下載了,由于公司的網(wǎng)上... 直到晚上才爬完.
興沖沖的運行項目,但還是發(fā)生了一個報錯

從上圖中看到library庫查找不到 libstdc++.6的文件.
查看對應的目錄

或者直接查看文件目錄
/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/usr/lib/
確實沒有l(wèi)ibstdc++庫了. 多了libc++庫.
網(wǎng)上查閱資料:
Xcode10中 項目用到了c++,依賴了libstdc++.tbd和libstdc++.*.tbd,導致整個工程編譯不通過,報出Undefined symbols,C++ 的 List 找不到了,原因是蘋果在XCode10和iOS12中移除了libstdc++這個庫,由libc++這個庫取而代之,蘋果的解釋是lib轉(zhuǎn)載自斗玩網(wǎng)stdc++已經(jīng)標記為廢棄有5年了,建議大家使用經(jīng)過了llvm優(yōu)化過并且全面支持C++11的libc++庫。
但因為我的這個庫是第三方使用的,自己沒有權限去改,臨時有個解決方案.
將Xcode9(含有l(wèi)ibstdc++..tbd庫的版本)中的libstdc++庫導入到XCode10中:
命令行:
cp /Applications/Xcode9.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/usr/lib/libstdc++. /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/usr/lib/
cp /Applications/Xcode9.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator.sdk/usr/lib/libstdc++.* /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator.sdk/usr/lib/
PS:升級Xcode要養(yǎng)成一個良好的習慣,升級前保留原先的Xcode版本,通過改名字就可以了. 如果丟失了舊的靜態(tài)庫,也可以從其他地方拷貝過來.
Xcode10 亮點:
-
代碼塊位置的移動(個人猜想蘋果應該是希望我們能更好的使用它,提升開發(fā)效率),操作簡單多了.
代碼塊使用.png -
Assets.xcassets 多了Appearances 淺背景、深背景 和 High Contrast 選項,用戶體驗可以更上一層樓了. 以后UI稿又要增加了??
Assets新增選項.png -
創(chuàng)建系統(tǒng).
比較新奇,查閱資料后才發(fā)現(xiàn):新創(chuàng)建系統(tǒng)提供了更好的可靠性與創(chuàng)建性能,它可以獲取項目配置問題,而legacy創(chuàng)建系統(tǒng)則不能。
Legacy創(chuàng)建系統(tǒng)在Xcode 10中依舊可用。
創(chuàng)建布置如下圖:
Build System.png



