0.10.0 Release candidate 3


#21

mmh are you using the OF functions to download from the web?


#22

I’m not trying to download anything from the app, its just as the project generator makes it.
setup(), update() and draw() are all empty.
I just made the app to see if it would build, I was expecting an additional library that I was missing from my own project


#23

ah ok so you get that error from an empty project just generated with the project generator?


#24

Thats right.
I just tried doing the same in of_v0.10.0RC1_vs2017_release and that builds OK


#25

I see that the linker inputs include “libssl.lib” “libcrypto.lib” “libcurl.lib”

Maybe this is relevant:


#26

yes i removed crypt32 from the project files thinking it wasn’t necesary anymore since we moved to a new openssl version but it’s probably still needed it’s weird though that this is not happening on the ci servers or even in my local machine. will create a new package later including that library again


#27

OK, thanks - I added it to Linker - Command Line - additional options and now I can build and run OK


#29

@drakko @rjx-ray can any of you try to comipile adding:

#pragma comment (lib, "crypt32"); 

in you rmain.cpp to see if that’s really the issue?


#30

had exactly the same issue and #pragma comment (lib, "crypt32"); solved it


#31

I removed crypt32.lib from my Linker - Command Line - additional options and verified I got the error again.

Then I added the line
#pragma comment (lib, “crypt32”)
to main.cpp and I no longer have the error


#32

perfect, will add that to the project settings in a moment. Thanks for testing!


#33

Sorry i deleted my message by mistake

In my case, PG works fine, and I got the same problems with openssl than @rjx-ray, im my case related to an addon (ofxLibwebsockets) taht assumes the openssl is included. I will try to solve it later changing the addon_config.mk (my first tests were unsuccessful)…

In QT linux was solved adding the system packages manually to the qbs, while I was doing he RC1 tests

Also the pragma directive didn’t work for me, I am still getting linking issues from the other openssl libraries.


#34

@arturo seems that my problem is now related to the new openssl version, the maintainers of libwebsocket had the same problem with appveyor, with the same errors. The say:

“The new pieces seem to use the newer “libcrypto” type naming not this ancient libeay thing specific to windows, then the OpenSSL pieces we bring in on top with the old naming confuses cmake’s FindOpenSSL.”

More details here: https://github.com/warmcat/libwebsockets/issues/970

I wonder if this changes form openssl 1.0.x to 1.1 will break more addons than just this one.


#35

I don’t think there’s many addons that depend on openssl but yes the ones that do will break. That said you just need to recompile the libwebsockets library with the new openssl and that should fix it


#36

I have tested rc3 with win, linux and mac. Mac and linux are ok, with windows, I have this error:

I’m using, as suggested in the doc, visual studio 2015

Severity Code Description Project File Line Suppression State
Error MSB8020 The build tools for v141 (Platform Toolset = ‘v141’) cannot be found. To build using the v141 build tools, please install v141 build tools. Alternatively, you may upgrade to the current Visual Studio tools by selecting the Project menu or right-click the solution, and then selecting “Retarget solution”. openframeworksLib C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\V140\Microsoft.Cpp.Platform.targets 57


#37

Any Idea? on Properties -> Platform Toolset there is “v141(non installed)”. This is really similar to the problem I was having on testing an addon on the CI server (Failing OF build for windows ans visual studio) . @Jordi do you have any suggestion?


#38

Hey @edapx, for the new release candidate it’s supposed to support only Vs 2017, and here @rjx-ray already has discussed that PG only shows VS 2015 when you could have both installed… and there are some solutions WIP.

I’ve tried with --> add this line #pragma comment (lib, "crypt32"); to main.cpp of opencv example and worked.

#include “ofMain.h”
#include “ofApp.h”

#pragma comment (lib, “crypt32”);
//================================
int main( ){

ofSetupOpenGL(1024,768, OF_WINDOW); // <-------- setup the GL context

// this kicks off the running of my app
// can be OF_WINDOW or OF_FULLSCREEN
// pass in width and height too:
ofRunApp( new ofApp());

}


#39

Yes, thank you. have uninstalled visual studio code 2015 and installed the 2017 one. Adding the v141 build tools during the installation. When opening an example and trying to run it, I receive:

The Windows SDK version 8.1 was not found. Install the required version of Windows SDK or change the SDK version in the project property pages or by right-clicking the solution and selecting “Retarget solution”.
1>Done building project “openframeworksLib.vcxproj” – FAILED.

Even if I change the properties as in the picture, the error persists

If I create a project with the project generator, the Windows SDK Version selected is 8.1. If I change it to 10.0.16299.0, I get the same error as before.

If I change the Windows SDK version to that one supported by my system, 10.0.16299.0, in both the properties of the project AND in the properties of openFrameworks, the compilation starts, but it fails with this error message:
error

If I right click on the project, then properties, then configuration manager and i set the build to 64 bit as in the picture

I have this error:
er

Any suggestion about how to get the rc3 running on visual studio code 2017 is welcome.


#40

I’ve kept both versions in my case… I wanted to keep vs 2015 for other developments, so no idea about that process, but good to know… But did you tried to do right click to the project and select open it with VS2017? May be double click stills try to open it as VS 2015.


#41

I’m getting linker errors for libcrypto.lib when building an emptyExample on vs2017 community:

2>   Creating library bin\emptyExample.lib and object bin\emptyExample.exp
2>libcrypto.lib(e_capi.obj) : error LNK2001: unresolved external symbol __imp_CertOpenStore
2>libcrypto.lib(e_capi.obj) : error LNK2001: unresolved external symbol __imp_CertCloseStore
2>libcrypto.lib(e_capi.obj) : error LNK2001: unresolved external symbol __imp_CertEnumCertificatesInStore
2>libcrypto.lib(e_capi.obj) : error LNK2001: unresolved external symbol __imp_CertFindCertificateInStore
2>libcrypto.lib(e_capi.obj) : error LNK2001: unresolved external symbol __imp_CertDuplicateCertificateContext
2>libcrypto.lib(e_capi.obj) : error LNK2001: unresolved external symbol __imp_CertFreeCertificateContext
2>libcrypto.lib(e_capi.obj) : error LNK2001: unresolved external symbol __imp_CertGetCertificateContextProperty
2>bin\emptyExample.exe : fatal error LNK1120: 7 unresolved externals
2>Done building project "emptyExample.vcxproj" -- FAILED.
3>------ Skipped Deploy: Project: openframeworksLib, Configuration: Release x64 ------
3>Project not selected to build for this solution configuration 
========== Build: 1 succeeded, 1 failed, 0 up-to-date, 0 skipped ==========
========== Deploy: 0 succeeded, 0 failed, 1 skipped ==========

Also, there’s something funky with how Project Generator is writing the VS project / Windows SDK version as @edapx mentioned.
The project opens automatically in vs2015, but then gives an error about using the v141 toolset. If I manually open in vs2017, there’s no message about updating the project settings like when usually opening a vs2015 project in vs2017. The Windows SDK is 8.1, not sure if that should be 10? If I save the project in vs2017, it still wants to open in vs2015.

Any advice on the libcrypto issue?