Version 2.2 SDK Error: 'ArcGIS/ArcGIS.h' file not found

4728
15
Jump to solution
04-04-2012 01:50 PM
DavidMarley
Occasional Contributor II
I am in the process of upgrading to the newest SDK version 2.2. I uninstalled version 2.1 and installed version 2.2. I have followed the directions for migrating an existing application here to upgrade the references etc. for an existing project, and have also tried to get the new v2.2 MapViewDemo to run. In both cases Xcode cannot find the new ArcGIS.h file - I get a compile error:

'ArcGIS/ArcGIS.h' file not found

I've double checked the steps against these instructions as well. Also I am able to see the new /Library/SDKs/ArcGIS folder via Finder, though I do not see an ArcGIS.h file anywhere under there (not sure if I am suppose to or not).

One small discrepancy I noticed between the online help doc and the settings in the MapViewDemo project is that the Framework Search Path is slightly different:

Sample: $HOME/Library/SDKs
Online Help: ${HOME}/Library/SDKs/ArcGIS

In any case, neither seem to work.

Could this be a permission issue or something? Should ArcGIS.h be visible in Finder somewhere under /Library/SDKs/ArcGIS?

Thoughts?

Thanks...
0 Kudos
1 Solution

Accepted Solutions
NimeshJarecha
Esri Regular Contributor
User is an administrator is not the reason of this. Let's diagnose the issue. Please follow below steps and send the information.

1. Open Terminal and type command, 'echo $HOME' (without quotes). Send the output.
2. Open /Application/Utilities/Console >> Click 'Clear Display'.
3. Now install the SDK, you'll see the install logs in the Console display.
4. Send us the log information.
5. Since, the SDK is getting installed at /Library, you'll see a AGSiOSSDK folder under /Library/Application Support. Please give manifest file from that folder.

Regards,
Nimesh

View solution in original post

0 Kudos
15 Replies
NimeshJarecha
Esri Regular Contributor
Okay..let's make MapViewDemo up and running first and then we'll look into your project.

