Overview
Examples
Screenshots
Comparisons
Applications
Download
Documentation
Tutorials
Bazaar
Status & Roadmap
FAQ
Authors & License
Forums
Funding Ultimate++
Search on this site
Search in forums












SourceForge.net Logo
Home » Community » U++ community news and announcements » 2020.1 officially released
Re: 2020.1 officially released [message #54153 is a reply to message #54152] Thu, 04 June 2020 16:00 Go to previous messageGo to next message
Novo is currently offline  Novo
Messages: 1363
Registered: December 2006
Ultimate Contributor
mirek wrote on Thu, 04 June 2020 08:24
Sorry, fixed at the price of another #ifdef, which will mean you cannot build OSX GUI appliaction in LINUX (which is impossible anyway).

Mirek

Thanks!


Regards,
Novo
Re: 2020.1 officially released [message #54156 is a reply to message #53839] Thu, 04 June 2020 17:35 Go to previous messageGo to next message
Novo is currently offline  Novo
Messages: 1363
Registered: December 2006
Ultimate Contributor
A minor issue with mingw on Linux.
umk calls x86_64-w64-mingw32-windres.exe, which is called x86_64-w64-mingw32-windres (no extension) on Linux, otherwise +WIN32 seems to work ...


Regards,
Novo
Re: 2020.1 officially released [message #54165 is a reply to message #53839] Thu, 04 June 2020 21:14 Go to previous messageGo to next message
Novo is currently offline  Novo
Messages: 1363
Registered: December 2006
Ultimate Contributor
Another interesting observation. Size of executable.

mingw:
:~/.local/soft/bb-worker/worker/mingw-upp/build/.cache/upp.out/CLANG.Blitz.Gui.Win32$ ll AK.exe 
-rwx------ 1 ssg ssg 2541056 Jun  4 14:56 AK.exe*

wine:
:~/.local/soft/bb-worker/worker/wine-upp/build/.cache/upp.out/CLANGx64.Blitz.Gui$ ll AK.exe 
-rwxrwxr-x 1 ssg ssg 5104128 Jun  4 14:28 AK.exe*

Two times bigger.
Both are 64-bit executables.


Regards,
Novo
Re: 2020.1 officially released [message #54167 is a reply to message #54165] Fri, 05 June 2020 04:59 Go to previous messageGo to next message
Novo is currently offline  Novo
Messages: 1363
Registered: December 2006
Ultimate Contributor
Problem with mingw & linking when compiling reference/GuiWebCrawler.
Command line contains "-lcrypto -lssl".
Linker is looking for libcrypto.a & libssl.a, which are named crypto.lib & ssl.lib.
Even after creating of links with correct names linker is still looking for libLIBCMT.a & libOLDNAMES.a, which are not available ...


Regards,
Novo
Re: 2020.1 officially released [message #54168 is a reply to message #54156] Fri, 05 June 2020 05:03 Go to previous messageGo to next message
Novo is currently offline  Novo
Messages: 1363
Registered: December 2006
Ultimate Contributor
Novo wrote on Thu, 04 June 2020 11:35
A minor issue with mingw on Linux.
umk calls x86_64-w64-mingw32-windres.exe, which is called x86_64-w64-mingw32-windres (no extension) on Linux, otherwise +WIN32 seems to work ...

Could you please fix that?
You just need to replace
String windres = "windres.exe";

with
String windres = "windres";


TIA


Regards,
Novo
Re: 2020.1 officially released [message #54169 is a reply to message #53839] Fri, 05 June 2020 05:44 Go to previous messageGo to next message
Novo is currently offline  Novo
Messages: 1363
Registered: December 2006
Ultimate Contributor
Compilation speed of mingw is good.
Eigen_demo compiles in 35 sec. Smile

This is Debug:
$ ./umk reference Eigen_demo CLANG -bu
...
----- Eigen_demo ( WIN32 MAIN CLANG DEBUG DEBUG_FULL BLITZ ) (4 / 4)
BLITZ: eigen_demo.cpp non-linear.cpp fft.cpp
In file included from /home/ssg/.local/soft/bb-worker/worker/mingw-upp/build/.cache/upp.out/Eigen_demo/CLANG.Debug.Debug_Full.Main.Win32/Eigen_demo$blitz.cpp:3:
In file included from /home/ssg/.local/soft/bb-worker/worker/mingw-upp/build/reference/Eigen_demo/eigen_demo.cpp:1:
In file included from /home/ssg/.local/soft/bb-worker/worker/mingw-upp/build/uppsrc/Core/Core.h:281:
/home/ssg/.local/soft/bb-worker/worker/mingw-upp/build/uppsrc/Core/Mem.h:342:8: warning: unused variable 'Cmp128' [-Wunused-variable]
                auto Cmp128 = [&](size_t at) { return _mm_cmpeq_epi32(_mm_loadu_si128((__m128i *)(s + at)), _mm_loadu_si128((__m128i *)(t + at))); };
                     ^
In file included from /home/ssg/.local/soft/bb-worker/worker/mingw-upp/build/.cache/upp.out/Eigen_demo/CLANG.Debug.Debug_Full.Main.Win32/Eigen_demo$blitz.cpp:3:
In file included from /home/ssg/.local/soft/bb-worker/worker/mingw-upp/build/reference/Eigen_demo/eigen_demo.cpp:1:
In file included from /home/ssg/.local/soft/bb-worker/worker/mingw-upp/build/uppsrc/Core/Core.h:285:
In file included from /home/ssg/.local/soft/bb-worker/worker/mingw-upp/build/uppsrc/Core/String.h:956:
/home/ssg/.local/soft/bb-worker/worker/mingw-upp/build/uppsrc/Core/AString.hpp:270:14: warning: unused variable 't' [-Wunused-variable]
        const char *t = begin();
                    ^
2 warnings generated.
Eigen_demo: 3 file(s) built in (0:34.91), 11637 msecs / file

Release takes 45 sec.
Mission is acomplished Smile


Regards,
Novo

[Updated on: Fri, 05 June 2020 05:56]

Report message to a moderator

Re: 2020.1 officially released [message #54171 is a reply to message #54165] Fri, 05 June 2020 09:34 Go to previous messageGo to next message
mirek is currently offline  mirek
Messages: 13986
Registered: November 2005
Ultimate Member
Novo wrote on Thu, 04 June 2020 21:14
Another interesting observation. Size of executable.

mingw:
:~/.local/soft/bb-worker/worker/mingw-upp/build/.cache/upp.out/CLANG.Blitz.Gui.Win32$ ll AK.exe 
-rwx------ 1 ssg ssg 2541056 Jun  4 14:56 AK.exe*



Not sure what is "mingw" here... Do you mean llvm-mingw toolchain in crosscompile mode?

If yes, could you activate Verbose mode and compare all compiler/linker options?

Mirek
Re: 2020.1 officially released [message #54172 is a reply to message #54168] Fri, 05 June 2020 09:37 Go to previous messageGo to next message
mirek is currently offline  mirek
Messages: 13986
Registered: November 2005
Ultimate Member
Novo wrote on Fri, 05 June 2020 05:03
Novo wrote on Thu, 04 June 2020 11:35
A minor issue with mingw on Linux.
umk calls x86_64-w64-mingw32-windres.exe, which is called x86_64-w64-mingw32-windres (no extension) on Linux, otherwise +WIN32 seems to work ...

Could you please fix that?
You just need to replace
String windres = "windres.exe";

with
String windres = "windres";


TIA


I will, but it is not that easy - if I do above, it will stop working in Win32. I can add #ifdef PLATFORM_ perhaps, or I can try to test which variant exists...

Mirek
Re: 2020.1 officially released [message #54173 is a reply to message #54167] Fri, 05 June 2020 09:44 Go to previous messageGo to next message
mirek is currently offline  mirek
Messages: 13986
Registered: November 2005
Ultimate Member
Novo wrote on Fri, 05 June 2020 04:59
Problem with mingw & linking when compiling reference/GuiWebCrawler.
Command line contains "-lcrypto -lssl".
Linker is looking for libcrypto.a & libssl.a, which are named crypto.lib & ssl.lib.


Can you try to add .lib in package organizer? Just to know it that helps.

Re: 2020.1 officially released [message #54181 is a reply to message #54171] Fri, 05 June 2020 17:16 Go to previous messageGo to next message
Novo is currently offline  Novo
Messages: 1363
Registered: December 2006
Ultimate Contributor
mirek wrote on Fri, 05 June 2020 03:34
Novo wrote on Thu, 04 June 2020 21:14
Another interesting observation. Size of executable.

mingw:
:~/.local/soft/bb-worker/worker/mingw-upp/build/.cache/upp.out/CLANG.Blitz.Gui.Win32$ ll AK.exe 
-rwx------ 1 ssg ssg 2541056 Jun  4 14:56 AK.exe*



Not sure what is "mingw" here... Do you mean llvm-mingw toolchain in crosscompile mode?

If yes, could you activate Verbose mode and compare all compiler/linker options?

Mirek

Yes, "mingw" is llvm-mingw toolchain in cross-compile mode.
Please check attached file.
txt-files is what you asked for.
log-files - complete build logs.
  • Attachment: 01.zip
    (Size: 14.77KB, Downloaded 166 times)


Regards,
Novo
Re: 2020.1 officially released [message #54183 is a reply to message #54173] Fri, 05 June 2020 20:09 Go to previous messageGo to next message
Novo is currently offline  Novo
Messages: 1363
Registered: December 2006
Ultimate Contributor
mirek wrote on Fri, 05 June 2020 03:44
Novo wrote on Fri, 05 June 2020 04:59
Problem with mingw & linking when compiling reference/GuiWebCrawler.
Command line contains "-lcrypto -lssl".
Linker is looking for libcrypto.a & libssl.a, which are named crypto.lib & ssl.lib.


Can you try to add .lib in package organizer? Just to know it that helps.


Adding .lib to crypto & ssl doesn't affect anything.

BTW, precompiled ssl is already included into Clang distribution bundled with Upp.
And, I guess, Clang is using its own ssl ...
And one shipped with Upp seems to be compiled with msvc ...

Another thing. llvm-mingw-20200325-ubuntu-18.04 doesn't include a prebuilt version of ssl ...
This is weird ...


Regards,
Novo

[Updated on: Fri, 05 June 2020 20:21]

Report message to a moderator

Re: 2020.1 officially released [message #54185 is a reply to message #54145] Fri, 05 June 2020 22:24 Go to previous messageGo to next message
luoganda is currently offline  luoganda
Messages: 204
Registered: November 2016
Experienced Member
reference/GLDrawDemo doesn't work properly..
Tested in kubuntu 18.04, without changing anything, that is: GUI.NOGTK, GCC Debug.

App compiles ok, but when it's run - window is ok - but where GLCtrl is - nothing is drawn.
And when app is closed, there comes a dialog with 'Fatal error:' and message 'Heap leaks detected!'
Re: 2020.1 officially released [message #54186 is a reply to message #54150] Fri, 05 June 2020 22:24 Go to previous messageGo to next message
Novo is currently offline  Novo
Messages: 1363
Registered: December 2006
Ultimate Contributor
mirek wrote on Thu, 04 June 2020 04:37

- Try with GIT head, as Martin claims this is now fixed. This would be most interesting option for me Smile (Being there, you could check msvcrt version too).

Mirek

Checked against GIT head. The problem is still there.

What do you mean by msvcrt version?


Regards,
Novo
Re: 2020.1 officially released [message #54191 is a reply to message #54183] Sat, 06 June 2020 10:26 Go to previous messageGo to next message
mirek is currently offline  mirek
Messages: 13986
Registered: November 2005
Ultimate Member
Novo wrote on Fri, 05 June 2020 20:09
mirek wrote on Fri, 05 June 2020 03:44
Novo wrote on Fri, 05 June 2020 04:59
Problem with mingw & linking when compiling reference/GuiWebCrawler.
Command line contains "-lcrypto -lssl".
Linker is looking for libcrypto.a & libssl.a, which are named crypto.lib & ssl.lib.


Can you try to add .lib in package organizer? Just to know it that helps.


Adding .lib to crypto & ssl doesn't affect anything.

BTW, precompiled ssl is already included into Clang distribution bundled with Upp.


Yes, but that one does not work with MSVC...

Frankly, it is dancing between blades.... I was really happy to find working solution for genuine windows for all small issues involved. It is really stupid that it has wine problem.

Mirek
Re: 2020.1 officially released [message #54192 is a reply to message #54186] Sat, 06 June 2020 10:30 Go to previous messageGo to next message
mirek is currently offline  mirek
Messages: 13986
Registered: November 2005
Ultimate Member
Novo wrote on Fri, 05 June 2020 22:24
mirek wrote on Thu, 04 June 2020 04:37

- Try with GIT head, as Martin claims this is now fixed. This would be most interesting option for me Smile (Being there, you could check msvcrt version too).

Mirek

Checked against GIT head. The problem is still there.


Just to be sure: I mean llvm-mingw head (not U++)....

Quote:

What do you mean by msvcrt version?


By default, llvm-mingw builds for universal CRT, which is the new Windows OS C library in Win10 (and via system updates, since Win7). There is older one, "msvcrt.dll" which is present sice WinNT. However, situation is more complicated:

https://github.com/mstorsjo/llvm-mingw/issues/104

Still, it would probably be better to ship with msvcrt version... maybe next release.

Mirek
Re: 2020.1 officially released [message #54199 is a reply to message #54192] Sun, 07 June 2020 15:22 Go to previous messageGo to next message
Novo is currently offline  Novo
Messages: 1363
Registered: December 2006
Ultimate Contributor
mirek wrote on Sat, 06 June 2020 04:30
Novo wrote on Fri, 05 June 2020 22:24
mirek wrote on Thu, 04 June 2020 04:37

- Try with GIT head, as Martin claims this is now fixed. This would be most interesting option for me Smile (Being there, you could check msvcrt version too).

Mirek

Checked against GIT head. The problem is still there.


Just to be sure: I mean llvm-mingw head (not U++)....

Yes, I've built llvm-mingw from git. This is easy. Just one simple command.
I'm still getting the same "duplicated symbols" error messages.


Regards,
Novo
Re: 2020.1 officially released [message #54200 is a reply to message #54192] Sun, 07 June 2020 15:45 Go to previous messageGo to next message
Novo is currently offline  Novo
Messages: 1363
Registered: December 2006
Ultimate Contributor
mirek wrote on Sat, 06 June 2020 04:30

By default, llvm-mingw builds for universal CRT, which is the new Windows OS C library in Win10 (and via system updates, since Win7). There is older one, "msvcrt.dll" which is present sice WinNT. However, situation is more complicated:

https://github.com/mstorsjo/llvm-mingw/issues/104

Still, it would probably be better to ship with msvcrt version... maybe next release.

Mirek

I'm a little bit confused. I thought that x86_64-w64-mingw32-clang++ builds for msvcrt, and x86_64-w64-mingw32uwp-clang++ builds for ucrt.

Anyway, I'll try to recompile llvm-mingw with --with-default-msvcrt=msvcrt on the build-mingw-w64.sh line.


Regards,
Novo
Re: 2020.1 officially released [message #54201 is a reply to message #54200] Sun, 07 June 2020 16:08 Go to previous messageGo to next message
Novo is currently offline  Novo
Messages: 1363
Registered: December 2006
Ultimate Contributor
Novo wrote on Sun, 07 June 2020 09:45

Anyway, I'll try to recompile llvm-mingw with --with-default-msvcrt=msvcrt on the build-mingw-w64.sh line.

That didn't help. I'm still getting same errors.
The only solution so far is to use the USEMALLOC flag.


Regards,
Novo
Re: 2020.1 officially released [message #54202 is a reply to message #54201] Sun, 07 June 2020 16:52 Go to previous messageGo to next message
Novo is currently offline  Novo
Messages: 1363
Registered: December 2006
Ultimate Contributor
A minor issue with umk.
It doesn't check for duplicate flags.
I have USEMALLOC defined in a project file and in a bm-file. In the end I get this:
CLANGx64cpp17.Debug.Debug_Full.Gui.Usemalloc.Usemalloc


Regards,
Novo
Re: 2020.1 officially released [message #54203 is a reply to message #54191] Sun, 07 June 2020 17:41 Go to previous messageGo to previous message
Novo is currently offline  Novo
Messages: 1363
Registered: December 2006
Ultimate Contributor
mirek wrote on Sat, 06 June 2020 04:26

Frankly, it is dancing between blades.... I was really happy to find working solution for genuine windows for all small issues involved. It is really stupid that it has wine problem.

Mirek

IMHO, the "wine problem" is not a problem anymore.
Wine is not needed anymore because we have cross-compilation now. (It would be interesting to check Upp against a a standard gcc-based mingw)

IMHO, a real problem is a problem with new/delete and cpp17. But even this problem has a workaround ...

Life is good Smile


Regards,
Novo
Previous Topic: get_i
Next Topic: theide: New Threads tab in PDB debugger
Goto Forum:
  


Current Time: Thu Jun 20 23:47:08 CEST 2024

Total time taken to generate the page: 0.02198 seconds