winsparkle icon indicating copy to clipboard operation
winsparkle copied to clipboard

Not able to build Winsparkle code

Open kguduri opened this issue 7 years ago • 8 comments

translations\translations.rc(1): error RC2135: file not found: ar.mo

all the translations file are not available adding the screen shot for the same, Followed the same steps that are mentioned in "Building from Sources"

image

Please help me on this as soon as possible.

Or is there any other way where i can remove/hide the "Skip this version".

kguduri avatar Jun 07 '17 10:06 kguduri

as soon as possible.

I didn't realize you were paying for support, so maybe tone it down a notch...

If you want fast help, you should start with actually describing what you did in meaningful detail, such as at least mentioning basics like the exact compiler version used or providing full (verbose!) compilation log.

The little that is visible in the censored screenshot indicates that the normal build process was not run, because the targets from WinSparkle.Targets were not executed. I don't see how that's possible unless you modified something.

Enable build logging, investigate.

vslavik avatar Jun 07 '17 10:06 vslavik

I have done the following to get the latest code $ git clone git://github.com/vslavik/winsparkle.git $ cd winsparkle $ git submodule init $ git submodule update

Opened WinSparkle.sln in visual stuido 2015 and tried building the solution but the build fail with the following messages translations\translations.rc(1): error RC2135: file not found: ar.mo 3> 3> 3>translations\translations.rc(2): error RC2135: file not found: be.mo 3> 3> 3>translations\translations.rc(3): error RC2135: file not found: bg.mo 3> 3> 3>translations\translations.rc(4): error RC2135: file not found: bs.mo 3> 3> 3>translations\translations.rc(5): error RC2135: file not found: ca_ES.mo 3> 3> 3>translations\translations.rc(6): error RC2135: file not found: co.mo 3> 3> 3>translations\translations.rc(7): error RC2135: file not found: cs.mo 3> 3> 3>translations\translations.rc(8): error RC2135: file not found: da.mo 3> 3> 3>translations\translations.rc(9): error RC2135: file not found: de.mo 3> 3> 3>translations\translations.rc(10): error RC2135: file not found: el.mo 3> 3> 3>translations\translations.rc(11): error RC2135: file not found: es.mo 3> 3> 3>translations\translations.rc(12): error RC2135: file not found: eu.mo 3> 3> 3>translations\translations.rc(13): error RC2135: file not found: fr.mo 3> 3> 3>translations\translations.rc(14): error RC2135: file not found: fy_NL.mo 3> 3> 3>translations\translations.rc(15): error RC2135: file not found: ga.mo 3> 3> 3>translations\translations.rc(16): error RC2135: file not found: he.mo 3> 3> 3>translations\translations.rc(17): error RC2135: file not found: hr.mo 3> 3> 3>translations\translations.rc(18): error RC2135: file not found: hu.mo 3> 3> 3>translations\translations.rc(19): error RC2135: file not found: hy.mo 3> 3> 3>translations\translations.rc(20): error RC2135: file not found: id.mo 3> 3> 3>translations\translations.rc(21): error RC2135: file not found: it.mo 3> 3> 3>translations\translations.rc(22): error RC2135: file not found: ja.mo 3> 3> 3>translations\translations.rc(23): error RC2135: file not found: kk.mo 3> 3> 3>translations\translations.rc(24): error RC2135: file not found: ko.mo 3> 3> 3>translations\translations.rc(25): error RC2135: file not found: nb.mo 3> 3> 3>translations\translations.rc(26): error RC2135: file not found: nl.mo

kguduri avatar Jun 08 '17 10:06 kguduri

Once again: something is broken with your VS. Enable VERBOSE logging. INVESTIGATE. I have neither access to your machine nor a crystal ball, I can't miraculously know what is broken on your computer. You can. Look into it. Debug it. You're a developer, that's what developers do.

vslavik avatar Jun 08 '17 13:06 vslavik

You probably do not have nuget installed.

@vslavik, you should probably explain somewhere that Nuget.CommandLine is required in order to install the GetText.Tools packages from packages.xml.

johnwbyrd avatar Oct 23 '17 05:10 johnwbyrd

@vslavik, you should probably explain somewhere that Nuget.CommandLine is required in order to install the GetText.Tools packages from packages.xml.

Except that NuGet is bundled with Visual Studio since 2012.

vslavik avatar Oct 23 '17 11:10 vslavik

@vslavik This issue also happens when WinSparkle refreshed by latest bakefile, for example the newly generated "WinSparkle-2015.vcxproj" and "WinSparkle-2015.vcxproj.filters" files have no more next line:

<Import Project="WinSparkle.targets" />

i.e. "WinSparkle.Targets" has not been included in the bakefile build of "WinSparkle.bkl" and so .mo-files are not produced from .po-files by GetText.Tools.

raspopov avatar Aug 06 '18 18:08 raspopov

Importing Winsparkle.targets is also missing from WinSparkle-2012.vcxproj. It's easily solvable by adding <Import Project="WinSparkle.targets" /> to the import group, but the Bakefile warning at the top suggest it's not the right solution.

Building in VS2012 also has a few other issues:

  • in signatureverifier.cpp, the member pointers bio and *dsa are explicitly initialized to NULL. This is a C++11? feature, but the pointers are initialized in their respective class ctors anyway, so setting them to NULL is redundant.
  • error LNK2001: unresolved external symbol __imp__SHAAutoComplete@8 EDIT: This can be fixed by adding shlwapi.lib to Additional Dependencies in the Librarian section of WinSparkle_wx. The dependency isn't referenced in any of the other vcxproj files either, so is this a problem for all the VS projects?

Making the mentioned changes makes the project build successfully.

I am wondering which VS version is normally supported by the project, because clearly not all of them are verified to be buildable, If we can't maintain support for all of them, maybe we should remove those that aren't supported? (or move them to unmaintained branches so people at least have the option to build older versions with older VS).

matthiesenj avatar Apr 25 '19 15:04 matthiesenj

but the Bakefile warning at the top suggest it's not the right solution.

That can be ignored; other project files were manually modified too. My plan is to merge them all into a single version-agnostic project and drop pre-2010 support.

EDIT: This can be fixed by adding shlwapi.lib to Additional Dependencies in the Librarian section of WinSparkle_wx. The dependency isn't referenced in any of the other vcxproj files either, so is this a problem for all the VS projects?

It seems to be in '15 and '17 ones, so yes, that's the fix. Generally speaking, diffing vcxproj files between latest and whatever doesn't work should reveal the cause. But see above, I mean to fix this mess.

I am wondering which VS version is normally supported by the project,

Well, I use 2017 (soon '19) and it seems not many people use anything as old as 2012, seeing how long this problem was there.

vslavik avatar Apr 28 '19 15:04 vslavik