x

Search in
Sort by:

Question Status:

Search help

  • Simple searches use one or more words. Separate the words with spaces (cat dog) to search cat,dog or both. Separate the words with plus signs (cat +dog) to search for items that may contain cat but must contain dog.
  • You can further refine your search on the search results page, where you can search by keywords, author, topic. These can be combined with each other. Examples
    • cat dog --matches anything with cat,dog or both
    • cat +dog --searches for cat +dog where dog is a mandatory term
    • cat -dog -- searches for cat excluding any result containing dog
    • [cats] —will restrict your search to results with topic named "cats"
    • [cats] [dogs] —will restrict your search to results with both topics, "cats", and "dogs"

Office Holiday

Epic Games' offices will be on holiday from June 22nd to July 7th. During this period support will be limited. Our offices will reopen on Monday, July 8th. 

MVS 2013 error

When I am building UE4 in MVS 2013 as I have seen in your video explanations, I get 3 errors. https://www.dropbox.com/s/nxahdtqb5i53ae3/Screenshot%202014-05-26%2014.26.09.png

Product Version: Not Selected
Tags:
more ▼

asked May 26 '14 at 11:35 AM in Installation & Setup

avatar image

GryTapor
1 1 2

avatar image Jamie Dale STAFF May 26 '14 at 02:01 PM

Could I just confirm that you have installed the June 2010 DirectX runtime? (you may have already had it installed).

http://www.microsoft.com/en-gb/download/details.aspx?id=8109

avatar image GryTapor May 27 '14 at 05:04 AM

It does not help

avatar image Jamie Dale STAFF May 27 '14 at 07:44 PM

What happens if you run UE4\Engine\Binaries\Win64\UnrealHeaderTool.exe directly? Unfortunately VS can hide some error messages, and running it directly should show these.

avatar image GryTapor May 28 '14 at 10:37 AM

UnrealHeaderTool.exe It does not exist

avatar image Jamie Dale STAFF May 28 '14 at 10:56 AM

Ah, in the list of projects in your solution, you should see one for UnrealHeaderTool. Could you right click on that and select Rebuild and let me know what happens.

It's odd that that hasn't built itself though, how are you building? Just using Build Solution (pressing F6 or F7 depending on your key mappings)?

(comments are locked)
10|2000 characters needed characters left
Viewable by all users

1 answer: sort voted first

This seems to be the error generated when the UHT finds a cyclic dependency between headers (it causes UHT to crash). Have you made any changes to the source that would cause this?

This particular crash is fixed by https://github.com/EpicGames/UnrealEngine/commit/91c7acd3a8d6b5f30816472e60a66ede51e3ee55

more ▼

answered May 29 '14 at 09:24 AM

avatar image

Jamie Dale STAFF
7.5k 176 66 304

avatar image GryTapor May 30 '14 at 04:12 AM

so how i can fix it ?

avatar image Jamie Dale STAFF May 30 '14 at 10:14 PM

Assuming you've not made any changes to the source code that would cause this to happen, the only thing I can suggest at this point is to merge/cherry-pick the revision I linked to in my previous comment (91c7acd) into your local git checkout, and see if that fixes the crash.

If it doesn't, I'll forward this onto someone from the Core team.

avatar image GryTapor May 31 '14 at 08:39 AM

i don't know how to do that maybe you can help me with that

avatar image Jamie Dale STAFF May 31 '14 at 11:53 AM

It should be as simple as running git cherry-pick 91c7acd, (docs) but I tried it, and the layout of UHT has changed between 4.1 and master, so that change won't merge :(

The change to FClasses::IsDependentOn needs to be applied to FHeaderParser::IsDependentOn instead.

Open up Engine\Source\Programs\UnrealHeaderTool\Private\HeaderParser.cpp and find the function FHeaderParser::IsDependentOn

Replace the following:

 UClass* Dependency = FindClass(*It->ToString());
 
 if( !Dependency )
 {
     // Error.
     continue;
 }

With this:

 auto DependentName = It->ToString();
 UClass* Dependency = FindClass(*DependentName);
 
 if( !Dependency )
 {
     // Check if DependentName is a header file. If so, rerun the check on name without ".h" extension.
     if (DependentName.EndsWith(TEXT(".h")))
     {
         DependentName.RemoveFromEnd(TEXT(".h"));
         Dependency = FindClass(*DependentName);
     }
 
     // If still no class found, we're out of luck.
     if (!Dependency)
     {
         // Error.
         continue;
     }
 }

I'll make sure this fix is merged to 4.2, and I'll also see about getting the fix above merged into 4.1.

(comments are locked)
10|2000 characters needed characters left
Viewable by all users
Your answer
toggle preview:

Up to 5 attachments (including images) can be used with a maximum of 5.2 MB each and 5.2 MB total.

Follow this question

Once you sign in you will be able to subscribe for any updates here

Answers to this question