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

Attempting to add Darwin support for QGIS #71398

Open
ersinakinci opened this issue Oct 19, 2019 · 12 comments · Fixed by #150595
Open

Attempting to add Darwin support for QGIS #71398

ersinakinci opened this issue Oct 19, 2019 · 12 comments · Fixed by #150595
Labels
0.kind: bug 6.topic: darwin Running or building packages on Darwin 6.topic: python

Comments

@ersinakinci
Copy link
Contributor

ersinakinci commented Oct 19, 2019

Describe the bug
I'm attempting to add Darwin support for QGIS. As my first attempt, I've tried the naive path of changing https://github.com/NixOS/nixpkgs/blob/master/pkgs/applications/gis/qgis/unwrapped.nix#L54 from platforms = with lib.platforms; linux; to platforms = with lib.platforms; all; and running nix-shell. However, when building the dependencies, I run into this problem with the python module for Qscintilla:

Kairos:tmp ersin$ nix-shell -E "with import ../pkgs/top-level/impure.nix {}; libsForQt5.callPackage ../pkgs/applications/gis/qgis/unwrapped.nix { withGrass = false; }"
these derivations will be built:
  /nix/store/s9fx27g8p4m2q64wgk7lsrp44jsjka8i-python3.7-qscintilla-2.9.4.drv
  /nix/store/zdldyips2m3hwf1a2dc8dl9jh3llc17x-qtwebkit-5.212-alpha-01-26-2018.drv
these paths will be fetched (1.76 MiB download, 13.04 MiB unpacked):
  /nix/store/1y6wd1rk8v4krkhlx8cwsc6g27f0cy7d-qtwebchannel-5.11.3-dev
  /nix/store/ax02vbvxwjd3gwb7pqg34sjmvvq73iz3-qtsensors-5.11.3-dev
  /nix/store/c6pwax6zryik48z21lspxkmgfdfjhz8h-qtmultimedia-5.11.3-dev
  /nix/store/lm851ic3y8haisljnbkz0h0ffcflffrx-qtxmlpatterns-5.11.3-dev
  /nix/store/n3yknmr2sqlg0p3h53j44xgp5yhsjwv7-qttools-5.11.3-dev
  /nix/store/pgqklnbhzl0ykywv0zzwsn80wp9vg1by-qtdeclarative-5.11.3-dev
  /nix/store/xdkvl53b55zjm0k3g99cnbh17abrnvmn-qwt-6.1.2
  /nix/store/zcsyp52kc4dwnkw3sl8dmnpykmlllygh-qtlocation-5.11.3-dev
