Sign in to follow this  
Followers 0
Odaxis

Unsure how to compile the latest builds since the recent change.

13 posts in this topic

Don't suppose anyone can give me the directions for compiling PKHeX in Visual Studio with the latest builds?

Instead of compiling into a .exe, a .dll is now created.

Share this post


Link to post
Share on other sites

Just download the latest compiled from: http://teamcity.skyeditor.org/viewLog.html?buildId=5674&buildTypeId=PKHeX_PKHeXBuildPr&tab=artifacts

If you want to do it yourself, note that PKHeX's logic (PKHeX.Core) is now separate from the UI (PKHeX.WinForms). Compiling PKHeX.Core gives a .dll which is referenced by PKHeX.WinForms. Build PKHeX.WinForms to get the .exe (by default builds to \PKHeX\PKHeX.WinForms\bin\<Debug/Release>\PKHeX.exe).

1 person likes this

Share this post


Link to post
Share on other sites
5 hours ago, ReignOfComputer said:

Just download the latest compiled from: http://teamcity.skyeditor.org/viewLog.html?buildId=5674&buildTypeId=PKHeX_PKHeXBuildPr&tab=artifacts

If you want to do it yourself, note that PKHeX's logic (PKHeX.Core) is now separate from the UI (PKHeX.WinForms). Compiling PKHeX.Core gives a .dll which is referenced by PKHeX.WinForms. Build PKHeX.WinForms to get the .exe (by default builds to \PKHeX\PKHeX.WinForms\bin\<Debug/Release>\PKHeX.exe).

Hi. Thanks for the reply.

Just so I know I'm doing this correct.

I compile the .exe by building off of the WinForms branch. The .exe that is generated is 1.12MB in file size, which is 1/6 th the previous .exe file size and I'm required to keep that smaller exe in a folder with the other files "PKHeX.pdb, PKHeX.Core.dll, PKHeX.Core.pdb" in order to launch the app?

Share this post


Link to post
Share on other sites
57 minutes ago, Odaxis said:

Hi. Thanks for the reply.

Just so I know I'm doing this correct.

I compile the .exe by building off of the WinForms branch. The .exe that is generated is 1.12MB in file size, which is 1/6 th the previous .exe file size and I'm required to keep that smaller exe in a folder with the other files "PKHeX.pdb, PKHeX.Core.dll, PKHeX.Core.pdb" in order to launch the app?

Bare-minimum, you need PKHeX.exe and PKHeX.Core.dll.  The combined file size of the two files should be similar to the previous file size.  The PDB files provide extra debug info for us if there's any unhandled exceptions (like line numbers and code files).

Share this post


Link to post
Share on other sites
1 minute ago, evandixon said:

Bare-minimum, you need PKHeX.exe and PKHeX.Core.dll.  The combined file size of the two files should be similar to the previous file size.  The PDB files provide extra debug info for us if there's any unhandled exceptions (like line numbers and code files).

Ahh, i see. Just wondering, why was this path (multiple files instead of 1) chosen?

Share this post


Link to post
Share on other sites
45 minutes ago, Odaxis said:

Ahh, i see. Just wondering, why was this path (multiple files instead of 1) chosen?

It makes the core code more reusable.  It's possible, but unusual, to directly reference PKHeX.exe from other .Net apps to make things like my (very outdated) Pokemon database, where PKHeX does most of the work.  Using a code library increases the possibilities.

Share this post


Link to post
Share on other sites
4 hours ago, evandixon said:

It makes the core code more reusable.  It's possible, but unusual, to directly reference PKHeX.exe from other .Net apps to make things like my (very outdated) Pokemon database, where PKHeX does most of the work.  Using a code library increases the possibilities.

I see. Makes sense. Is there no way going forward, for users like myself who liked the single executable file, to build it into a single .exe file?

Share this post


Link to post
Share on other sites
9 minutes ago, Odaxis said:

I see. Makes sense. Is there no way going forward, for users like myself who liked the single executable file, to build it into a single .exe file?

When new binaries are posted they'll be just the .exe; ILMerge is your friend :)

1 person likes this

Share this post


Link to post
Share on other sites
42 minutes ago, Kaphotics said:

ILMerge is your friend :)

Is it friendly enough to allow a scrub like myself to use it?

Share this post


Link to post
Share on other sites
3 hours ago, Odaxis said:

Is it friendly enough to allow a scrub like myself to use it?

You can always use ILMerge-GUI if command line isn't fun!

Share this post


Link to post
Share on other sites
39 minutes ago, Kaphotics said:

You can always use ILMerge-GUI if command line isn't fun!

Thanks for that, I was actually just after downloading it before reading this message lol. So i just merge the Core dll and the .exe?

Share this post


Link to post
Share on other sites
Just now, Odaxis said:

Thanks for that, I was actually just after downloading it before reading this message lol. So i just merge the Core dll and the .exe?

Yes.

Share this post


Link to post
Share on other sites
5 minutes ago, Kaphotics said:

Yes.

Perfect. thanks so much.

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!


Register a new account

Sign in

Already have an account? Sign in here.


Sign In Now
Sign in to follow this  
Followers 0