Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

linux build recommendations #84

Open
kajukenbo opened this issue Sep 24, 2020 · 9 comments
Open

linux build recommendations #84

kajukenbo opened this issue Sep 24, 2020 · 9 comments

Comments

@kajukenbo
Copy link

kajukenbo commented Sep 24, 2020

Dumb questions, but I am going in circles with internet searches.
I am trying a sample build on Debian systems, but I am unfamiliar with cmake.
I am used to normal makefiles, make clean install, etc.

Is there a recommended Linux platform to build on?
A list of build dependencies?
A list of cmake flags / settings that are needed?

The error logs are not very helpful either.
-- Configuring incomplete, errors occurred!
See also ".../nvi2-linux/CMakeFiles/CMakeOutput.log".
See also ".../nvi2-linux/CMakeFiles/CMakeError.log".

$ cmake --version
cmake version 3.10.2

I thought it might be worth a shot to ask.

The instructions in the wiki seem outdated as well, i.e. references to "cmake -i" which no longer seems to be supported.

Thanks for any advice you might have.

I would much rather use nvi over slow, bloated vim implementations.
But the versions shipping in most Linux distros are 1.81.6 circa 2007 at best.
Including several quirks and bugs, as you may know.

@DidacGit
Copy link

I'm also unable to build it in Arch Linux. It's sad how there are no maintained vi implementations for Linux.

@matijaskala
Copy link
Contributor

mkdir build
cd build
cmake -DCMAKE_C_COMPILER=clang ..

This branch is slightly easier to compile on linux distros other than Gentoo or Mageia.

@kajukenbo
Copy link
Author

@matijaskala

Thank you. I will give it a try sometime in the next week or so.

@frno7
Copy link
Contributor

frno7 commented Feb 1, 2021

@matijaskala, I’ve made a package app-editors/nvi2 for Gentoo, with a dependency on sys-libs/db:1. Only the (9999) Git HEAD variant so far. Also, commit f804087 helps a bit with GCC and GNU libc.

@kajukenbo
Copy link
Author

@matijaskala, I’ve made a package app-editors/nvi2 for Gentoo, with a dependency on sys-libs/db:1. Only the (9999) Git HEAD variant so far. Also, commit f804087 helps a bit with GCC and GNU libc.

Interesting. Thank you for the effort.
I've been considering switching from Devuan to a Gentoo base.
This might be an excuse to try out "Redcore Linux"

@kajukenbo
Copy link
Author

@frno7
I have a basic Gentoo build environment using a live-usb image of Calculate Linux.
I might post a HOWTO if I have consistent build results, but I am currently stuck.

As your note indicates, I need "sys-libs/db:1"
Any tips on where / how to get it? DuckDuckGo is failing me here.

guest@calculate /var/db/repos/frno7 $ sudo emerge app-editors/nvi2
Calculating dependencies... done!

The following keyword changes are necessary to proceed:
(see "package.accept_keywords" in the portage(5) man page for more details)
# required by app-editors/nvi2 (argument)
=app-editors/nvi2-9999 **

NOTE: The --autounmask-keep-masks option will prevent emerge
from creating package.unmask or ** keyword changes.

Use --autounmask-write to write changes to config files (honoring
CONFIG_PROTECT). Carefully examine the list of proposed changes,
paying special attention to mask or keyword changes that may expose
experimental or unstable packages.

* In order to avoid wasting time, backtracking has terminated early
* due to the above autounmask change(s). The --autounmask-backtrack=y
* option can be used to force further backtracking, but there is no
* guarantee that it will produce a solution.

emerge: there are no ebuilds to satisfy "sys-libs/db:1".
(dependency required by "app-editors/nvi2-9999::frno7" [ebuild])
(dependency required by "app-editors/nvi2" [argument])

@frno7
Copy link
Contributor

frno7 commented Feb 3, 2021

As your note indicates, I need "sys-libs/db:1" Any tips on where / how to get it?

I believe it comes with Gentoo proper. What does equery m sys-libs/db say? I have, shortened for brevity:

Maintainer:  base-system@gentoo.org (Gentoo Base System)
Upstream:    None specified
Homepage:    http://www.oracle.com/technetwork/database/database-technologies/berkeleydb/overview/index.html
Location:    /usr/portage/sys-libs/db
Keywords:    1.85-r4:1: amd64 arm arm64 hppa ppc ppc64 s390 sparc x86 ~alpha ~ia64 ~m68k ~mips
Keywords:    3.2.9_p2-r1:3: amd64 arm arm64 hppa ppc ppc64 s390 sparc x86 ~alpha ~ia64 ~m68k ~mips
Keywords:    4.2.52_p5-r3:4.2: amd64 arm arm64 hppa ppc ppc64 s390 sparc x86 ~alpha ~ia64 ~m68k ~mips ~x64-macos
...
Keywords:    18.1.32:18.1: 
Keywords:    18.1.40:18.1: ~alpha ~amd64 ~amd64-linux ~arm ~arm64 ~hppa ~ia64 ~m68k ~ppc ~ppc-macos ~ppc64 ~riscv ~s390 ~sparc ~sparc-solaris ~sparc64-solaris ~x64-macos ~x64-solaris ~x86 ~x86-solaris
License:     Sleepycat

The dependency is on 1.85-r4:1, as listed above. Gentoo supplies db-1.85-r4.ebuild, and I suppose you could use it with in an overlay for your Calculate Linux, if it’s missing.

The following keyword changes are necessary to proceed:
(see "package.accept_keywords" in the portage(5) man page for more details)
# required by app-editors/nvi2 (argument)
=app-editors/nvi2-9999 **

This is expected, because I’m waiting for @lichray to tag a version suitable for GCC and GNU libc, perhaps 2.2.1 or suchlike. In the meantime, the package (having 9999 as Gentoo has it) builds Git HEAD of nvi2, and is therefore marked unstable, needing an accept_keywords directive to proceed with the installation.

@kajukenbo
Copy link
Author

Sorry, I forgot to give an update.
I did get the compile finished on Calculate Linux.
I will post my notes when I have some time after I am finished testing.

@jsbmg
Copy link

jsbmg commented Dec 9, 2021

I was able to compile @matijaskalal's fork with US_DB=off on Fedora 34.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

5 participants