copying path '/nix/store/pgqklnbhzl0ykywv0zzwsn80wp9vg1by-qtdeclarative-5.11.3-dev' from 'https://cache.nixos.org'...
building '/nix/store/s9fx27g8p4m2q64wgk7lsrp44jsjka8i-python3.7-qscintilla-2.9.4.drv'...
Sourcing python-catch-conflicts-hook.sh
Sourcing python-remove-bin-bytecode-hook.sh
Sourcing python-imports-check-hook.sh
Using pythonImportsCheckPhase
unpacking sources
unpacking source archive /nix/store/7imkmyxwg710gx6dlj3n86rkdyw6yp8l-QScintilla_gpl-2.9.4.zip
source root is QScintilla_gpl-2.9.4
setting SOURCE_DATE_EPOCH to timestamp 1482706914 of file QScintilla_gpl-2.9.4/example-Qt4Qt5/mainwindow.h
patching sources
configuring
/nix/store/v2xkr37gffg5gfscjmm5dj2bbh9bqjh0-python3.7-pyqt-5.13.0/bin:
/nix/store/v2xkr37gffg5gfscjmm5dj2bbh9bqjh0-python3.7-pyqt-5.13.0/lib:
/nix/store/v2xkr37gffg5gfscjmm5dj2bbh9bqjh0-python3.7-pyqt-5.13.0/lib/python3.7:
/nix/store/v2xkr37gffg5gfscjmm5dj2bbh9bqjh0-python3.7-pyqt-5.13.0/lib/python3.7/site-packages:
/nix/store/v2xkr37gffg5gfscjmm5dj2bbh9bqjh0-python3.7-pyqt-5.13.0/lib/python3.7/site-packages/PyQt5-5.13.0.dist-info:
/nix/store/v2xkr37gffg5gfscjmm5dj2bbh9bqjh0-python3.7-pyqt-5.13.0/lib/python3.7/site-packages/dbus:
/nix/store/v2xkr37gffg5gfscjmm5dj2bbh9bqjh0-python3.7-pyqt-5.13.0/lib/python3.7/site-packages/dbus/mainloop:
/nix/store/v2xkr37gffg5gfscjmm5dj2bbh9bqjh0-python3.7-pyqt-5.13.0/lib/python3.7/site-packages/PyQt5:
/nix/store/v2xkr37gffg5gfscjmm5dj2bbh9bqjh0-python3.7-pyqt-5.13.0/lib/python3.7/site-packages/PyQt5/uic:
/nix/store/v2xkr37gffg5gfscjmm5dj2bbh9bqjh0-python3.7-pyqt-5.13.0/lib/python3.7/site-packages/PyQt5/uic/port_v2:
/nix/store/v2xkr37gffg5gfscjmm5dj2bbh9bqjh0-python3.7-pyqt-5.13.0/lib/python3.7/site-packages/PyQt5/uic/port_v3:
/nix/store/v2xkr37gffg5gfscjmm5dj2bbh9bqjh0-python3.7-pyqt-5.13.0/lib/python3.7/site-packages/PyQt5/uic/widget-plugins:
/nix/store/v2xkr37gffg5gfscjmm5dj2bbh9bqjh0-python3.7-pyqt-5.13.0/lib/python3.7/site-packages/PyQt5/uic/Loader:
/nix/store/v2xkr37gffg5gfscjmm5dj2bbh9bqjh0-python3.7-pyqt-5.13.0/lib/python3.7/site-packages/PyQt5/uic/Compiler:
/nix/store/v2xkr37gffg5gfscjmm5dj2bbh9bqjh0-python3.7-pyqt-5.13.0/share:
/nix/store/v2xkr37gffg5gfscjmm5dj2bbh9bqjh0-python3.7-pyqt-5.13.0/share/sip:
/nix/store/v2xkr37gffg5gfscjmm5dj2bbh9bqjh0-python3.7-pyqt-5.13.0/share/sip/PyQt5:
/nix/store/v2xkr37gffg5gfscjmm5dj2bbh9bqjh0-python3.7-pyqt-5.13.0/share/sip/PyQt5/QtWebSockets:
/nix/store/v2xkr37gffg5gfscjmm5dj2bbh9bqjh0-python3.7-pyqt-5.13.0/share/sip/PyQt5/QtPrintSupport:
/nix/store/v2xkr37gffg5gfscjmm5dj2bbh9bqjh0-python3.7-pyqt-5.13.0/share/sip/PyQt5/QtOpenGL:
/nix/store/v2xkr37gffg5gfscjmm5dj2bbh9bqjh0-python3.7-pyqt-5.13.0/share/sip/PyQt5/QtQml:
/nix/store/v2xkr37gffg5gfscjmm5dj2bbh9bqjh0-python3.7-pyqt-5.13.0/share/sip/PyQt5/QtBluetooth:
/nix/store/v2xkr37gffg5gfscjmm5dj2bbh9bqjh0-python3.7-pyqt-5.13.0/share/sip/PyQt5/QtNetwork:
/nix/store/v2xkr37gffg5gfscjmm5dj2bbh9bqjh0-python3.7-pyqt-5.13.0/share/sip/PyQt5/QtDesigner:
/nix/store/v2xkr37gffg5gfscjmm5dj2bbh9bqjh0-python3.7-pyqt-5.13.0/share/sip/PyQt5/QtMacExtras:
/nix/store/v2xkr37gffg5gfscjmm5dj2bbh9bqjh0-python3.7-pyqt-5.13.0/share/sip/PyQt5/QtHelp:
/nix/store/v2xkr37gffg5gfscjmm5dj2bbh9bqjh0-python3.7-pyqt-5.13.0/share/sip/PyQt5/Enginio:
/nix/store/v2xkr37gffg5gfscjmm5dj2bbh9bqjh0-python3.7-pyqt-5.13.0/share/sip/PyQt5/QAxContainer:
/nix/store/v2xkr37gffg5gfscjmm5dj2bbh9bqjh0-python3.7-pyqt-5.13.0/share/sip/PyQt5/QtSvg:
/nix/store/v2xkr37gffg5gfscjmm5dj2bbh9bqjh0-python3.7-pyqt-5.13.0/share/sip/PyQt5/QtXml:
/nix/store/v2xkr37gffg5gfscjmm5dj2bbh9bqjh0-python3.7-pyqt-5.13.0/share/sip/PyQt5/QtAndroidExtras:
/nix/store/v2xkr37gffg5gfscjmm5dj2bbh9bqjh0-python3.7-pyqt-5.13.0/share/sip/PyQt5/QtRemoteObjects:
/nix/store/v2xkr37gffg5gfscjmm5dj2bbh9bqjh0-python3.7-pyqt-5.13.0/share/sip/PyQt5/QtSensors:
/nix/store/v2xkr37gffg5gfscjmm5dj2bbh9bqjh0-python3.7-pyqt-5.13.0/share/sip/PyQt5/QtWinExtras:
/nix/store/v2xkr37gffg5gfscjmm5dj2bbh9bqjh0-python3.7-pyqt-5.13.0/share/sip/PyQt5/QtWebKitWidgets:
/nix/store/v2xkr37gffg5gfscjmm5dj2bbh9bqjh0-python3.7-pyqt-5.13.0/share/sip/PyQt5/QtNetworkAuth:
/nix/store/v2xkr37gffg5gfscjmm5dj2bbh9bqjh0-python3.7-pyqt-5.13.0/share/sip/PyQt5/QtGui:
/nix/store/v2xkr37gffg5gfscjmm5dj2bbh9bqjh0-python3.7-pyqt-5.13.0/share/sip/PyQt5/QtNfc:
/nix/store/v2xkr37gffg5gfscjmm5dj2bbh9bqjh0-python3.7-pyqt-5.13.0/share/sip/PyQt5/QtSerialPort:
/nix/store/v2xkr37gffg5gfscjmm5dj2bbh9bqjh0-python3.7-pyqt-5.13.0/share/sip/PyQt5/QtQuick:
/nix/store/v2xkr37gffg5gfscjmm5dj2bbh9bqjh0-python3.7-pyqt-5.13.0/share/sip/PyQt5/QtDBus:
/nix/store/v2xkr37gffg5gfscjmm5dj2bbh9bqjh0-python3.7-pyqt-5.13.0/share/sip/PyQt5/QtX11Extras:
/nix/store/v2xkr37gffg5gfscjmm5dj2bbh9bqjh0-python3.7-pyqt-5.13.0/share/sip/PyQt5/QtQuickWidgets:
/nix/store/v2xkr37gffg5gfscjmm5dj2bbh9bqjh0-python3.7-pyqt-5.13.0/share/sip/PyQt5/QtWebChannel:
/nix/store/v2xkr37gffg5gfscjmm5dj2bbh9bqjh0-python3.7-pyqt-5.13.0/share/sip/PyQt5/QtWidgets:
/nix/store/v2xkr37gffg5gfscjmm5dj2bbh9bqjh0-python3.7-pyqt-5.13.0/share/sip/PyQt5/QtSql:
/nix/store/v2xkr37gffg5gfscjmm5dj2bbh9bqjh0-python3.7-pyqt-5.13.0/share/sip/PyQt5/QtMultimedia:
/nix/store/v2xkr37gffg5gfscjmm5dj2bbh9bqjh0-python3.7-pyqt-5.13.0/share/sip/PyQt5/QtLocation:
/nix/store/v2xkr37gffg5gfscjmm5dj2bbh9bqjh0-python3.7-pyqt-5.13.0/share/sip/PyQt5/QtPositioning:
/nix/store/v2xkr37gffg5gfscjmm5dj2bbh9bqjh0-python3.7-pyqt-5.13.0/share/sip/PyQt5/QtWebKit:
/nix/store/v2xkr37gffg5gfscjmm5dj2bbh9bqjh0-python3.7-pyqt-5.13.0/share/sip/PyQt5/QtCore:
/nix/store/v2xkr37gffg5gfscjmm5dj2bbh9bqjh0-python3.7-pyqt-5.13.0/share/sip/PyQt5/QtXmlPatterns:
/nix/store/v2xkr37gffg5gfscjmm5dj2bbh9bqjh0-python3.7-pyqt-5.13.0/share/sip/PyQt5/QtMultimediaWidgets:
/nix/store/v2xkr37gffg5gfscjmm5dj2bbh9bqjh0-python3.7-pyqt-5.13.0/share/sip/PyQt5/QtTest:
Configuring QScintilla 2.9.4...
QScintilla 2.9.4 is being used.
The QScintilla .sip files will be installed in
/nix/store/n8yi5cg89zw27qaii17b40a4x796a6mv-python3.7-qscintilla-2.9.4/share/sip/PyQt5.
QScintilla will be installed in
/nix/store/n8yi5cg89zw27qaii17b40a4x796a6mv-python3.7-qscintilla-2.9.4/lib/python3.7/site-packages/PyQt5.
PyQt 5.13.0 is being used.
Qt 5.11.3 is being used.
sip 4.19.18 is being used.
The sip executable is
/nix/store/xqzavp71hz075bpnzz4v3amj2d2cvkah-python3.7-sip-4.19.18/bin/sip.
QScintilla is being built with 'protected' redefined as 'public'.
The PEP 484 stubs will be installed in
/nix/store/n8yi5cg89zw27qaii17b40a4x796a6mv-python3.7-qscintilla-2.9.4/lib/python3.7/site-packages/PyQt5.
The QScintilla API file will be installed in
/nix/store/n8yi5cg89zw27qaii17b40a4x796a6mv-python3.7-qscintilla-2.9.4/api/python3.7/api/python.
Generating the C++ source for the Qsci module...
Generating the .pro file for the Qsci module...
Generating the QScintilla API file...
Generating the top-level .pro file...
Generating the Makefiles...
no configure script, doing nothing
building
build flags: SHELL=/nix/store/9jd5ihjm10rwm3m6aj1wwbyx7f3cc902-bash-4.4-p23/bin/bash
cd Qsci/ && ( test -e Makefile || /nix/store/jfj2fmclsd1fmly02sfga7ddf42yvpaj-qtbase-5.11.3-dev/bin/qmake -o Makefile /private/tmp/nix-build-python3.7-qscintilla-2.9.4.drv-0/QScintilla_gpl-2.9.4/Python/Qsci/Qsci.pro ) && make -f Makefile
make[1]: Entering directory '/private/tmp/nix-build-python3.7-qscintilla-2.9.4.drv-0/QScintilla_gpl-2.9.4/Python/Qsci'
clang++ -c -pipe -stdlib=libc++ -fno-exceptions -O2 -Wall -W -fPIC -DSIP_PROTECTED_IS_PUBLIC -Dprotected=public -DQT_NO_DEBUG -DQT_PLUGIN -DQT_GUI_LIB -DQT_CORE_LIB -I. -isystem /nix/store/hrj338j7k2ghhbxvvrbb85ij65h876mh-qscintilla-qt5-2.9.4/include -I/nix/store/xqzavp71hz075bpnzz4v3amj2d2cvkah-python3.7-sip-4.19.18/include -isystem /nix/store/jz94a0lnq9p1i4wx1mrh2c9f1sppydq8-python3-3.7.4/include/python3.7m -isystem /nix/store/jfj2fmclsd1fmly02sfga7ddf42yvpaj-qtbase-5.11.3-dev/include/QtGui -isystem /nix/store/jfj2fmclsd1fmly02sfga7ddf42yvpaj-qtbase-5.11.3-dev/include/QtCore -I. -I/nix/store/srwv0hr8lcgdl8g0a67y6z8zs3xj1mf2-apple-framework-OpenGL/Library/Frameworks/OpenGL.framework/Headers -I/nix/store/40kgc5qczy3jpxznb3sxq7dzzmwv3dp4-apple-framework-AGL/Library/Frameworks/AGL.framework/Headers -I/nix/store/jfj2fmclsd1fmly02sfga7ddf42yvpaj-qtbase-5.11.3-dev/mkspecs/macx-clang -o sipQsciQsciLexerRuby.o sipQsciQsciLexerRuby.cpp
In file included from sip/qsciabstractapis.sip:24:
In file included from /nix/store/hrj338j7k2ghhbxvvrbb85ij65h876mh-qscintilla-qt5-2.9.4/include/Qsci/qsciabstractapis.h:33:
In file included from /nix/store/hrj338j7k2ghhbxvvrbb85ij65h876mh-qscintilla-qt5-2.9.4/include/Qsci/qsciscintilla.h:38:
In file included from /nix/store/hrj338j7k2ghhbxvvrbb85ij65h876mh-qscintilla-qt5-2.9.4/include/Qsci/qscicommand.h:31:
/nix/store/hrj338j7k2ghhbxvvrbb85ij65h876mh-qscintilla-qt5-2.9.4/include/Qsci/qsciscintillabase.h:30:10: fatal error: 'QAbstractScrollArea' file not found
#include <QAbstractScrollArea>
         ^~~~~~~~~~~~~~~~~~~~~
