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 » U++ TheIDE » U++ TheIDE: Installation, Compiling and Running of theide » Linux U++ libraries
Linux U++ libraries [message #53288] Thu, 26 March 2020 15:53 Go to next message
koldo is currently offline  koldo
Messages: 3129
Registered: August 2008
Ultimate Member
Sorry for the question.

My Linux crashed and I have had to reinstall it.
Lots of problems installing U++ in Ubuntu because of folder and file permissions and untrusted application...
Finally all is running, but I have had to create the GCC.bm by hand, and I need these folders:
index.php?t=getfile&id=6023&private=0
It is clear I am not an expert Smile. How to get these folders?


Best regards
Iñaki
Re: Linux U++ libraries [message #53289 is a reply to message #53288] Thu, 26 March 2020 16:40 Go to previous messageGo to next message
Oblivion is currently offline  Oblivion
Messages: 664
Registered: August 2007
Location: Turkey
Contributor
Hello Koldo,

Mine, for GCC:

/usr/X11R6/lib
/usr/lib
/usr/lib64
/usr/local/lib
/opt/whatever/optional/library/you_use


For CLANG

((LIBRARIES))
/usr/X11R6/lib
/usr/lib
/usr/local/lib
/opt/whatever/optional/library/you_use



*Almost* all distros use these settings by default.


Best regards,
Oblivion


[Updated on: Thu, 26 March 2020 16:42]

Report message to a moderator

Re: Linux U++ libraries [message #53292 is a reply to message #53289] Thu, 26 March 2020 17:02 Go to previous messageGo to next message
koldo is currently offline  koldo
Messages: 3129
Registered: August 2008
Ultimate Member
Thank you Oblivion, but in Ubuntu 18.04, those folders do not work Sad

Best regards
Iñaki
Re: Linux U++ libraries [message #53294 is a reply to message #53292] Thu, 26 March 2020 18:37 Go to previous messageGo to next message
Oblivion is currently offline  Oblivion
Messages: 664
Registered: August 2007
Location: Turkey
Contributor
Hmm, that's bad.
I'm not on Ubuntu, but you can try a trick I use sometimes:
Try ldd to get the paths for TheIDE (ldd can show the required libraries linked against theIDE's executable):

#ldd /usr/bin/theide # if it is the right path, I mean.


You can check the paths.

The output should be something like this:

linux-vdso.so.1 (0x00007ffd5b64b000)
libc.so.6 => /usr/lib/libc.so.6 (0x00007f9c2c110000)
libglib-2.0.so.0 => /usr/lib/libglib-2.0.so.0 (0x00007f9c2bfe8000)
libgio-2.0.so.0 => /usr/lib/libgio-2.0.so.0 (0x00007f9c2be30000)
libgobject-2.0.so.0 => /usr/lib/libgobject-2.0.so.0 (0x00007f9c2bdd0000)
libgtk-3.so.0 => /usr/lib/libgtk-3.so.0 (0x00007f9c2b6f0000)
libgdk-3.so.0 => /usr/lib/libgdk-3.so.0 (0x00007f9c2b5f0000)
//....


Hopefully you can start from there.

Best regards,
Oblivion


Re: Linux U++ libraries [message #53297 is a reply to message #53294] Thu, 26 March 2020 20:46 Go to previous messageGo to next message
koldo is currently offline  koldo
Messages: 3129
Registered: August 2008
Ultimate Member
Dear Oblivion

I have done that obtaining these:
/usr/lib/x86_64-linux-gnu
/lib/x86_64-linux-gnu
/lib64

But the link error remains... Sad


Best regards
Iñaki
Re: Linux U++ libraries [message #53298 is a reply to message #53297] Thu, 26 March 2020 21:08 Go to previous messageGo to next message
Oblivion is currently offline  Oblivion
Messages: 664
Registered: August 2007
Location: Turkey
Contributor
hello Koldo,

Sad

Did you download the devel or dev packages?
AFAIK, they have to be installed separately.

If that does not do the trick, can you check the current library cache? Because it has to be updated. (devel packages usually do that automatically for you.

First,

ldconfig -p


It should list the current library paths.

Still, if you don't see the paths you need, add the paths /usr/lib, /lib/, /usr/local/lib to /etc/ld.so.conf,
and then run ldconfig to update cache.

See: http://man7.org/linux/man-pages/man8/ldconfig.8.html

Hope this helps.

Best regards,
Oblivion


Re: Linux U++ libraries [message #53302 is a reply to message #53298] Fri, 27 March 2020 12:32 Go to previous messageGo to next message
koldo is currently offline  koldo
Messages: 3129
Registered: August 2008
Ultimate Member
Thank you Oblivion

I have tried with it, but there are no additional folders.
In the output of "make install" there is something that may be relevant:
Copying *.bm
cp: cannot stat '*.bm': No such file or directory


It seems that for any reason, "make" does not generate the CLANG.bm and GCC.bm files.

This is all the "make install" output:
./doinstall --verbose
DOINSTALL INFO: >> Starting installation in HOME directory (U++ style)
DOINSTALL INFO: Variable values:
DOINSTALL INFO: DESTDIR         = 
DOINSTALL INFO: prefix          = /home/aupa
DOINSTALL INFO: Creating upp, upp.out, MyApps and .upp directories in /home/aupa/
DOINSTALL INFO: Copying theide and umk
DOINSTALL INFO: Creating theide.desktop, copying default icon and creating user menu entry
/usr/bin/xdg-desktop-menu
xdg-desktop-menu install --mode user --novendor theide.desktop
DOINSTALL INFO: Copying U++ source code
DOINSTALL INFO: Cleaning source code
DOINSTALL INFO: Copying *.bm
cp: cannot stat '*.bm': No such file or directory
DOINSTALL INFO: Copying cs-cz.udc de-de.udc en-gb.udc en-us.udc es.udc fi.udc fr-fr.udc hu.udc it.udc nb.udc nl.udc ro.udc sk-sk.udc
DOINSTALL INFO: Generating default theide var files in /home/aupa/.upp/theide/
DOINSTALL INFO: << End of installation
(base) aupa@aupa:~/Desktop/upp-x11-src-14188$ sudo make install
[sudo] password for aupa: 
./doinstall --verbose
DOINSTALL INFO: >> Starting installation in HOME directory (U++ style)
DOINSTALL INFO: Variable values:
DOINSTALL INFO: DESTDIR         = 
DOINSTALL INFO: prefix          = /home/aupa
DOINSTALL INFO: Creating upp, upp.out, MyApps and .upp directories in /home/aupa/
DOINSTALL INFO: Copying theide and umk
DOINSTALL INFO: Creating theide.desktop, copying default icon and creating user menu entry
/usr/bin/xdg-desktop-menu
xdg-desktop-menu install --mode user --novendor theide.desktop
DOINSTALL INFO: Copying U++ source code
DOINSTALL INFO: Cleaning source code
DOINSTALL INFO: Copying *.bm
cp: cannot stat '*.bm': No such file or directory
DOINSTALL INFO: Copying cs-cz.udc de-de.udc en-gb.udc en-us.udc es.udc fi.udc fr-fr.udc hu.udc it.udc nb.udc nl.udc ro.udc sk-sk.udc
DOINSTALL INFO: Generating default theide var files in /home/aupa/.upp/theide/
DOINSTALL INFO: << End of installation


Best regards
Iñaki
Re: Linux U++ libraries [message #53303 is a reply to message #53302] Fri, 27 March 2020 12:36 Go to previous messageGo to next message
koldo is currently offline  koldo
Messages: 3129
Registered: August 2008
Ultimate Member
This is the beginning of the "make" output.
Apparently the creation of CLANG.bm.in GCC.bm is OK...
./domake
DOMAKE INFO: Build ide = true
DOMAKE INFO: Build umk = true
/bin/uname
DOMAKE INFO: Detected system: Linux
DOMAKE INFO: Searching for g++ compiler
/usr/bin/g++
DOMAKE INFO: Found /usr/bin/g++
DOMAKE INFO: g++ version: 7
DOMAKE INFO: Searching for supported C++ mode
DOMAKE INFO: The -std=c++14 is supported by 'g++'
DOMAKE INFO: Searching for extra make parameters
DOMAKE INFO: Make parameters:
DOMAKE INFO:  --> CXXFLAGS=-O3 -ffunction-sections -fdata-sections -std=c++14
DOMAKE INFO: Extra parameters will supersede default parameters
DOMAKE INFO: Configuring uppsrc/Makefile.in uppsrc/uMakefile.in CLANG.bm.in GCC.bm.in with pkg-config
/usr/bin/pkg-config
DOMAKE INFO: pkg-config: Found library gtk+-3.0
DOMAKE INFO: pkg-config: Found library x11
DOMAKE INFO: pkg-config: Found library libnotify
DOMAKE INFO: pkg-config: Found library freetype2
DOMAKE INFO: Searching for gmake or make
/usr/bin/make
DOMAKE INFO: Found make. Compiling...


Best regards
Iñaki
Re: Linux U++ libraries [message #53304 is a reply to message #53302] Fri, 27 March 2020 14:52 Go to previous messageGo to next message
Oblivion is currently offline  Oblivion
Messages: 664
Registered: August 2007
Location: Turkey
Contributor
Hello Koldo,

Quote:

Copying *.bm
cp: cannot stat '*.bm': No such file or directory


Yes, I can confirm this, now.

I downloaded the U++ nightly, and I've got the same error with GCC.

The reason is GNU cp seems to differentiate between "*.bm" and "*.bm.in".

I don't know why the build method files have the ".bm.in" extension though. (clash ?)

Renaming the files with ".bm.in" to ".bm" (or vice versa) resolves THAT error for me.

Best regards,
Oblivion


Re: Linux U++ libraries [message #53305 is a reply to message #53304] Fri, 27 March 2020 15:12 Go to previous messageGo to next message
koldo is currently offline  koldo
Messages: 3129
Registered: August 2008
Ultimate Member
Hi Olivion

Thank you for your effort.
Unfortunately .bm.in files seem to be just templates, where include and lib files are empty:
INCLUDE = "";
LIB = "";

In my previous output you can see this:
DOMAKE INFO: Configuring uppsrc/Makefile.in uppsrc/uMakefile.in CLANG.bm.in GCC.bm.in with pkg-config
/usr/bin/pkg-config
DOMAKE INFO: pkg-config: Found library gtk+-3.0
DOMAKE INFO: pkg-config: Found library x11
DOMAKE INFO: pkg-config: Found library libnotify
DOMAKE INFO: pkg-config: Found library freetype2
Somebody seems to search for folders, but .bm files are not created.

Edit: I have even changed permissions to HOME and sources folder, giving full permissions to anybody, but nothing changes.


Best regards
Iñaki

[Updated on: Fri, 27 March 2020 15:18]

Report message to a moderator

Re: Linux U++ libraries [message #53311 is a reply to message #53305] Sat, 28 March 2020 11:32 Go to previous messageGo to next message
deep is currently offline  deep
Messages: 220
Registered: July 2011
Location: Bangalore
Experienced Member
Hi,

I did fresh install on lubuntu 16.04 and upp nightly 2 days ago

I followed these steps

apt install libgtk-3-dev
sudo bash buildrequires.debian
./domake
./doinstall

I the copied GCC.bom.in to ~/.upp/theide folder. renamed to GCC.bom

Every thing seems to work ok.

My BOM file. Default file without modification.

BUILDER = "GCC";
COMMON_CPP_OPTIONS = "-std=c++14";
DEBUG_INFO = "2";
DEBUG_BLITZ = "1";
DEBUG_LINKMODE = "1";
DEBUG_OPTIONS = "-O0";
DEBUG_FLAGS = "";
RELEASE_BLITZ = "0";
RELEASE_LINKMODE = "1";
RELEASE_OPTIONS = "-O3 -ffunction-sections -fdata-sections";
RELEASE_SIZE_OPTIONS = "-Os -finline-limit=20 -ffunction-sections -fdata-sections";
RELEASE_FLAGS = "";
RELEASE_LINK = "-Wl,--gc-sections";
DEBUGGER = "gdb";
PATH = "";
INCLUDE = ""
LIB = "";
REMOTE_HOST = "";
REMOTE_OS = "";
REMOTE_TRANSFER = "";
REMOTE_MAP = "";
LINKMODE_LOCK = "0";


Warm Regards

Deepak
Re: Linux U++ libraries [message #53312 is a reply to message #53311] Sat, 28 March 2020 11:39 Go to previous messageGo to next message
koldo is currently offline  koldo
Messages: 3129
Registered: August 2008
Ultimate Member
Thank you Deepak

Do you mean that it is not necessary to fill the include/lib paths in .BM file?
Anyway, if the .BM files have to be set by hand, it seems there is something broken in Linux installer.

Edit: This is the .upp/theide folder just after install. No .BM file

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


Best regards
Iñaki

[Updated on: Sat, 28 March 2020 11:51]

Report message to a moderator

Re: Linux U++ libraries [message #53313 is a reply to message #53312] Sat, 28 March 2020 12:12 Go to previous messageGo to next message
koldo is currently offline  koldo
Messages: 3129
Registered: August 2008
Ultimate Member
Well, GCC finally works. The trick has been:
- Delete all U++ install
- sudo make + sudo make install
- Copy and rename .bm.in files in sources folder to .bm in /home/.../.upp/theide
- Set full permissions to all upp folders under HOME

Using CLANG, the message "There were errors" appears at the beginning, but even with "Verbose" on, no additional message is shown.

Please, it would be great if the person who maintains the Linux installer could take a look at this.


Best regards
Iñaki
Re: Linux U++ libraries [message #53314 is a reply to message #53313] Sat, 28 March 2020 13:14 Go to previous messageGo to next message
amrein is currently offline  amrein
Messages: 272
Registered: August 2008
Location: France
Experienced Member
Hi

Someone disabled *.bm files generation. I will fix this.

edit: done !

[Updated on: Sat, 28 March 2020 13:20]

Report message to a moderator

Re: Linux U++ libraries [message #53315 is a reply to message #53313] Sat, 28 March 2020 13:26 Go to previous messageGo to next message
mirek is currently offline  mirek
Messages: 12517
Registered: November 2005
Ultimate Member
koldo wrote on Sat, 28 March 2020 12:12
Well, GCC finally works. The trick has been:
- Delete all U++ install
- sudo make + sudo make install
- Copy and rename .bm.in files in sources folder to .bm in /home/.../.upp/theide
- Set full permissions to all upp folders under HOME

Using CLANG, the message "There were errors" appears at the beginning, but even with "Verbose" on, no additional message is shown.

Please, it would be great if the person who maintains the Linux installer could take a look at this.


I think the best is to avoid .bm completely and just setup these in theide when there is no .bm available.
Re: Linux U++ libraries [message #53316 is a reply to message #53315] Sat, 28 March 2020 15:05 Go to previous messageGo to next message
koldo is currently offline  koldo
Messages: 3129
Registered: August 2008
Ultimate Member
Quote:
I think the best is to avoid .bm completely and just setup these in theide when there is no .bm available.
In this case, as in Windows, it could be an "Automatic build methods setup.." option, although I think TheIDE should have to be fully ready after make install.

Other problem I have found is that without setting full permissions to all upp folders under HOME, the compiler complains because of lack of permissions. In summary:
- make does not work
- sudo make worka, but if TheIDE is not run with sudo, compiler complains because of lack of permissions


Best regards
Iñaki
Re: Linux U++ libraries [message #53317 is a reply to message #53288] Sat, 28 March 2020 16:43 Go to previous messageGo to next message
deep is currently offline  deep
Messages: 220
Registered: July 2011
Location: Bangalore
Experienced Member
If you do make and install steps as normal user then it works fine.

If do with sudo or root then you need to fix permissions.


Warm Regards

Deepak
Re: Linux U++ libraries [message #53318 is a reply to message #53316] Sat, 28 March 2020 17:19 Go to previous messageGo to next message
mirek is currently offline  mirek
Messages: 12517
Registered: November 2005
Ultimate Member
koldo wrote on Sat, 28 March 2020 15:05
Quote:
I think the best is to avoid .bm completely and just setup these in theide when there is no .bm available.
In this case, as in Windows, it could be an "Automatic build methods setup.." option, although I think TheIDE should have to be fully ready after make install.


Actually, this already works... And there is no difference really, if there are no .bm, ide makes them on start. You would not notice that happened.


[SOLVED] Re: Linux U++ libraries [message #53319 is a reply to message #53318] Sat, 28 March 2020 18:13 Go to previous messageGo to next message
koldo is currently offline  koldo
Messages: 3129
Registered: August 2008
Ultimate Member
When theide started, Build methods was empty.
However, I have reviewed the commands used, and I have realised that the first time I did a "sudo make", so because of that I ruined the normal install.


Best regards
Iñaki

[Updated on: Sat, 28 March 2020 18:30]

Report message to a moderator

Re: Linux U++ libraries [message #53321 is a reply to message #53318] Sat, 28 March 2020 21:10 Go to previous messageGo to previous message
amrein is currently offline  amrein
Messages: 272
Registered: August 2008
Location: France
Experienced Member
mirek wrote on Sat, 28 March 2020 17:19
koldo wrote on Sat, 28 March 2020 15:05
Quote:
I think the best is to avoid .bm completely and just setup these in theide when there is no .bm available.
In this case, as in Windows, it could be an "Automatic build methods setup.." option, although I think TheIDE should have to be fully ready after make install.


Actually, this already works... And there is no difference really, if there are no .bm, ide makes them on start. You would not notice that happened.




The .bm files created with "domake" are mainly for umk command line users.
The script copy raw GCC.bm.in and CLANG.bm.in as GCC.bm and CLANG.bm.

[Updated on: Sat, 28 March 2020 21:15]

Report message to a moderator

Previous Topic: IDE compilation error 'GdkDrawingContext' does not name a type
Next Topic: Nightly doesn't compile with make on linux
Goto Forum:
  


Current Time: Wed Jun 03 04:48:57 CEST 2020

Total time taken to generate the page: 0.01559 seconds