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"

Parasolid dynamic library with UE4

Hello,

we're trying to compile our UE4 project (shipping config) which also includes a plugin that wraps an external, dynamic library (Siemens' Parasolid compiled as /MD). We then copied manually the .DLL to the same folder as our .exe but the game crashes as soon as we try to launch it.

A user (gbrill) in the following thread suggested to compile the external library as static library ( https://answers.unrealengine.com/questions/408686/cant-package-and-coock-the-game-version-4112.html?sort=oldest ). Unfortunately Siemens does not allow its Parasolid library to be included as a static library which brings us back to square one.

Do you have any suggestions to help us out? Thanks!

Product Version: UE 4.19
Tags:
more ▼

asked Dec 14 '18 at 02:10 PM in C++ Programming

avatar image

mmischitelli
3 1 3

avatar image MickD777 Dec 14 '18 at 03:09 PM

What is the crash call stack? Also, I'm not sure why you would copy the dll by hand in the editor exe folder, if your dependencies are setup correctly, the dll should get dump in the corresponding plugin folder in Engine/Binaries.

avatar image mmischitelli Jan 09 '19 at 04:26 PM

I'm unable to generate the call stack as of now (shipping build, don't have the correct pdb right now.. I'll add them later as we create a new build).

What we're doing is this:

3rd party DLL copied inside "libraryPath" (e.g. "Plugins\TestPlugin\Binaries\ThirdParty\TestPluginLibrary\Win64")

DLL retrieved and loaded with FPlatformProcess::GetDllHandle(*libraryPath);

Deps defined inside the plugin's Build.cs as follows

 PublicAdditionalLibraries.Add(Path.Combine(ModuleDirectory, "ThirdPartyLibrary/x64/lib/ThirdPartyLib.lib"));
 
 PublicIncludePaths.Add(Path.Combine(ModuleDirectory, "ThirdPartyLibrary/x64/include"));
 
 PublicDelayLoadDLLs.Add("ThirdPartyLib.dll");
(comments are locked)
10|2000 characters needed characters left

0 answers: sort voted first
Be the first one to answer this question
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