Build on Mint 18

classic Classic list List threaded Threaded
7 messages Options
Reply | Threaded
Open this post in threaded view
|

Build on Mint 18

Civil Guy
I'd like to build the daily version on Mint 18.

'make' says that it can't find GL/gl.h.  What's the best source for this?

(It looked like libglu1-mesa-dev would be the most likely debian package source, but 'Synaptic' says that its a broken package and won't install it.)
Reply | Threaded
Open this post in threaded view
|

Re: Build on Mint 18

LordOfBikes
Administrator
Basically, this shouldn't be a problem.

But your information is too vague for a solution.

In case we have incomplete build instructions, it would be great to know, which instructions you followed to build LibreCAD from source.
Do you build from command line or in Qt Creator?
What is your environment (versions and kind of compiler, Qt, boost)?

It is recommend to post a complete build log to understand what's exactly missing.
You can call make like this:
make -j # >generated/build.log 2>&1
Replace the # with a number less or equal the number of CPU cores.
There will be no output during build, as stdout and stderr are redirected to the file build.log in the generated folder.
Then share the build.log file e.g. using cloud space, pastebin.com or upload with reply.

Armin
Reply | Threaded
Open this post in threaded view
|

Re: Build on Mint 18

Civil Guy
Thanks for your patience.

I'd like to build the most recent version of LibreCAD using qmake and make from the command line.

david@david-ThinkPad-T410 ~ $ sudo apt-get install g++ gcc make git-core qtbase5-dev libqt5svg5-dev\
>     qttools5-dev qtchooser qttools5-dev-tools libmuparser-dev librsvg2-bin\
>     libboost-dev libfreetype6-dev libicu-dev pkg-config
Reading package lists... Done
Building dependency tree      
Reading state information... Done
g++ is already the newest version (4:5.3.1-1ubuntu1).
gcc is already the newest version (4:5.3.1-1ubuntu1).
libboost-dev is already the newest version (1.58.0.1ubuntu1).
make is already the newest version (4.1-6).
pkg-config is already the newest version (0.29.1-0ubuntu1).
qtchooser is already the newest version (52-gae5eeef-2build1~gcc5.2).
libmuparser-dev is already the newest version (2.2.3-6).
librsvg2-bin is already the newest version (2.40.13-3).
libicu-dev is already the newest version (55.1-7ubuntu0.4).
Some packages could not be installed. This may mean that you have
requested an impossible situation or if you are using the unstable
distribution that some required packages have not yet been created
or been moved out of Incoming.
The following information may help to resolve the situation:

The following packages have unmet dependencies:
 libfreetype6-dev : Depends: zlib1g-dev but it is not going to be installed or
                             libz-dev
                    Depends: libpng-dev
 qtbase5-dev : Depends: libgl1-mesa-dev but it is not going to be installed or
                        libgl-dev
               Depends: libgles2-mesa-dev but it is not going to be installed or
                        libgles2-dev but it is not installable
               Depends: libglu1-mesa-dev but it is not going to be installed or
                        libglu-dev
               Depends: libqt5core5a (= 5.5.1+dfsg-16ubuntu7.2) but 5.5.1+dfsg-16ubuntu7.5 is to be installed
               Depends: libqt5dbus5 (= 5.5.1+dfsg-16ubuntu7.2) but 5.5.1+dfsg-16ubuntu7.5 is to be installed
               Depends: libqt5gui5 (= 5.5.1+dfsg-16ubuntu7.2) but 5.5.1+dfsg-16ubuntu7.5 is to be installed
               Depends: libqt5network5 (= 5.5.1+dfsg-16ubuntu7.2) but 5.5.1+dfsg-16ubuntu7.5 is to be installed
               Depends: libqt5printsupport5 (= 5.5.1+dfsg-16ubuntu7.2) but 5.5.1+dfsg-16ubuntu7.5 is to be installed
               Depends: libqt5sql5 (= 5.5.1+dfsg-16ubuntu7.2) but 5.5.1+dfsg-16ubuntu7.5 is to be installed
               Depends: libqt5widgets5 (= 5.5.1+dfsg-16ubuntu7.2) but 5.5.1+dfsg-16ubuntu7.5 is to be installed
               Depends: libqt5xml5 (= 5.5.1+dfsg-16ubuntu7.2) but 5.5.1+dfsg-16ubuntu7.5 is to be installed
 qttools5-dev : Depends: libqt5clucene5 (= 5.5.1-3build1) but 5.5.1-3ubuntu0.1 is to be installed
                Depends: libqt5help5 (= 5.5.1-3build1) but 5.5.1-3ubuntu0.1 is to be installed
E: Unable to correct problems, you have held broken packages.
Reply | Threaded
Open this post in threaded view
|

Re: Build on Mint 18

LordOfBikes
Administrator
Civil Guy wrote
david@david-ThinkPad-T410 ~ $ sudo apt-get install g++ gcc make git-core qtbase5-dev libqt5svg5-dev\
>     qttools5-dev qtchooser qttools5-dev-tools libmuparser-dev librsvg2-bin\
>     libboost-dev libfreetype6-dev libicu-dev pkg-config
I've fired up a Linux Mint 18.3 virtual machine and used your command to install build dependencies.
Beside choosing Qt5 (Qt4 was default after installation) building LibreCAD from source worked fine for me.

What is your exact OS version?
Please post the output of following commands for further investigation:
uname -a
cat /etc/issue
qmake -v
qtchooser -print-env

My VM installed all your missing dependencies without issues.
Is your Mint installation new or did you start earlier with several version updates?

Armin
Reply | Threaded
Open this post in threaded view
|

Re: Build on Mint 18

Civil Guy
david@david-ThinkPad-T410 ~ $ uname -a
Linux david-ThinkPad-T410 4.15.0-36-generic #39~16.04.1-Ubuntu SMP Tue Sep 25 08:59:23 UTC 2018 x86_64 x86_64 x86_64 GNU/Linux
david@david-ThinkPad-T410 ~ $ cat /etc/issue
Linux Mint 18.3 Sylvia \n \l

david@david-ThinkPad-T410 ~ $ /opt/Qt/5.10.1/gcc_64/bin/qmake -v
QMake version 3.1
Using Qt version 5.10.1 in /opt/Qt/5.10.1/gcc_64/lib
david@david-ThinkPad-T410 ~ $ qtchooser -print-env
QT_SELECT="default"
QTTOOLDIR="/usr/lib/x86_64-linux-gnu/qt4/bin"
QTLIBDIR="/usr/lib/x86_64-linux-gnu"

...It was a new install of Mint 18.

As you can probably see, my installation of Qt and associated qmake is messed up.  I think (lost in confusion, I didn't keep good notes) that when I saw the first apt-get results, I figured that there must be something else I needed to do to get Qt, Qt Creator, and qmake installed.  I went to the Qt web site which recommended their online installer.  Still lost, but reading a bit more, I figured that the best place to install the new software was under /opt, keeping it separate from /usr software.

I see from the above (hadn't known that test) that the environment variables are messed up.  What's the best way to reset those properly?
Reply | Threaded
Open this post in threaded view
|

Re: Build on Mint 18

LordOfBikes
Administrator
The environment was the same for me after a fresh Mint setup.
Seems Mint is using Qt4 as default.
To change this type
export QT_SELECT=qt5
This is only temporary, here are some hints how to set this permanent:
https://unix.stackexchange.com/questions/116254/how-do-i-change-which-version-of-qt-is-used-for-qmake

qmake -v must run without the whole path and should show a Qt5 version.
When you run Qt5 qmake with absolute path in this environment, it will create Makefiles with Qt4 settings, as this is the system default. These Makefiles will very likely produce the error from your first post.

Mint 18.3 should install Qt5.5 with apt, which is sufficient for LibreCAD. I don't know, if qtchooser recognizes your manual installed Qt5.10. You can check this with
qtchooser -list-versions
Anyway there seems to be something messed up with apt. As I said, on my fresh Mint, apt installed all packages including dependencies.
You can try to fix this with
sudo apt-get -f install
If this doesn't work, think back, if you have modified Mints package source settings in past.

Armin
Reply | Threaded
Open this post in threaded view
|

Re: Build on Mint 18

Civil Guy
Well... I might have figured out better what the problem is.  Taking one example from the my initial run of apt-get install:

apt-get won't install libfreetype6-dev because it depends on zlib1g-dev, which it can't install.

The issue seems to be that zlib1g-dev itself depends on zlib1g version 1.2.8.dfsg-2unbuntu4.  The version of zlib1g that's on my computer is instead 1.2.8.dfsg-2unbuntu4.1.  Hey, that's what came with the Mint installation.

As far as I can tell, I'd need to track down and fix each version inconsistency.

Maybe I could straighten all of this out, but I'm not sure I want to take the trouble.  I've got another computer with Ubuntu on it, and that seems to work better, so I'll probably just switch to that.  But at least I've got some better idea of what I'd be up against here.