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

install via linuxbrew fails at gtk+3 dependency #181

Closed
mcampos-quinn opened this issue Apr 13, 2018 · 18 comments
Closed

install via linuxbrew fails at gtk+3 dependency #181

mcampos-quinn opened this issue Apr 13, 2018 · 18 comments

Comments

@mcampos-quinn
Copy link

Installing with linuxbrew fails on attempting to satisfy gtk+3 dependency.

It gives the error No package 'atk' found at that point. brew install atk informs me that atk is already installed. I'm hesitant to follow the recommendation to mess with environment variables (BASE_DEPENDENCIES_LIBS,BASE_DEPENDENCIES_CFLAGS) unless that's the only way to get this conflict out of the way.

I tried out the recommendations on this stackoverflow thread to install the dev package for libgtk3 (sudo apt-get install libgtk-3-dev) but got nowhere.

I opened a ticket on linuxbrew/homebrew-core that includes a gist (per their issue requirements) listing my config, build versions, etc.

I am motivated to investigate further, but I don't know where to start. Suggestions?

Thanks!

@privatezero
Copy link
Member

This might not be great advice, but I have consistently had problems with linuxbrew dependencies creating both redundant installs and conflicts with installs from standard Linux package managers.

A workaround I use sometimes is to manually install dependencies using apt-get and installing things from linuxbrew with the --ignore-dependencies tag. This often gets things running, at the expense of requiring more intervention for upgrades.

The actual dependencies for ltopers are here. You might be able to get it up and running this way by manually installing mm via linuxbrew (again maybe with the --ignore-dependencies tag if it causes problems) and then installing xmlstarlet via apt install xmlstarlet.

Perhaps @retokromer has a less hacky method though!

@kieranjol
Copy link

kieranjol commented Apr 13, 2018 via email

@mcampos-quinn
Copy link
Author

Thanks @privatezero and @kieranjol ! Yes, I had submitted a Linuxbrew ticket but I'm not going to hold my breath. In the past I had experienced a good deal of frustration with conflicts but not a weird circular failure like this.

I was hoping to avoid getting too hacky but yeah telling linuxbrew to --ignore-dependencies works. Maybe that's not totally a hack? I have certainly included plenty of my own in our project. Thanks for the tip!

I am happy to close the issue, or if it seems worth investigating further I can leave it open.
:)

@retokromer
Copy link
Member

I cannot check now the present issue, but generally speaking:

  • The reason why I like to compile from source is that this allows to consider the actual hardware. We use roughly two types of workstations under Ubuntu (with two and with four graphic cards), and I wish that in both settings the full computing power is used.
  • I try also to have formulae that are running not only under macOS, but also under Linux, including Linux on Windows. This allows to keep things updated quite easily.

@retokromer
Copy link
Member

I cannot install ltopers under Ubuntu on an empty computer, because the mm dependency is currently broken. I’m afraid, at the moment, I don’t have the time to try to fix this.

@privatezero
Copy link
Member

One thing I have considered for the audiorecorder brew formula is some system checks to deal with dependencies that don't play well with linux.

It is a little bit hacky, but do you think adding something along the lines of

if ! RUBY_PLATFORM.include?('linux')
depends_on "coreutils"
depends_on "mediamicroservices/mm/mm"
end
depends_on "xmlstarlet"

to the brew formula, and then adding instructions for a manual mm install sans dependencies would be a work around for this?

@retokromer
Copy link
Member

and then adding instructions for a manual mm install sans dependencies would be a work around for this?

Yes, I guess so, but untested.

(As we don’t necessarily need the more recent additions, we are still using in production the 2.3.1 version. I can test again in two weeks time or so.)

@retokromer
Copy link
Member

The general issue with gtk+3 should be solved now on Linuxbrew. Yet I haven’t tested if the installation of LTOpers works fine again on Linuxbrew.

@mcampos-quinn
Copy link
Author

There appears to be a solution in the works on the Linuxbrew end for the failing dependencies. I don't feel confident enough to rebuild Linuxbrew and test it (and I don't have time currently), but FYI...

If I find myself with time to test it out I will totally do so!

@dericed
Copy link
Member

dericed commented May 14, 2018

thx @mcampos-quinn

@retokromer
Copy link
Member

Is this resolved on your side, @mcampos-quinn?

@mcampos-quinn
Copy link
Author

I'll have to test this out later this week, probably on a VM? Thanks for checking on it.

@retokromer
Copy link
Member

@mcampos-quinn Is this still an issue?

@mcampos-quinn
Copy link
Author

I haven't had a chance to test further but I will close this issue.

@dericed
Copy link
Member

dericed commented Jan 20, 2019

I don’t use Linuxbrew but can any linuxbrew user confirm that this is resolved?

@kieranjol
Copy link

I don't use linuxbrew but I just tried it there on Ubuntu 18.04 but it seems to be ok:

==> Installing amiaopensource/amiaos/ltopers dependency: gtk+3
==> Downloading https://linuxbrew.bintray.com/bottles/gtk+3-3.24.3.x86_64_linux.
######################################################################## 100.0%
==> Pouring gtk 3-3.24.3.x86_64_linux.bottle.tar.gz
==> /home/linuxbrew/.linuxbrew/opt/glib/bin/glib-compile-schemas /home/linuxbrew/.linuxbrew/share/glib-2.0/schemas
🍺  /home/linuxbrew/.linuxbrew/Cellar/gtk+3/3.24.3: 1,393 files, 73.3MB

@kieranjol
Copy link

It ultimately fails on the goffice installation, which is a seperate issue:

==> Installing amiaopensource/amiaos/ltopers dependency: goffice
==> Downloading https://download.gnome.org/sources/goffice/0.10/goffice-0.10.44.tar.xz
==> Downloading from https://www.mirrorservice.org/sites/ftp.gnome.org/pub/GNOME/sources/goffice/0.10/goffice-0.10.44.tar.xz
######################################################################## 100.0%
==> ./configure --prefix=/home/linuxbrew/.linuxbrew/Cellar/goffice/0.10.44
Last 15 lines from /home/kieranjol/.cache/Homebrew/Logs/goffice/01.configure:
--prefix=/home/linuxbrew/.linuxbrew/Cellar/goffice/0.10.44

checking for a BSD-compatible install... /usr/bin/install -c
checking whether build environment is sane... yes
checking for a thread-safe mkdir -p... /bin/mkdir -p
checking for gawk... no
checking for mawk... mawk
checking whether make sets $(MAKE)... yes
checking whether make supports nested variables... yes
checking whether to enable maintainer-specific portions of Makefiles... yes
checking whether make supports nested variables... (cached) yes
checking whether NLS is requested... yes
Unescaped left brace in regex is illegal here in regex; marked by <-- HERE in m/^(.*)\${ <-- HERE ?([A-Z_]+)}?(.*)$/ at /home/linuxbrew/.linuxbrew/opt/intltool/bin/intltool-update line 1066.
checking for intltool >= 0.35.0...  found
configure: error: Your intltool is too old.  You need intltool 0.35.0 or later.

READ THIS: https://github.com/Linuxbrew/brew/wiki/troubleshooting
Please do not report this issue to Homebrew/brew or Homebrew/core,
which support macOS only."

@retokromer
Copy link
Member

Indeed, the gtk+3 issue in Linuxbrew is resolved since many months now.

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