microsoft / WinObjC

Objective-C for Windows
MIT License
6.25k stars 808 forks source link

Need some updated instructions re installation in newer VS versions (2019 and up) #2957

Open bamwu opened 1 year ago

bamwu commented 1 year ago

Not able to get winobjc-tools to install in my VS2019 dev environment (on WIN10).

I've got the "Mobile Development With .NET" workload installed (i already had it installed, but it's specifically mentioned as workaraound in the WinObjC readme).

I'm running powershell as admin and issuing the following command:

choco upgrade winobjc-tools

bamwu commented 1 year ago

I should add that it's failing at the point where it tries to install "objc-language-services-VS2017.vsix", so I copied the folder to the desktop and tried installing it in the gui. the failure is:

... 2/25/2023 11:58:54 PM - Found installed product - Visual Studio Community 2019 2/25/2023 11:58:54 PM - VSIXInstaller.NoApplicableSKUsException: This extension is not installable on any currently installed products. at VSIXInstaller.ExtensionService.GetInstallableDataImpl(IInstallableExtension extension, String extensionPackParentName, Boolean isRepairSupported, IStateData stateData, IEnumerable1& skuData) at VSIXInstaller.ExtensionService.GetInstallableData(String vsixPath, String extensionPackParentName, Boolean isRepairSupported, IStateData stateData, IEnumerable1& skuData) at VSIXInstaller.ExtensionPackService.IsExtensionPack(IStateData stateData, Boolean isRepairSupported) at VSIXInstaller.ExtensionPackService.ExpandExtensionPackToInstall(IStateData stateData, Boolean isRepairSupported) at VSIXInstaller.App.Initialize(Boolean isRepairSupported) ...

I guess it's 2017 only, rather than 2017 and up.

Ideas?

triplef commented 1 year ago

It doesn’t seem like WinObjC is maintained any longer by Microsoft, which is why I wouldn’t recommend using it. I haven’t tried newer VS versions with it, and it’s likely something will not work correctly with them.

If you’re looking for an alternative you can take a look at GNUstep: https://github.com/gnustep/tools-windows-msvc

This is using the same Objective-C runtime and compiler support as WinObjC and supports Foundation, CoreFoundation, and libdispatch. It does not include UIKit or some of the other Apple frameworks included in WinObjC, but you can use a native Windows UI or a cross-platform UI framework like Qt with it. Hope that helps!

bamwu commented 1 year ago

What steps did the djay pro team take in order to adjust to this change?

triplef commented 1 year ago

We’re migrating to the GNUstep toolchain (which btw. doesn’t use MinGW – it produces native Windows binaries like WinObjC).