Gyp precompiled headers for xcode - precompiled-headers

How do you specify precompiled headers for xcode with gyp, specifically xcode 4.6 with clang.
I only see visual studio options.
'msvs_precompiled_header': 'stdio.h',
'msvs_precompiled_source': 'precomp.c',

Gyp is pretty nice but the documentation is awful.
The answer in case anyone runs across the need for it is:
'xcode_settings': {
'GCC_PREFIX_HEADER': 'path/from/gyp/file/to/header.h',
'GCC_PRECOMPILE_PREFIX_HEADER': 'YES',
},
Also worth noting you can set pretty much everything in this page in a xcode_settings block
Xcode Build Settings Reference

Related

What does the "reflecting any global.json" message mean in dotnet info output?

This is what I see when I do a dotnet --info on my Windows 10 system:
It says:
.NET Core SDK (reflecting any global.json)
I honestly don't understand what "reflecting any global.json" would mean. Before posting this question, I did several searches and could not find any explanation.
When one runs the dotnet command, and multiple SDK version are installed on the system, the exact version used can be set in a global.json.
So I believe it means that the version printed in console is what may come from global.json, if there is such a file.
You can try this by creating global.json in the current directory via dotnet new globaljson --sdk-version 2.1.600 (referring to versions available on your machine). When you use dotnet --info (or any other dotnet <verb> command), the CLI in version 2.1.600 will be used.
global.json file is searched for in the current directory and upwards the hierarchy, so I think it's just saying "watch out, the version you see may be different than you expected because of this global.json somewhere".
To confirm it's nothing extra you can even take a look at .NET Core CLI sources - here and here. There are no special conditions why "reflecting any global.json" is printed.

VS Code, OmniSharp: Project has these unresolved references:

I'm trying out Asp.Net Core and MVC 6 running on Mac OS X. After I've updated and installed everything it seems to be working pretty good. I can run a website with 'dnx web' that's been generated by Yeoman.
OmniSharp starts correctly but displays this message,
[INFORMATION:OmniSharp.Dnx.DnxProjectSystem] Project /Users/myname/AspNetCoreProjects/test1/project.json has these unresolved references: Microsoft.AspNet.Diagnostics, Microsoft.AspNet.IISPlatformHandler, Microsoft.AspNet.Mvc, Microsoft.AspNet.Mvc.TagHelpers, Microsoft.AspNet.Server.Kestrel, Microsoft.AspNet.StaticFiles, Microsoft.AspNet.Tooling.Razor, Microsoft.Extensions.Configuration.FileProviderExtensions, Microsoft.Extensions.Configuration.Json, Microsoft.Extensions.Logging, Microsoft.Extensions.Logging.Console, Microsoft.Extensions.Logging.Debug
I've tried to run 'dnu restore' several times. And it seems to succeed. It writes a lock file and so on. But for some reason OmniSharp / VS Code doesn't seem to find any references (except my own classes) at all.
It feels like I'm having the same problem described here,
http://tech.genericwhite.com/visual-studio-2015-net-5-rc1-dnu-restore-asp-dot-net-missing
But that didn't work for me.
Any idea is very helpful!
To start, install the runtime:
//to install coreclr
dnvm install latest -r coreclr -a coreclr-latest
//to install the clr
dnvm install latest -a mono-latest
dnvm alias default [coreclr-latest | mono-latest] //depends on what you installed
dnvm use default
Let me know the output of ls -l ~/.dnx/runtimes/dnx-{your_coreclr_version}/bin | grep dn once you've ran those commands.
This is what your runtimes folder should look like:
I'm also writing a 5 five part tutorial on how to use ASP.NET Core along with with JSPM, TypeScript, etc as the frontend. If you don't care much for that you can take a look at the backend part (part 3) here:
http://ahoycoders.com/2016/03/29/jspm-with-systemjs-es6-angularjs-typescript-and-asp-net-core-part-3-backend/
This part focuses on installing and running ASP.NET Core on MacOS.
Let me know how it goes :)
EDIT: One thing I forgot to mention, before running dnu restore again remove "dnx451": {}, from your project.json
EDIT2: Make sure you install the coreclr option. From your post it seems you want to use ASP.NET Core

Qt 4.8.3 installation on Windows 7 & QtWebkit problems