1. Did install of v2.2 successfully completed?
2. Do you see ArcGIS.framework and Samples folder under ${HOME}/Library/SDKs/ArcGIS?
3. You mentioned that the Framework Search Paths in build settings of MapViewDemo is $HOME/Library/SDKs. It must be either ${HOME}/Library/SDKs/** or ${HOME}/Library/SDKs/ArcGIS.
4. Do you see 'Other Linker Flags' set to -ObjC -all_load -framework ArcGIS -lstdc++?

Regards,
Nimesh
NimeshJarecha
Esri Regular Contributor
David,

Any update on this?

Regards,
Nimesh
0 Kudos
DavidMarley
Occasional Contributor II
Nimesh,

Thanks for the tips.  Still having issue.  I think the issue is with the aliases/files under ${HOME}/Library/SDKs/ArcGIS.  See my answer to your question #2 below:

1. Did install of v2.2 successfully completed?
>> Answer: Yes. I had v2.1 installed previously.  I did not uninstall 2.1 beforehand, but I did uninstall it later.  Perhaps that is related to my issue...

2. Do you see ArcGIS.framework and Samples folder under ${HOME}/Library/SDKs/ArcGIS?
>> Answer: See attached screenshot (first one below).  I see ArcGIS.framework there but not samples.  Under ArcGIS.framework there are 3 aliases but they are all "broken" - double-clicking on one gives error "The operation can't be completed because the original item for 'ArcGIS' can't be found."

I do see ArcGIS.framework and Samples directly under /Library/SDKs/ArcGIS. 

Note: I am still somewhat new to macs, and am not totally clear on the relationship between these folders (i.e., /Library vs.  ${HOME}/Library)

3. You mentioned that the Framework Search Paths in build settings of MapViewDemo is $HOME/Library/SDKs. It must be either ${HOME}/Library/SDKs/** or ${HOME}/Library/SDKs/ArcGIS.
>> Answer: See attached screenshot (second one below) - another mac/Xcode detail I am a little unclear on.  The value /Users/myuserid/Library/SDKs/** is what displays on the Build Settings page, but if you double-click to edit it shows value $HOME/Library/SDKs.  I assume this is OK/correct - just slightly confusing why it shows two different ways.

4. Do you see 'Other Linker Flags' set to -ObjC -all_load -framework ArcGIS -lstdc++?
>> Answer: Yes these are all set.

EDIT: Additionally, If I run the uninstall located under '/Library/Application Support/AGSiOSSDK ', the log file it generates says there is nothing to uninstall, and all of the files/folders noted above are still there:

Nothing to uninstall
Uninstall completed successfully


Thanks,

Dave

[ATTACH=CONFIG]13342[/ATTACH]

[ATTACH=CONFIG]13343[/ATTACH]
0 Kudos
NimeshJarecha
Esri Regular Contributor
Thanks for the details.

See attached screenshot (first one below). I see ArcGIS.framework there but not samples. Under ArcGIS.framework there are 3 aliases but they are all "broken" - double-clicking on one gives error "The operation can't be completed because the original item for 'ArcGIS' can't be found."


This is incomplete content and items missing in there...either it did not install completely or uninstalled completely. Just go to /Users/myuserid/Library/Application Support and remove AGSiOSSDK folder. Also, go to /Users/myuserid/Library and remove SDKs folder. Now, reinstall the SDK package.

Note: I am still somewhat new to macs, and am not totally clear on the relationship between these folders (i.e., /Library vs. ${HOME}/Library)


/Library - Library folder available at your hard drive.
${HOME}/Library - This is same as /Users/myuserid/Library. ${HOME} = /Users/myuserid.

Hope this is clear to you now.

See attached screenshot (second one below) - another mac/Xcode detail I am a little unclear on. The value /Users/myuserid/Library/SDKs/** is what displays on the Build Settings page, but if you double-click to edit it shows value $HOME/Library/SDKs. I assume this is OK/correct - just slightly confusing why it shows two different ways.


Yes, that's correct.  ${HOME} = /Users/myuserid.

We've released v2.2.1 with just one fix for the reason below...Please download, install and let me know if you still have any problem.

v2.2.1
This update contains a minor fix to the SDK installation package. The installer was unnecessarily laying down files related to legacy XCode Project Templates. These templates were deprecated and removed back at v2.1. In majority of the cases, the template files did not cause any harm. However, in exceptional cases, users were not able to install v2.2 due to permission issues related to where the files were being written. The v2.2.1 installer does not lay down these files.


Regards,
Nimesh
0 Kudos
DavidMarley
Occasional Contributor II
Thanks for the prompt reply. 

What about the SDKS folder under /Library?  Should I remove that too, before reinstalling?

/Library/SDKs/ArcGIS
subfolders: ArcGIS.framework and Samples

And in a correct installation, where should the Esri SDK reside: under /Library or ${HOME}/Library?

Regards,

Dave
0 Kudos
NimeshJarecha
Esri Regular Contributor
The SDK should reside under ${HOME}/Library. If you have andy ArcGIS content under /Library then delete them.

Regards,
Nimesh
0 Kudos
DavidMarley
Occasional Contributor II
I deleted all of those folders, downloaded the new installer (2.2.1) and reinstalled the SDK....and got the same result.  The SDK is installing under /Library instead of ${HOME}/Library.

My user is an administrator (i.e., "Allow user to administer this computer" is checked) on this system.  Could that be it? If there is something else that I am doing wrong during the installation, I can't figure what it would be.

See attached screen shot showing the installed SDK under /Library.

Thanks,

Dave

[ATTACH=CONFIG]13349[/ATTACH]
0 Kudos
NimeshJarecha
Esri Regular Contributor
User is an administrator is not the reason of this. Let's diagnose the issue. Please follow below steps and send the information.

1. Open Terminal and type command, 'echo $HOME' (without quotes). Send the output.
2. Open /Application/Utilities/Console >> Click 'Clear Display'.
3. Now install the SDK, you'll see the install logs in the Console display.
4. Send us the log information.
5. Since, the SDK is getting installed at /Library, you'll see a AGSiOSSDK folder under /Library/Application Support. Please give manifest file from that folder.

Regards,
Nimesh
0 Kudos
DavidMarley
Occasional Contributor II
Well I was finally able to get the new SDK installed, though if I mention what the issue was no one is going to believe me (LOL)!  I followed the steps above to capture the messages output by the installer using the Console.  I also did the same last night on my mac at home (where it installed fine) and compared the results.  On the system with the install issue, the console output included the following suspicious messages:

4/10/12 7:20:49.704 AM authorizationhost SFBuiltinEntitled: Installer.app is not entitled for system.install.apple-software
4/10/12 7:20:49.732 AM authorizationhost SFBuiltinEntitled: Installer.app is not entitled for system.install.app-store-software
4/10/12 7:20:49.757 AM authorizationhost SFBuiltinEntitled: Installer.app is not entitled for system.install.app-store-software
4/10/12 7:20:49.758 AM com.apple.SecurityServer Failed to authorize right 'system.install.app-store-software' by client '/System/Library/PrivateFrameworks/PackageKit.framework/Versions/A/Resources/installd' [281] for authorization created by '/System/Library/CoreServices/Installer.app' [270]

I did a little Googling for the error 'Installer.app is not entitled for system.install.apple-software' and saw others having similar issues on OS X 10.7.3 for other software installs.  One person having this issue noted having to remove a prior version AND EMPTY THEIR TRASH.  Seemed like a long shot to me, but I tried it and it worked!

I had tried this probably 5 times (if not more) yesterday, and once this morning, by manually deleting the SDKs folder (and AGSiOSSDK under Application Support), but never emptying my trash - always with the same result.  Then I tried it with also emptying the trash, and the install worked straight away. Go figure....sounds crazy but it is true.

One thing to note is that during the successful install the installer presented an extra window "How do you want to install this software? - Install for me only" that was not present in the unsuccessful
installs.  See this screenshot:

[ATTACH=CONFIG]13378[/ATTACH]

In any case I am up and running now.  Thanks for all the detailed assistance Nimesh. 

One quick point and one last (somewhat related) question:
1. The Esri Help/documentation does not say whether prior versions of the SDK should be uninstalled before installing a new version or not.  It'd be helpful if the documentation clarified this point.

2. The Online documentation topic "Configuring an Xcode Project" says to add the following compiler linker flags: "-ObjC -all_load -framework ArcGIS".  But the samples also include the additional flag "-lstdc++". Is the latter required?  Small detail I know, but the documentation and samples are not consistent here.

Thanks again,

Dave
0 Kudos