1 error generated.
make[1]: *** [Makefile:534: sipQsciQsciLexerRuby.o] Error 1
make[1]: Leaving directory '/private/tmp/nix-build-python3.7-qscintilla-2.9.4.drv-0/QScintilla_gpl-2.9.4/Python/Qsci'
make: *** [Makefile:45: sub-Qsci-make_first-ordered] Error 2
builder for '/nix/store/s9fx27g8p4m2q64wgk7lsrp44jsjka8i-python3.7-qscintilla-2.9.4.drv' failed with exit code 2
error: build of '/nix/store/5346sfiv2jfr14nnd8iznqilnydvv4hg-qtsensors-5.11.3.drv', '/nix/store/jbgqcan4rghm2s2y17vsxvh81w5j8yyq-qtxmlpatterns-5.11.3.drv', '/nix/store/klksr4awc1sbikiwhm964k6cz4vz0n0w-qwt-6.1.2.drv', '/nix/store/s9fx27g8p4m2q64wgk7lsrp44jsjka8i-python3.7-qscintilla-2.9.4.drv', '/nix/store/zdldyips2m3hwf1a2dc8dl9jh3llc17x-qtwebkit-5.212-alpha-01-26-2018.drv' failed
Kairos:tmp ersin$

I'm not sure how to satisfy the QAbstractScrollArea header file dependency. I did notice a file in qtbase in my store: /nix/store/jfj2fmclsd1fmly02sfga7ddf42yvpaj-qtbase-5.11.3-dev/include/QtWidgets/QAbstractScrollArea. My naive guess would be to pass -I/nix/store/jfj2fmclsd1fmly02sfga7ddf42yvpaj-qtbase-5.11.3-dev/include/QtWidgets to the compiler, but I don't know whether it's that trivial nor how to do this using Nix.

