[링크] Install Docker on Windows (WSL) without Docker Desktop
'Server' 카테고리의 다른 글
[링크] Windows10에 XAMPP 설치 & 사용하기 (Apache, MySql, PHP) (0) | 2022.03.30 |
---|---|
[링크] DATABASE (0) | 2022.03.23 |
[링크] [Redis] Redis Desktop Manager 설치 및 테스트 (0) | 2022.03.23 |
[링크] Windows10에 XAMPP 설치 & 사용하기 (Apache, MySql, PHP) (0) | 2022.03.30 |
---|---|
[링크] DATABASE (0) | 2022.03.23 |
[링크] [Redis] Redis Desktop Manager 설치 및 테스트 (0) | 2022.03.23 |
[링크] C# 에서 Mysql연동하기 (insert, select) (0) | 2022.03.30 |
---|---|
[링크] [Mysql] Dump 관련 내용 (mysql dump) (0) | 2022.03.30 |
[링크] [excel] Mysql for Excel 사용해보기 (0) | 2022.03.24 |
[링크] MySQL 마이그레이션 (0) | 2022.03.23 |
[링크] 윈도우 10 Mysql 설치하기 (mysql 개발환경 세팅) (0) | 2022.03.22 |
[링크] C# 에서 Mysql연동하기 (insert, select) (0) | 2022.03.30 |
---|---|
[링크] [Mysql] Dump 관련 내용 (mysql dump) (0) | 2022.03.30 |
[링크] [excel] Mysql for Excel 사용해보기 (0) | 2022.03.24 |
[링크] MySQL 마이그레이션 (0) | 2022.03.23 |
[링크] MySql Workbench 사용법 (0) | 2022.03.22 |
[요약] 솔루션(sln) 파일을 vs2019에서 vs2022로 변경하기 위해 찾아봄
[방법]
1) 솔루션(sln)파일을 에디터로 열어서 원하는 버전으로 수정
- 나는 글쓰는 시점 기준 17.1.358.51495로 수정함
- vs2022는 17버전임. 세부 버전은 VS 실행해서 '도움말-Microsoft Visual Studio 정보'에서 세부 버전 확인
2) 솔루션(sln) 파일 연결 프로그램은 'Microsft Visual Studio Version Selector'로 변경.
3) 더블클릭해서 실행해본다.
- 혹시나 잘안되면 .vs 폴더 삭제 후 다시 더블클릭
---------------------------------------
Welcome to Microsoft Q&A!
You can open the sln file of the project, for example, using Visual Studio Code.
This is a partial screenshot of two sln files, the upper one was created by Visual Studio 2019, and the lower one was created by Visual Studio 2022.
Visual Studio 2019:
Visual Studio 2022:
"# Visual Studio Version 16"
The major version of Visual Studio that (most recently) saved this solution file. This information controls the version number in the solution icon.
VisualStudioVersion = 16.0.28701.123
The full version of Visual Studio that (most recently) saved the solution file. If the solution file is saved by a newer version of Visual Studio that has the same major version, this value is not updated so as to lessen churn in the file.
You can modify these two version numbers.
As an example, I modified the version number of the sln file created by VS2019:
Double click the sln file, it will open in VS2020.
You can refer to Solution (.sln) file.
[Tips] '원하지 않는 namespace가 자동으로 추가 될 때' 끄는 법 (0) | 2023.02.07 |
---|---|
[링크] [ VS 삽질 ] VisualStudio 설치 속도가 너무 느릴때 (0) | 2022.07.13 |
[Visual Studio] 현재 소스 새 창에서 열기(복제) (0) | 2016.11.10 |
[VS 확장프로그램] PowerMode (0) | 2016.04.28 |
[TD 2015] Visual Studio를 사용하는 비주얼 개발자를 위한 Tips & Tricks (No Slide, All Demo!) (0) | 2015.12.17 |
----------------------------------------------------
Unity 2020.3.27f1
Xcode 13.2.1
FBAEMKit 12.2.1
FBSDKCoreKit 12.2.1
FBSDKCoreKit_Basics 12.2.1
FBSDKLoginKit 12.2.1
GoogleMobileAds 6.1.2
GoogleMobileAds-FacebookUnityAdapter-3.6.0
----------------------------------------------------
회사 플랫폼에서 Firebase Auth를 쓰면서 FBSDK(12.2.1) framework 가 들어가게 됐는데,
여기서 광고를 쓰기 위해 GoogleMoblieAds(6.1.2)를 추가하고,
페이스북 광고를쓰기위해 GoogleMobileAds의 미디에이션인 FacebookUnityAdapter(3.6.0)을 추가했는데..
Android는 잘되는데 iOS에서 에러 남.
플러그인 추가 진행 상황은 아래와 같다.
----------------------------------------------------
1) 플랫폼 SDK 추가하면서 FBSDK(12.2.1) 추가
1.1)Plugins/iOS에 프레임워크 추가 돼 있음(FBAEMKit.framework/FBSDKCoreKit.framework/FBSDKCoreKit_Basics.framework/FBSDKLoginKit.framework)
2) GoogleMobileAds(6.1.2) 추가 -> 빌드 잘 됨
3) GoogleMobileAds-FacebookUnityAdapter(3.6.0) 추가 -> 빌드 에러
3.1) [에러메시지] Undefined Symbols for architecture arm64: "_OBJC_CLASS_$_GAD...
3.2) [해결방법] Unity Editor-Menu-External Dependency Manager-iOS Resolver-Settings : Link frameworks statically <- 체크
3.3) [참조] https://blueasa.tistory.com/2587
4) 3) 해결 후, 빌드는 되는데 런타임에서 에러 남 -> 런타임 에러
4.1) [에러메시지] Library not loaded: @rpath/FBAEMKit.framework...
4.1.1) [추천] 4.2.4 방식 먼저 시도
4.2.) [해결방법] 구글링 하다보니 아래와 같은 내용이 있음.
4.2.1) General->Frameworks, Library, and Embedded Content. If it's "Do Not Embed", change to "Embed Without Signing"
(참조: https://stackoverflow.com/questions/58144104/xcode11-dyld-library-not-loaded-reason-image-not-found)
4.2.2) 빌드하고 수정하긴 그래서 XcodePostProcessor.cs에 아래 내용을 추가함.
(처음엔 weak 파라미터를 false로 추가해봤었는데 여전히 런타임 에러 남)
[추가소스]
/// Initialize PbxProject
var projectPath = pathToBuiltProject + "/Unity-iPhone.xcodeproj/project.pbxproj";
PBXProject pbxProject = new PBXProject();
pbxProject.ReadFromFile(projectPath);
string targetGuid = pbxProject.GetUnityFrameworkTargetGuid();
// 플랫폼 SDK에서 아래 4개 프레임워크를 추가해놔서 여기서도 4개 추가시킴
pbxProject.AddFrameworkToProject(targetGuid, "FBAEMKit.framework", true); // weak 부분을 true로 넘김
pbxProject.AddFrameworkToProject(targetGuid, "FBSDKCoreKit.framework", true);
pbxProject.AddFrameworkToProject(targetGuid, "FBSDKCoreKit_Basics.framework", true);
pbxProject.AddFrameworkToProject(targetGuid, "FBSDKLoginKit.framework", true);
4.2.3) 위의 4.2.2) 방법이 안된다면 (스크립트로 프레임워크 추가를 안하고) 직접 넣어도 됨
직접 넣는 건 아래 링크에서 원하는 버전의 FacebookSDK-Static_XCFramework를 다운받아서 추가.
(iOS는 받아서 압축풀어보면 여러개의 폴더가 나오는데 ios-arm64(또는 ios-arm64_armv7) 폴더를 사용하면 된다)
[링크] https://github.com/facebook/facebook-ios-sdk/releases
4.2.3.1) static 프레임워크 추가하고 Undefined symbol: _vDSP 에러가 나면 Accelerate.framework도 추가하자.
[참조] https://minmong.tistory.com/242
4.2.4) 최근(2023-05-10)에 FacebookSDK 버전을 올리려고 확인 해보면서 FacebookSDK_Dynamic.xcframework를 적용해봤는데 이걸로 해도 잘되는 것 같다.
4.2.4.1) FacebookSDK_Dynamic.xcframework 추가
4.2.4.2) 기존 Dependencies.xml은 버전 맞춰 주기(난 15.0.0으로 맞춤)
[참조] <iosPod name="FBSDKLoginKit" version="15.0.0" minTargetSdk="12.0"> </iosPod>
5) 4)까지 하고 빌드하니 런타임에서도 에러 안나고 잘 됨. -> 빌드 잘 됨
6) 빌드 성공!
[첨언]
결론적으로 GoogleMobileAds가 Static Framework을 강제(Link frameworks statically)하면서 생기는 문제로 보인다.
결국 GoogleMobileAds를 사용해야 된다면 dynamic framework 추가 방식은 불가능하므로, Facebook 관련 SDK 소스를 직접 추가(4.2.3)하는게 맞는 것 같다.
[Model] 캐릭터가 카메라 가까울 때 일부가 렌더링 안되는 문제 (0) | 2022.04.18 |
---|---|
[Mac] Unable to find command line tool python required for Firebase Android resource generation. (0) | 2022.03.31 |
[CS0433] 'Task' 형식이 'Unity.Tasks, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null' 및 'mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089'에 모두 있습니다. (0) | 2022.02.21 |
[Error] CS1069: The type name 'NavMeshAgent' could not be found in the namespace 'UnityEngine.AI'. (0) | 2021.08.17 |
[펌] Unexpected character encountered while parsing value: . Path '', line 0, position 0. (0) | 2021.08.12 |