Jump to content

Ultra Engine wont compile


Slastraf
 Share

Go to solution Solved by Slastraf,

Recommended Posts

Hello
I have just got Ultra Engine and have not got it to compile yet.
I added missing ATL modules inside visual studio installer, made a new c++ project multiple times and set the optimization to disabled in the project settings.
Need help at fixing these errors. The Project is called StereoWindow and i have the exact same problem with another project.

image.thumb.png.e63380b72d56088a1e427466ca0b531b.png

Link to comment
Share on other sites

I tried this on new projects on both dev and stable multiple times
image.thumb.png.d9e9343cfe80577f08097a1c401bfd0b.png
T
his happens for me with a fresh project and the stable version.

Also there are a lot of warnings about PDB

Severity    Code    Description    Project    File    Line    Suppression State    Details
Warning    LNK4099    PDB 'UltraEngine_d.pdb' was not found with 'UltraEngine_d.lib(dMat4.obj)' or at  ... Ultra Engine\Projects\Testcpp\.vs\Debug\UltraEngine_d.pdb'; linking object as if no debug info    Testcpp     ... e\Projects\Testcpp\UltraEngine_d.lib(dMat4.obj)    1

For example


 

 

 

Link to comment
Share on other sites

Yes I have the latest VS 2022 version installed on my system, the vulcan API , the recommended redistributables. I can compi;le an unreal engine game for example so it is not completely broken. I can provide more information in private. I am updating gfx drivers at the moment but should not have an impact.
 

Link to comment
Share on other sites

I got some advice from my little helper phind

The error LNK2019 is a linker error that occurs when the linker can't find a symbol it needs. In your case, the symbol `__std_find_trivial_4` is not found. This symbol is a function in the C++ Standard Library that is used for finding a value in a range. The number '4' in the symbol name indicates the size of the type that the function is working with [Source 0](https://github.com/googleapis/google-cloud-cpp/discussions/11929).

This error can occur due to several reasons:

1. **Mismatched Compiler Versions**: If different parts of your project were compiled with different versions of the compiler, you may encounter this error. Make sure all parts of your project are compiled with the same version of the compiler [Source 2](https://github.com/actions/runner-images/issues/6091).

2. **Incorrect Library Linking**: If you're linking against a library that was compiled with a different version of the compiler, or if the library was compiled with a different runtime library setting, you may encounter this error. Make sure you're linking against the correct libraries and that they were compiled with the same settings as your project [Source 2](https://github.com/actions/runner-images/issues/6091).

3. **Missing Library**: If the library that contains the `__std_find_trivial_4` function is not being linked, you may encounter this error. Make sure that the library is being correctly linked in your project settings [Source 4](https://github.com/Exiv2/exiv2/issues/2429).

To resolve this issue, you can try the following steps:

1. **Rebuild the Project**: Try to clean and rebuild your project. This will ensure that all object files are recompiled and linked with the correct settings [Source 2](https://github.com/actions/runner-images/issues/6091).

2. **Check the Compiler Version**: Make sure all parts of your project are compiled with the same version of the compiler. You can check this in the project properties in Visual Studio [Source 2](https://github.com/actions/runner-images/issues/6091).

3. **Check the Library Linking**: Make sure you're linking against the correct libraries and that they were compiled with the same settings as your project. You can check this in the project properties in Visual Studio [Source 4](https://github.com/Exiv2/exiv2/issues/2429).

4. **Check the Runtime Library Setting**: Make sure that the runtime library setting for all parts of your project is the same. You can check this in the project properties in Visual Studio [Source 2](https://github.com/actions/runner-images/issues/6091).

If the error still persists after trying these steps, you may need to seek further assistance. It's possible that there's a bug in the compiler or in the library that you're linking against. In that case, you should report the issue to the maintainers of the library or the compiler.

 

Link to comment
Share on other sites

I run this on VS 17.8.3 on Win10 . I will repair my installation once again because all the updates were already installed and try this again in a bit. I will also reinstall Ultra Engine stable.
 

13 hours ago, Josh said:

It sounds like perhaps the Ultra lib files did not download correct.ly?

In the path you posted above, I see a folder called "14.38.33130".

The very first time i installed Ultra Engine the UltraEngine.h header was not detected or missing. Must be a dwonload issue because i reinstalled it and then it was included.

Link to comment
Share on other sites

  • Solution

It works now. <<<headache>>> There was another significant warning I overlooked.
LNK4098: defaultlib 'MSVCRT' conflicts with use of other libs

It was a misconfiguration of Visual Studio Installer.

This was because I had a different MSVC than 14.38, at the same time. Yours was up to date but for my machine the old one was used even when i had all the updates.
 

14 hours ago, Josh said:

In the path you posted above, I see a folder called "14.38.33130".

To fix this you need to go to visual studio installer again , search for individual components, search for "msvc" and make sure only boxes where it says (latest) are picked. Also make sure to go to C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC and delete old versions.

Also needed to reinstall the engine a bunch of times and set up new project because i had even more errors and warnings throughout this.

More information that helped  (ai generated)

Open your project in Visual Studio.

In the Solution Explorer pane on the right side of the screen, right-click on your project name and select "Properties" from the context menu. This will open the Properties window for your project.

In the Properties window, expand the "Configuration Properties" node and select "C/C++".

In the "C/C++" node, select "Code Generation".

In the "Code Generation" node, you will see an option called "Runtime Library". This option determines which version of the C runtime library your project uses.

Check the "Runtime Library" option to see which library your project is currently using. If you see multiple different options, this could be the cause of your issue.

To fix this, you should set all your projects to use the same runtime library. If you have multiple projects in your solution, you will need to repeat these steps for each project.

After setting the "Runtime Library" option for all your projects, try building your solution again. The warning should no longer appear.

 

  • Like 1
Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

 Share

×
×
  • Create New...