Any ideas?

To Reproduce
Steps to reproduce the behavior:

  1. Clone Nixpkgs repo from master
  2. mkdir nixpkgs/tmp && cd nixpkgs/tmp
  3. nix-shell -E "with import ../pkgs/top-level/impure.nix {}; libsForQt5.callPackage ../pkgs/applications/gis/qgis/unwrapped.nix { withGrass = false; }" or alternatively nix-shell -E "with import ../pkgs/top-level/impure.nix {}; callPackage ../pkgs/applications/gis/qgis "

Expected behavior
I should be dropped into a nix-shell with all my dependencies built and available to begin hacking on QGIS.

Screenshots
N/A (see shell output above)

Additional context
Background: this is my first time modifying a Nix expression in Nixpkgs, indeed my first serious attempt at any kind of Nix packaging. I've been studying Nix very intently for the past few weeks and have gone through the Nix pills, the Nix manual, the Nixpkgs manual, and parts of Dostra's PhD thesis. I'm a beginner but not totally unfamiliar :-).

I'm also not too familiar with packaging Qt.

Finally, note that I'm trying to use my globally-installed Nix tools with my cloned nixpkgs. I'm not sure whether this is explicitly supported, please let me know if there's a better way.

Metadata

 - system: `"x86_64-darwin"`
 - host os: `Darwin 18.7.0, macOS 10.14.6`
 - multi-user?: `yes`
 - sandbox: `no`
 - version: `nix-env (Nix) 2.3`
 - channels(root): `"nixpkgs-20.03pre193309.c4196cca9ac"`
 - channels(ersin): `""`
 - nixpkgs: `/nix/var/nix/profiles/per-user/root/channels/nixpkgs`

Note that the above output is from running nix run globally, whereas I'm trying to use my local cloned copy of nixpkgs. (Perhaps this is a problem?)

Maintainer information:

# a list of nixpkgs attributes affected by the problem
attribute:
  - qgis
  - qgis-unwrapped
  - qscintilla
@veprbl veprbl added the 6.topic: darwin Running or building packages on Darwin label Oct 20, 2019
@jonringer
Copy link
Contributor

cc @worldofpeace for qt knowledge :)

@LnL7
Copy link
Member

LnL7 commented Nov 2, 2019

Since these headers are part of the QtGui framework I think -framework QtGui might be missing from CFLAGS of the build scripts.

@mpickering
Copy link
Contributor

I fixed the QGIS 2.X build for darwin a long time ago, perhaps that PR will provide some inspiration about how to fix these kinds of issues. #36902

@stale
Copy link

stale bot commented Oct 24, 2020

Hello, I'm a bot and I thank you in the name of the community for opening this issue.

To help our human contributors focus on the most-relevant reports, I check up on old issues to see if they're still relevant. This issue has had no activity for 180 days, and so I marked it as stale, but you can rest assured it will never be closed by a non-human.

The community would appreciate your effort in checking if the issue is still valid. If it isn't, please close it.

If the issue persists, and you'd like to remove the stale label, you simply need to leave a comment. Your comment can be as simple as "still important to me". If you'd like it to get more attention, you can ask for help by searching for maintainers and people that previously touched related code and @ mention them in a comment. You can use Git blame or GitHub's web interface on the relevant files to find them.

