public inbox for gentoo-user@lists.gentoo.org
 help / color / mirror / Atom feed
* [gentoo-user] How to cmake?
@ 2021-08-26  2:49 Peter Humphrey
  2021-08-26  3:00 ` Jack
  2021-08-26  9:49 ` tastytea
  0 siblings, 2 replies; 8+ messages in thread
From: Peter Humphrey @ 2021-08-26  2:49 UTC (permalink / raw
  To: gentoo-user

Hello list,

I wanted to try KDFM, which I read about in Linux Format. It's a file manager 
with some interesting features. So I went to sourceforge.net/projects/kdfm, 
downloaded the source and extracted it to /usr/local/src/kdfm-code.

What do I do next? I tried 'cmake ./src' and similar and got Unknown CMake 
command "qt5_wrap_ui". Googling for that found a few helpful pages, but I 
think I'd need to be a Qt5 developer to understand them.

Can anyone point me in the direction to find out what to do?

-- 
Regards,
Peter.





^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [gentoo-user] How to cmake?
  2021-08-26  2:49 [gentoo-user] How to cmake? Peter Humphrey
@ 2021-08-26  3:00 ` Jack
  2021-08-26  9:49 ` tastytea
  1 sibling, 0 replies; 8+ messages in thread
From: Jack @ 2021-08-26  3:00 UTC (permalink / raw
  To: gentoo-user

On 8/25/21 22:49, Peter Humphrey wrote:
> Hello list,
>
> I wanted to try KDFM, which I read about in Linux Format. It's a file manager
> with some interesting features. So I went to sourceforge.net/projects/kdfm,
> downloaded the source and extracted it to /usr/local/src/kdfm-code.
>
> What do I do next? I tried 'cmake ./src' and similar and got Unknown CMake
> command "qt5_wrap_ui". Googling for that found a few helpful pages, but I
> think I'd need to be a Qt5 developer to understand them.
>
> Can anyone point me in the direction to find out what to do?
>
Minor point, I would recommend creating a build subid, cc into it and 
the "cmake path-to-source-dir".  I think most KDE stuff doesn't like 
building in-tree.  Equery doesn't identify any package for qt5_wrap_ui.  
If it's part of the source, then you might need some parameter for 
cmake, or else there's another dependency not packaged in Gentoo.

Jack



^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [gentoo-user] How to cmake?
  2021-08-26  2:49 [gentoo-user] How to cmake? Peter Humphrey
  2021-08-26  3:00 ` Jack
@ 2021-08-26  9:49 ` tastytea
  2021-08-26 14:24   ` Peter Humphrey
  1 sibling, 1 reply; 8+ messages in thread
From: tastytea @ 2021-08-26  9:49 UTC (permalink / raw
  To: gentoo-user

[-- Attachment #1: Type: text/plain, Size: 1090 bytes --]

On 2021-08-26 03:49+0100 Peter Humphrey <peter@prh.myzen.co.uk> wrote:

> Hello list,
> 
> I wanted to try KDFM, which I read about in Linux Format. It's a file
> manager with some interesting features. So I went to
> sourceforge.net/projects/kdfm, downloaded the source and extracted it
> to /usr/local/src/kdfm-code.
> 
> What do I do next? I tried 'cmake ./src' and similar and got Unknown
> CMake command "qt5_wrap_ui". Googling for that found a few helpful
> pages, but I think I'd need to be a Qt5 developer to understand them.
> 
> Can anyone point me in the direction to find out what to do?
> 

You need to run cmake in the directory that has the top-level
CMakeLists.txt. Use cmake -S . -B build from the top-level directory.
This whill use . as source directory and build as build directory.
You will need kde-frameworks/extra-cmake-modules.¹

Kind regards, tastytea

¹ <https://sourceforge.net/p/kdfm/code/ci/master/tree/CMakeLists.txt#l8>

-- 
Get my PGP key with `gpg --locate-keys tastytea@tastytea.de` or at
<https://tastytea.de/tastytea.asc>.

[-- Attachment #2: Digitale Signatur von OpenPGP --]
[-- Type: application/pgp-signature, Size: 228 bytes --]

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [gentoo-user] How to cmake?
  2021-08-26  9:49 ` tastytea
@ 2021-08-26 14:24   ` Peter Humphrey
  2021-08-26 14:39     ` tastytea
  2021-08-26 14:40     ` Mark Knecht
  0 siblings, 2 replies; 8+ messages in thread
From: Peter Humphrey @ 2021-08-26 14:24 UTC (permalink / raw
  To: gentoo-user

On Thursday, 26 August 2021 10:49:38 BST tastytea wrote:

> You need to run cmake in the directory that has the top-level
> CMakeLists.txt. Use cmake -S . -B build from the top-level directory.
> This whill use . as source directory and build as build directory.
> You will need kde-frameworks/extra-cmake-modules.¹

Okay, I did that. It ran for much longer, and threw no errors, and once again 
it ended with 'Build files have been written to: /usr/local/src/kdfm-code/src'. 
Then:

wstn /usr/local/src/kdfm-code # cmake ./src
QStandardPaths: XDG_RUNTIME_DIR not set, defaulting to '/tmp/runtime-
root'
QStandardPaths: XDG_RUNTIME_DIR not set, defaulting to '/tmp/runtime-
root'
QStandardPaths: XDG_RUNTIME_DIR not set, defaulting to '/tmp/runtime-
root'
-- Could not set up the appstream test. appstreamcli is missing.
[...]
-- Configuring done
[...]
-- Generating done
-- Build files have been written to: /usr/local/src/kdfm-code/src

Google hasn't helped with appstreamcli being missing.

Have the build files been written or not? What do I do with them?

> ¹ <https://sourceforge.net/p/kdfm/code/ci/master/tree/CMakeLists.txt#l8>

I don't see the relevance of that.

Sorry to be thick, but my coding days are >30 years behind me, and that 
was in a different area entirely.

-- 
Regards,
Peter.





^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [gentoo-user] How to cmake?
  2021-08-26 14:24   ` Peter Humphrey
@ 2021-08-26 14:39     ` tastytea
  2021-08-26 14:59       ` Peter Humphrey
  2021-08-26 14:40     ` Mark Knecht
  1 sibling, 1 reply; 8+ messages in thread
From: tastytea @ 2021-08-26 14:39 UTC (permalink / raw
  To: gentoo-user

[-- Attachment #1: Type: text/plain, Size: 1214 bytes --]

On 2021-08-26 15:24+0100 Peter Humphrey <peter@prh.myzen.co.uk> wrote:

> On Thursday, 26 August 2021 10:49:38 BST tastytea wrote:
> 
> > You need to run cmake in the directory that has the top-level
> > CMakeLists.txt. Use cmake -S . -B build from the top-level
> > directory. This whill use . as source directory and build as build
> > directory. You will need kde-frameworks/extra-cmake-modules.¹  
> 
> Okay, I did that. It ran for much longer, and threw no errors, and
> once again it ended with 'Build files have been written to:
> /usr/local/src/kdfm-code/src'. Then:

Don't run cmake in src/, run it in the directory src is in.

> -- Could not set up the appstream test. appstreamcli is missing.

appstreamcli is in dev-libs/appstream.

> Have the build files been written or not? What do I do with them?

# This configures the build (checks for dependencies and so on)
cmake -S . -B build 
# This compiles the sources
cmake --build build

The binary is in ./build/src/kdfm – you can install it globally with 
sudo cmake --install build

Kind regards, tastytea

-- 
Get my PGP key with `gpg --locate-keys tastytea@tastytea.de` or at
<https://tastytea.de/tastytea.asc>.

[-- Attachment #2: Digitale Signatur von OpenPGP --]
[-- Type: application/pgp-signature, Size: 228 bytes --]

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [gentoo-user] How to cmake?
  2021-08-26 14:24   ` Peter Humphrey
  2021-08-26 14:39     ` tastytea
@ 2021-08-26 14:40     ` Mark Knecht
  1 sibling, 0 replies; 8+ messages in thread
From: Mark Knecht @ 2021-08-26 14:40 UTC (permalink / raw
  To: Gentoo User

[-- Attachment #1: Type: text/plain, Size: 2215 bytes --]

On Thu, Aug 26, 2021 at 7:25 AM Peter Humphrey <peter@prh.myzen.co.uk>
wrote:
>
> On Thursday, 26 August 2021 10:49:38 BST tastytea wrote:
>
> > You need to run cmake in the directory that has the top-level
> > CMakeLists.txt. Use cmake -S . -B build from the top-level directory.
> > This whill use . as source directory and build as build directory.
> > You will need kde-frameworks/extra-cmake-modules.¹
>
> Okay, I did that. It ran for much longer, and threw no errors, and once
again
> it ended with 'Build files have been written to:
/usr/local/src/kdfm-code/src'.
> Then:
>
> wstn /usr/local/src/kdfm-code # cmake ./src
> QStandardPaths: XDG_RUNTIME_DIR not set, defaulting to '/tmp/runtime-
> root'
> QStandardPaths: XDG_RUNTIME_DIR not set, defaulting to '/tmp/runtime-
> root'
> QStandardPaths: XDG_RUNTIME_DIR not set, defaulting to '/tmp/runtime-
> root'
> -- Could not set up the appstream test. appstreamcli is missing.
> [...]
> -- Configuring done
> [...]
> -- Generating done
> -- Build files have been written to: /usr/local/src/kdfm-code/src
>
> Google hasn't helped with appstreamcli being missing.
>
> Have the build files been written or not? What do I do with them?
>
> > ¹ <https://sourceforge.net/p/kdfm/code/ci/master/tree/CMakeLists.txt#l8>
>
> I don't see the relevance of that.
>
> Sorry to be thick, but my coding days are >30 years behind me, and that
> was in a different area entirely.
>
> --
> Regards,
> Peter.

Peter,
   I'm no expert at this but a year ago I wanted to try fixing a few bugs
in the KDE solitaire game and was faced with understanding and building the
code. After numerous problems like yours above I ended up deciding I needed
a development environment and chose KDevelop. Once I did that, with a
little more study, I was able to build the program and run it. You might
give something like that a try.

   On the downside, KDevelop is pretty big and heavy. I don't know how the
updates run on that program but building it would likely be a bit of a time
sink if you don't already have it installed and then keeping it updated
could possibly be more time. On Ubuntu it's a non-issue.

Good luck,
Mark

[-- Attachment #2: Type: text/html, Size: 2728 bytes --]

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [gentoo-user] How to cmake?
  2021-08-26 14:39     ` tastytea
@ 2021-08-26 14:59       ` Peter Humphrey
  2021-08-26 16:28         ` tastytea
  0 siblings, 1 reply; 8+ messages in thread
From: Peter Humphrey @ 2021-08-26 14:59 UTC (permalink / raw
  To: gentoo-user

On Thursday, 26 August 2021 15:39:53 BST tastytea wrote:

> Don't run cmake in src/, run it in the directory src is in.

I have been doing so.

--->8

> # This configures the build (checks for dependencies and so on)
> cmake -S . -B build
> # This compiles the sources
> cmake --build build
> 
> The binary is in ./build/src/kdfm – you can install it globally with
> sudo cmake --install build

Excellent! Many thanks, kind Sir!

Aside: how much training and experience would be needed to reach that 
level of competence?

-- 
Regards,
Peter.





^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [gentoo-user] How to cmake?
  2021-08-26 14:59       ` Peter Humphrey
@ 2021-08-26 16:28         ` tastytea
  0 siblings, 0 replies; 8+ messages in thread
From: tastytea @ 2021-08-26 16:28 UTC (permalink / raw
  To: gentoo-user

[-- Attachment #1: Type: text/plain, Size: 1030 bytes --]

On 2021-08-26 15:59+0100 Peter Humphrey <peter@prh.myzen.co.uk> wrote:

> On Thursday, 26 August 2021 15:39:53 BST tastytea wrote:
> 
> > Don't run cmake in src/, run it in the directory src is in.  
> 
> I have been doing so.
> 
> --->8  
> 
> > # This configures the build (checks for dependencies and so on)
> > cmake -S . -B build
> > # This compiles the sources
> > cmake --build build
> > 
> > The binary is in ./build/src/kdfm – you can install it globally with
> > sudo cmake --install build  
> 
> Excellent! Many thanks, kind Sir!

You're welcome. 😊

> Aside: how much training and experience would be needed to reach that 
> level of competence?

It's really easy… if you're a programmer who uses cmake every day. 😄
I would expect projects to put this info into the readme file (and most
do), but apparently they didn't think that users might want to compile
it? 🙄

-- 
Get my PGP key with `gpg --locate-keys tastytea@tastytea.de` or at
<https://tastytea.de/tastytea.asc>.

[-- Attachment #2: Digitale Signatur von OpenPGP --]
[-- Type: application/pgp-signature, Size: 228 bytes --]

^ permalink raw reply	[flat|nested] 8+ messages in thread

end of thread, other threads:[~2021-08-26 16:28 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2021-08-26  2:49 [gentoo-user] How to cmake? Peter Humphrey
2021-08-26  3:00 ` Jack
2021-08-26  9:49 ` tastytea
2021-08-26 14:24   ` Peter Humphrey
2021-08-26 14:39     ` tastytea
2021-08-26 14:59       ` Peter Humphrey
2021-08-26 16:28         ` tastytea
2021-08-26 14:40     ` Mark Knecht

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox