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 » New experimental Linux/FreeBSD release
Re: New experimental Linux/FreeBSD release [message #53453 is a reply to message #53451] Fri, 03 April 2020 18:24 Go to previous messageGo to next message
mirek is currently offline  mirek
Messages: 13050
Registered: November 2005
Ultimate Member
[quote title=amrein wrote on Fri, 03 April 2020 17:17]mirek wrote on Fri, 03 April 2020 16:59

Is this Makefile ok for you? I mean, shoudl I continue working on it than commit the change after test on BSD and Linux?


I want to be able to ./install U++ (actualy, maybe instead of ./install, the better name is ./config). Actually, at this point, even if I am persuaded by community to drop it, I will probably keep maintaining it for myself.

What you are trying to do is formally correct, but it is just a new slightly improved iteration of current tarball.

Instead of trying that, I think it would be better to invest time to provide binary packages (again). For tarball, simple Makefile with readme is enough. I plan to start autogenerating Makefile to repo really soon.

Oh, and BTW, pkg-config is not enough to identify missing packages, fresh fedora does not even have 'make' installed.
Re: New experimental Linux/FreeBSD release [message #53455 is a reply to message #53453] Fri, 03 April 2020 22:20 Go to previous messageGo to next message
amrein is currently offline  amrein
Messages: 278
Registered: August 2008
Location: France
Experienced Member
[quote title=mirek wrote on Fri, 03 April 2020 18:24]amrein wrote on Fri, 03 April 2020 17:17
mirek wrote on Fri, 03 April 2020 16:59

Is this Makefile ok for you? I mean, shoudl I continue working on it than commit the change after test on BSD and Linux?


I want to be able to ./install U++ (actualy, maybe instead of ./install, the better name is ./config). Actually, at this point, even if I am persuaded by community to drop it, I will probably keep maintaining it for myself.

What you are trying to do is formally correct, but it is just a new slightly improved iteration of current tarball.

Instead of trying that, I think it would be better to invest time to provide binary packages (again). For tarball, simple Makefile with readme is enough. I plan to start autogenerating Makefile to repo really soon.

Oh, and BTW, pkg-config is not enough to identify missing packages, fresh fedora does not even have 'make' installed.


Yes. Pkg-config is not enough. This is why the last Makefile search for make pkg-config and c++ binaries.
I need to test this makefile on BSD and MacOS to see how it works. It's certainly too much gmake dependent.

Re: New experimental Linux/FreeBSD release [message #53463 is a reply to message #53455] Sat, 04 April 2020 15:17 Go to previous messageGo to next message
mirek is currently offline  mirek
Messages: 13050
Registered: November 2005
Ultimate Member
Link in the first post updated to new version, it now asks more before doing "naughty" things...

Should now work with debians and rpms (to be tested...)

Mirek
Re: New experimental Linux/FreeBSD release [message #53490 is a reply to message #53463] Mon, 06 April 2020 09:53 Go to previous messageGo to next message
deep is currently offline  deep
Messages: 227
Registered: July 2011
Location: Bangalore
Experienced Member
Hi

I get following error in compilation.

ubuntu 16.04 , http://ultimatepp.org/downloads/upp-posix-14219.tar.xz

run ./install

CppBuilder.cpp
In file included from /home/deepak/src/upp/.cache/upp.out/ide/Common/CLANG.Blitz.Gui.Shared/ide/Common$blitz.cpp:3:
In file included from /home/deepak/src/upp/uppsrc/ide/Common/ComDlg.cpp:1:
In file included from /home/deepak/src/upp/uppsrc/ide/Common/Common.h:5:
In file included from /home/deepak/src/upp/uppsrc/CtrlLib/CtrlLib.h:4:
In file included from /home/deepak/src/upp/uppsrc/CtrlCore/CtrlCore.h:1657:
/home/deepak/src/upp/uppsrc/CtrlCore/GtkAfter.h:3:2: error: unknown type name 'GdkDrawingContext'; did you mean 'GdkDragContext'?
        GdkDrawingContext *ctx;
        ^~~~~~~~~~~~~~~~~
        GdkDragContext
/usr/include/gtk-3.0/gdk/gdktypes.h:137:39: note: 'GdkDragContext' declared here
typedef struct _GdkDragContext        GdkDragContext;
                                      ^
1 error generated.


Warm Regards

Deepak

[Updated on: Mon, 06 April 2020 09:54]

Report message to a moderator

Re: New experimental Linux/FreeBSD release [message #53491 is a reply to message #53490] Mon, 06 April 2020 10:01 Go to previous messageGo to next message
amrein is currently offline  amrein
Messages: 278
Registered: August 2008
Location: France
Experienced Member
Here is an updated buildrequires.posix file Mirek.

I tested umk and theide dependencies in those POSIX distributions.
Re: New experimental Linux/FreeBSD release [message #53493 is a reply to message #53491] Mon, 06 April 2020 10:18 Go to previous messageGo to next message
mirek is currently offline  mirek
Messages: 13050
Registered: November 2005
Ultimate Member
amrein wrote on Mon, 06 April 2020 10:01
Here is an updated buildrequires.posix file Mirek.

I tested umk and theide dependencies in those POSIX distributions.


Thanks, this is very helpfull. I think we should add openssl too - while not required for theide at the moment, many examples and a lot of code needs it right away.

I believe it is "openssl-devel" in rpms.

Mirek
Re: New experimental Linux/FreeBSD release [message #53495 is a reply to message #53490] Mon, 06 April 2020 10:33 Go to previous messageGo to next message
mirek is currently offline  mirek
Messages: 13050
Registered: November 2005
Ultimate Member
deep wrote on Mon, 06 April 2020 09:53
Hi

I get following error in compilation.

ubuntu 16.04 , http://ultimatepp.org/downloads/upp-posix-14219.tar.xz

run ./install

CppBuilder.cpp
In file included from /home/deepak/src/upp/.cache/upp.out/ide/Common/CLANG.Blitz.Gui.Shared/ide/Common$blitz.cpp:3:
In file included from /home/deepak/src/upp/uppsrc/ide/Common/ComDlg.cpp:1:
In file included from /home/deepak/src/upp/uppsrc/ide/Common/Common.h:5:
In file included from /home/deepak/src/upp/uppsrc/CtrlLib/CtrlLib.h:4:
In file included from /home/deepak/src/upp/uppsrc/CtrlCore/CtrlCore.h:1657:
/home/deepak/src/upp/uppsrc/CtrlCore/GtkAfter.h:3:2: error: unknown type name 'GdkDrawingContext'; did you mean 'GdkDragContext'?
        GdkDrawingContext *ctx;
        ^~~~~~~~~~~~~~~~~
        GdkDragContext
/usr/include/gtk-3.0/gdk/gdktypes.h:137:39: note: 'GdkDragContext' declared here
typedef struct _GdkDragContext        GdkDragContext;
                                      ^
1 error generated.


Thats actually a bug in CtrlCore. Should be fixed tomorrow; or you can fix CtrlCore/GtkAfter.h

class ViewDraw : public SystemDraw {
#if GTK_CHECK_VERSION(3, 22, 0) // <---- wrong version here
	GdkDrawingContext *ctx;
#endif
public:
	ViewDraw(Ctrl *ctrl);
	~ViewDraw();
};


Thanks for reporting!
Re: New experimental Linux/FreeBSD release [message #53496 is a reply to message #53495] Mon, 06 April 2020 11:52 Go to previous messageGo to next message
deep is currently offline  deep
Messages: 227
Registered: July 2011
Location: Bangalore
Experienced Member
Hi Mirek

Thanks. I changed the file as per your message.

It is working now.

I have now .config and .cache folders.

Could not locate log file. which used to be in .upp folder.

Serialised data "cfg" file is in .config/u++/.... folder.


EDIT : Now I have log files. On first run there was no log file created.


Warm Regards

Deepak

[Updated on: Mon, 06 April 2020 12:41]

Report message to a moderator

Re: New experimental Linux/FreeBSD release [message #53497 is a reply to message #53493] Mon, 06 April 2020 13:45 Go to previous messageGo to next message
amrein is currently offline  amrein
Messages: 278
Registered: August 2008
Location: France
Experienced Member
mirek wrote on Mon, 06 April 2020 10:18
amrein wrote on Mon, 06 April 2020 10:01
Here is an updated buildrequires.posix file Mirek.

I tested umk and theide dependencies in those POSIX distributions.


Thanks, this is very helpfull. I think we should add openssl too - while not required for theide at the moment, many examples and a lot of code needs it right away.

I believe it is "openssl-devel" in rpms.

Mirek


* openssl-devel on Fedora, on Redhat and on Mandriva.
* libopenssl-devel on OpenSuse
* libssl-dev on Debian and Ubuntu
* Nothing to install on FreeBSD (installed by default) but libcrypto.pc, libssl.pc and openssl.pc are missing
Re: New experimental Linux/FreeBSD release [message #53499 is a reply to message #53497] Mon, 06 April 2020 13:59 Go to previous messageGo to next message
mirek is currently offline  mirek
Messages: 13050
Registered: November 2005
Ultimate Member
amrein wrote on Mon, 06 April 2020 13:45

* openssl-devel on Fedora, on Redhat and on Mandriva.
* libopenssl-devel on OpenSuse
* libssl-dev on Debian and Ubuntu
* Nothing to install on FreeBSD (installed by default) but libcrypto.pc, libssl.pc and openssl.pc are missing


Thanks a lot. Looks like not moving everything to pkg-config was a good idea... Smile

So I guess we have blind spot remaining now - pacman / ArchLinux and derivatives.... It unfortunately keeps crashing in virtualbox for me....
Re: New experimental Linux/FreeBSD release [message #53500 is a reply to message #53499] Mon, 06 April 2020 15:05 Go to previous messageGo to next message
amrein is currently offline  amrein
Messages: 278
Registered: August 2008
Location: France
Experienced Member
Last fixes on buildrequires.posix (mandriva => openmandriva + dependencies and package manager fixes):
OpenMandriva use clang by default...

openmandrivalinux.umk.dependencies: clang make zlib-devel bzip2-devel glibc-devel
openmandrivalinux.umk.pkg-config: zlib bzip2
openmandrivalinux.theide.dependencies: gtk+3-devel libnotify-devel # gtk+3-devel provided by lib64gtk+3.0-devel
openmandrivalinux.theide.pkg-config: gtk+-3.0 libnotify # x11 freetype2
openmandrivalinux.extra.dependencies: openssl-devel # openssl-devel provided by lib64openssl-devel
openmandrivalinux.extra.pkg-config: libcrypto libssl openssl # All are in openssl
openmandrivalinux.install.command: dnf install

[Updated on: Mon, 06 April 2020 15:05]

Report message to a moderator

Re: New experimental Linux/FreeBSD release [message #53503 is a reply to message #53499] Mon, 06 April 2020 16:18 Go to previous messageGo to next message
dolik.rce is currently offline  dolik.rce
Messages: 1779
Registered: August 2008
Location: Czech Republic
Ultimate Contributor

mirek wrote on Mon, 06 April 2020 13:59
So I guess we have blind spot remaining now - pacman / ArchLinux and derivatives.... It unfortunately keeps crashing in virtualbox for me....

This should work:
arch.umk.dependencies: gcc make zlib bzip2
arch.umk.pkg-config: zlib bzip2
arch.theide.dependencies: gtk3 libnotify
arch.theide.pkg-config: gtk+-3.0 libnotify # x11 freetype2
arch.install.command: sudo pacman -Sy --needed

I didn't actually test it, just checked the package names on my machine... But it should work Smile Also, gcc could be changed to clang, but gcc is probably already installed on most developers systems, since it is in base-devel group (unlike clang).

Honza
Re: New experimental Linux/FreeBSD release [message #53504 is a reply to message #53503] Mon, 06 April 2020 16:47 Go to previous messageGo to next message
mirek is currently offline  mirek
Messages: 13050
Registered: November 2005
Ultimate Member
dolik.rce wrote on Mon, 06 April 2020 16:18
mirek wrote on Mon, 06 April 2020 13:59
So I guess we have blind spot remaining now - pacman / ArchLinux and derivatives.... It unfortunately keeps crashing in virtualbox for me....

This should work:
arch.umk.dependencies: gcc make zlib bzip2
arch.umk.pkg-config: zlib bzip2
arch.theide.dependencies: gtk3 libnotify
arch.theide.pkg-config: gtk+-3.0 libnotify # x11 freetype2
arch.install.command: sudo pacman -Sy --needed

I didn't actually test it, just checked the package names on my machine... But it should work Smile Also, gcc could be changed to clang, but gcc is probably already installed on most developers systems, since it is in base-devel group (unlike clang).

Honza


Thanks a lot. clang name is "clang", right?
Re: New experimental Linux/FreeBSD release [message #53505 is a reply to message #53504] Mon, 06 April 2020 16:50 Go to previous messageGo to next message
dolik.rce is currently offline  dolik.rce
Messages: 1779
Registered: August 2008
Location: Czech Republic
Ultimate Contributor

mirek wrote on Mon, 06 April 2020 16:47
Thanks a lot. clang name is "clang", right?


Yes, clang packge is called clang. Oh, and I forgot about the openssl, which is in openssl package Smile Arch tries to keep it simple Very Happy
Re: New experimental Linux/FreeBSD release [message #53508 is a reply to message #53424] Tue, 07 April 2020 10:28 Go to previous messageGo to next message
pvictor is currently offline  pvictor
Messages: 42
Registered: December 2015
Member
In the latest build (14263) the first line in Makefile is:
UPPDIR1 = /home/cxl/upp.src/uppsrc/

I had to replace it with:
UPPDIR1 = uppsrc/
in order to run make.

Victor
Re: New experimental Linux/FreeBSD release [message #53509 is a reply to message #53508] Tue, 07 April 2020 14:35 Go to previous messageGo to next message
mirek is currently offline  mirek
Messages: 13050
Registered: November 2005
Ultimate Member
Should be now fixed.
Re: New experimental Linux/FreeBSD release [message #53515 is a reply to message #53509] Wed, 08 April 2020 10:41 Go to previous messageGo to next message
Oblivion is currently offline  Oblivion
Messages: 827
Registered: August 2007
Experienced Contributor
Hello Mirek,

There seems to be another problem on Linux with the latest code.

Logs are written to.cache/upp.out, but I get garbled log file names (sometimes even free mem blocks (FreeFreeFree) leak to names).
Contents of log files are fine, but TheIDE can't open them as the file names are trashed.

Screenshot:

index.php?t=getfile&id=6038&private=0

System: ArchLinux/Gnome 3.36, both GCC and CLANG, Flags: GUI, Encoding UTF-8.

Best regards,
Oblivion


[Updated on: Wed, 08 April 2020 10:53]

Report message to a moderator

Re: New experimental Linux/FreeBSD release [message #53516 is a reply to message #53515] Wed, 08 April 2020 10:58 Go to previous messageGo to next message
mirek is currently offline  mirek
Messages: 13050
Registered: November 2005
Ultimate Member
Oblivion wrote on Wed, 08 April 2020 10:41
Hello Mirek,

There seems to be another problem on Linux with the latest code.

Logs are written to.cache/upp.out, but I get garbled log file names (sometimes even free mem blocks (FreeFreeFree) leak to names).
Logs are fine but, naturally, TheIDE can't open them as the file names are trashed.

Screenshot:

index.php?t=getfile&id=6038&private=0

System Arch/Linux/Gnume 3.36, both GCC and CLANG, Flags: GUI, Encoding UTF-8).

Best regards,
Oblivion


Thanks, sorry for trouble. Just a quick question, what is the name of the application? Do you have non-ASCII names in it?

Mirek
Re: New experimental Linux/FreeBSD release [message #53517 is a reply to message #53515] Wed, 08 April 2020 11:08 Go to previous messageGo to next message
mirek is currently offline  mirek
Messages: 13050
Registered: November 2005
Ultimate Member
Oblivion wrote on Wed, 08 April 2020 10:41
Hello Mirek,

There seems to be another problem on Linux with the latest code.

Logs are written to.cache/upp.out, but I get garbled log file names (sometimes even free mem blocks (FreeFreeFree) leak to names).



That is already wrong, it should be .config/u++/{AppName}

I have now found and fixed a problem when LOGs started before MAIN. Could that be related?

Mirek
Re: New experimental Linux/FreeBSD release [message #53518 is a reply to message #53517] Wed, 08 April 2020 11:25 Go to previous messageGo to previous message
amrein is currently offline  amrein
Messages: 278
Registered: August 2008
Location: France
Experienced Member
Great. Now theide and umk uses sandboxed .config and .cache, and they use ~/.config/ and ~/.cache if there are not there.

Suggestion:

* use cache/upp/ and config/upp in tarball (instead of hidden directories)
* use config/upp/theide, config/upp/umk instead of config/u++/theide...
* share compiler .bm files between theide and umk (in config/upp/ and not in both config/upp/theide and config/upp/umk)
* fix code where ".upp" is still used (you can find some using "grep -R \\.upp uppsrc")
* move bazaar, examples, reference, tutorial in an extra directory (see layout at the end of this message)
* use share/upp in sandboxed upp directory or ~/.share/upp if the directory doesn't exist (for dictionaries and other future data)

I'm thinking right non on how to improve your current script and Makefiles. I will perhaps upload a few patches to review.


Directory layout:

cache
config
extra
  |--bazaar
  |--examples
  |--reference
  \--tutorial
share
  |--upp
        |--theide
              |--speller
uppsrc

[Updated on: Wed, 08 April 2020 11:30]

Report message to a moderator

Previous Topic: MacOS releases news
Next Topic: umk (small) improvements
Goto Forum:
  


Current Time: Fri Jan 22 16:34:59 CET 2021

Total time taken to generate the page: 0.01124 seconds