Lastly, you can always ask for help at our Discourse Forum or at #nixos' IRC channel.

@stale stale bot added the 2.status: stale https://github.com/NixOS/nixpkgs/blob/master/.github/STALE-BOT.md label Oct 24, 2020
@sikmir
Copy link
Member

sikmir commented Dec 6, 2020

Still important to me.

@stale stale bot removed the 2.status: stale https://github.com/NixOS/nixpkgs/blob/master/.github/STALE-BOT.md label Dec 6, 2020
@stale
Copy link

stale bot commented Jun 4, 2021

I marked this as stale due to inactivity. → More info

@stale stale bot added the 2.status: stale https://github.com/NixOS/nixpkgs/blob/master/.github/STALE-BOT.md label Jun 4, 2021
@willcohen
Copy link
Contributor

@lsix i'm poking at this issue a little bit -- because qscintilla-qt5 is currently failing on Darwin, I'm trying to see if I can get that to pass.

As is, darwin can't successfully generate any Makefiles or build with the current formula.

If I update the formula to pull the source for 2.13 (which drops qt4, so would ultimately require a little more moving of pieces around -- one option might be to create a qscintilla-qt4 legacy formula, kind of like sip_4, and then make plain qscintilla default to qt5+), it gets gets things mostly working again, but this requires a switch to pyproject.