I just updated my Qt to 4.8.3, because the program built from older version is not compatible to the new framework.
So I have to upgrade.
This process was frustrating and time consuming. So many problems came out.
I download Qt from this url:
http://qt-project.org/downloads
At beginning, I installed the MinGW one (I'm not a fan of MSVC).
I tried the newest ( I think it's 4.6) version of MinGW and order version (4.4).
However, after I installed MinGW and tried to install Qt 4.8.3, during the process, the following message shows up:
There is a problem with your MinGW installation:
The installer could not find a valid C:\MinGW\include\w32api.h (Only versions with W32API 3.13 are supported)
Do you still want to continue? (Your installation may not work)
The 4.6 version does have this w32api.h file, I don't know what's going on. And I have trouble finding MinGW 4.4 with this head file.
I decide to ignore this warning and continue to install Qt and Qt creator. After that,
I opened my current project, configure it (why the configuration become so complex...), I tried to build it.
Then the following message shows up because some external lib I used requires Exception Handling:
exception handling disabled, use -fexceptions to enable
And I don't know how to enable the it.
I tried to add -fexceptions flag in QMAKE_CXXFLAGS but it doesn't work.
By the way, I tried the VC version of Qt too, but I used the MinGW before and the VC compiler is quite different, if I use VC version, it will take a lot of time to make it compilable by VC compiler.
Does anyone know how to install Qt 4.8.3 on Windows? my project works fine before, now I just want to compile it successfully.......
These are not the only problem.
I updated the Qt on Mac machine too, it is easier to have the compiler work since it's unix base.
However, I used QtWebkit lib in my project and obviously, they changed this lib and it's not compatible to order version.
I can compile my project on Mac, however, every time I run it, following massage shows up and the program stopped.
dyld: Symbol not found: _OBJC_CLASS_$_CALayerHost Referenced from:
/Library/Frameworks/QtWebKit.framework/Versions/4/QtWebKit Expected
in:
/System/Library/Frameworks/QuartzCore.framework/Versions/A/QuartzCore
The program has unexpectedly finished.
Does any one know how to solve this QtWebKit problem? I'll really appreciate.
I remembered that when Qt is under nokia, it's so easy to install and use, the Qt SDK is perfect.
I really hate the change made after it was bought by digia.........
I found solutions of my first two problems:
for the first problem, as I described, download the MinGW provided by Nokia Qt
ftp.qt.nokia.com/misc/MinGW-gcc440_1.zip [ftp.qt.nokia.com]
Tried several versions of MinGW 4.4, I think this is the only one works.
About the second problem, add following configure in the project file:
CONFIG += exceptions
Now the QWebKit problem is only one unsolved.
Is it all relevant that your include directory for MinGW has two "i's" in it or was that a typographic error when posted on SO? See:
The installer could not find a valid C:\MinGW\iinclude\w32api.h

How to run and use Xcode 3 and Xcode 4 under OS X 10.7 Lion?

I am looking for a full guide on how to trick Xcode3 to run under Lion.
I am aware that Apple does not support this, but this doesn't meant it's impossible, it's just not supported.
This is how I upgraded my dev environment to Lion. I am only doing it this way because I'm in a crunch and have some issues with Xcode 4.
I'm just sharing what I did and the issues I encountered, not recommending anything:
I made sure I could build & launch my Apps in 10.6.8 using Xcode 3.2.x.
I upgraded my development machine to Lion 10.7.1.
I can build all my SW products with Xcode 3.2.x.
BUT, the debugger seems unhappy with some things... Though I can step and break, I can't evaluate some expressions. For example, the twist pane won't display contents of complex structures.
I'm wondering if others have debugger issues with the 3.2.x Xcode (GDB) on Lion?
Thanks,
Rick
First you have to obtain the Xcode 3.2.6 install to work. The installer is not going to work on Lion so you have two alternatives:
Run it from another partition where you have 10.6
Path the installer in order to make it run on Lion by following this guide
Also here are some other things you may have to clean inside the xcode projects:
Remove lines like ARCHS = arm7 because it will fail to build for Simulator. Best is to let Xcode use defaults (all supported archs).
Check for SDKROOT = ..., it should be only iphoneos, macosx or undefined (not ""). Keep in mind that the SDK you are building against is not necessary the minimum required SDK for running the application. It's ok if SDKROOT is missing from Xcode project files but it's not ok if it does contain a path or "".
Remove any GCC_VERSION = ...

Xcode 4 (final version) error when building

I can't seem to find the answer.
I've just used Xcode 4 final version and built an existing project that was built ok with Xcode 3, but got this error:
ld: library not found for -lSystem.B
collect2: ld returned 1 exit status
Command /Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin/gcc-4.2 failed with exit code 1
But another project was built OK with Xcode 4.
I installed Xcode 4 by choosing the default options.
Do I miss to include a library or framework somewhere?
Could somebody please help. Thank you.
Here's my solution for Xcode 4.0.2 with SDK 4.3 environment, but I believe it should also work on other setups.
libSystem.B.dylib is not present
under
/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator4.3.sdk/usr/lib,
however it is present for lower SDK
versions (e.g. iPhoneOS4.2.sdk)
most of the cases
libSystem.B.dylib is just a
symbolic link to libSystem.dylib
so in
iPhoneSimulator4.3.sdk/usr/lib
I've applied following command sudo
ln -s libSystem.dylib
libSystem.B.dylib and my simulator
builds started to work again :)
NOTE: libSystem.B.dylib is used by Flurry and Urban Airship so you better don't delete the reference in project file (of course Urban Airship does not work under Simulator, but I think Flurry does. libSystem.B.dylib may also be required by other libraries you included to your project.
UPDATE: solution still works for iOS5 Simulator after upgrading to Xcode 4.3
UPDATE, March 9th, 2k12: for Xcode installations via App Store, prefix above path with /Applications/Xcode.app/Contents or the path where you've installed Xcode.app.
Solved.
Turns out that there was a reference to libSystemB in my project (Don't know why it's there). After deleting the reference, it built well.
Thanks anyway guys!
-weak_library /usr/lib/libSystem.B.dylib breaks the iOS Simulator.
Use -weak-lSystem instead.
The quote belongs to gparker on the official dev forums.
-weak_library /usr/lib/libSystem.B.dylib breaks the iOS Simulator. Use -weak-lSystem instead.
nicktmro got it right, especially when you are developing cocos2d projects using xcode 4.x
I have the same problem since months and always kept making the symbolic link as described here everytime i updated xCode. Today I found a nice new way to fix this:
In your targets Build Phases go to 'Link Binary With Libraries' and search for:
libz.dylib
Set from 'Required' to 'Optional'
BUILD
BE HAPPY

Resources