With that switch (and removed logic for all the qt4 checks), it starts building from source and eventually fails with:

    clang++ -c -pipe -stdlib=libc++ -O2 -Wall -W -fPIC -DQT_NO_DEBUG -DQT_GUI_LIB -DQT_CORE_LIB -I. -isystem /nix/store/3h4xj7lqg3ishyxnm8975x3jwprr2yqi-qtbase-5.12.10-dev/include/QtGui -isystem /nix/store/3h4xj7lqg3ishyxnm8975x3jwprr2yqi-qtbase-5.12.10-dev/include/QtCore -I. -I/nix/store/kqls0i7y4f743f3wph70xk5428kgl03l-apple-framework-OpenGL/Library/Frameworks/OpenGL.framework/Headers -I/nix/store/0j8xa327wd83hygsr4f29vd0l8dnylis-apple-framework-AGL/Library/Frameworks/AGL.framework/Headers -I/nix/store/3h4xj7lqg3ishyxnm8975x3jwprr2yqi-qtbase-5.12.10-dev/mkspecs/macx-clang -o cfgtest_Qsci.o ../../pip-req-build-wfut140d/config-tests/cfgtest_Qsci.cpp
    clang++ -stdlib=libc++ -o Qsci.app/Contents/MacOS/Qsci cfgtest_Qsci.o   /nix/store/kap1cd48p9kzxbk60brv2p707l4516h1-qtbase-5.12.10/lib/libQt5Gui.dylib /nix/store/kap1cd48p9kzxbk60brv2p707l4516h1-qtbase-5.12.10/lib/libQt5Core.dylib -framework OpenGL -framework AGL
    /private/tmp/nix-build-python3.9-qscintilla-2.13.1.drv-0/tmpv1eqk5f0/cfgtest_Qsci/Qsci.app/Contents/MacOS/Qsci /private/tmp/nix-build-python3.9-qscintilla-2.13.1.drv-0/tmpv1eqk5f0/cfgtest_Qsci/cfgtest_Qsci.out
    These bindings will be built: Qsci.
    Generating the Qsci bindings...
    _in_process.py: Unable to find file "QtCore/QtCoremod.sip"

    Preparing wheel metadata ... error

Any advice on how to get pyproject or the qscintilla builder to be able to correctly find the new location for QtCoremod.sip? Since the newer versions don't have configure.py anymore, I can't just replace in place like the current build process. This appears to come up from time to time in Nix and elsewhere, but I'm not sure what the right path would be here.

@stale stale bot removed the 2.status: stale https://github.com/NixOS/nixpkgs/blob/master/.github/STALE-BOT.md label Nov 30, 2021
@willcohen
Copy link
Contributor

Note -- I've prepared a patch that enables a grass-enabled make on top of #150595 and #150286 to work (see #150286 (comment)), but I am still having trouble with the final linking of libraries and install of the .app.

@willcohen
Copy link
Contributor

Not quite done yet! Still need #150286 to get finished and merged, and then I'll still need to file another PR based on the patch which I started in that PR, but it's a lot closer now.

@willcohen
Copy link
Contributor

Note: #157862 is my progress so far here. If anyone has a suggestion for how to resolve the dylib issue I'm stuck on there, that may be the final step to getting this closed!

@willcohen
Copy link
Contributor

Dylib issue from last year is now resolved, but the .app crashes on startup (see #157862 (comment)). If anyone has a suggestion on how to resolve this, it'd be appreciated!

@mmorley0395
Copy link

also very interested in this. if i had any knowledge of how to help here, i would! (also hi will, another urban planner who uses nix! a rare sight to see!)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
0.kind: bug 6.topic: darwin Running or building packages on Darwin 6.topic: python
Projects
None yet
Development

Successfully merging a pull request may close this issue.

9 participants