Re: [gtk-osx-users] New build system.





On Apr 6, 2019, at 1:24 PM, Pascal <p p14 orange fr> wrote:


Le 6 avr. 2019 à 16:55, John Ralls <jralls ceridwen us> a écrit :

On Apr 6, 2019, at 2:25 AM, Pascal <p p14 orange fr> wrote:

Hello,

I tried the new build system (https://github.com/jralls/gtk-osx-build/tree/pipenv) on macOS 10.13.6.
Here are first feedbacks.
Download https://raw.githubusercontent.com/jralls/gtk-osx-build/pipenv/gtk-osx-setup.sh.
Execute the following instructions:
$ DEVROOT=/Programmation/GIT sh ./gtk-osx-setup.sh 
    PATH does not contain /Programmation/GIT/.new_local/bin. You probably want to fix that.
    DEPRECATION: Python 2.7 will reach the end of its life on January 1st, 2020. Please upgrade your 
Python as Python 2.7 won't be maintained after that date. A future version of pip will drop support for 
Python 2.7.
    Uninstalling enum34-1.1.6:
      Successfully uninstalled enum34-1.1.6
    ./gtk-osx-setup.sh: line 202: pipenv: command not found

=*= I have make this modification (a pull request have been created):
-export PATH=$PYENV_ROOT/shims:$PATH
+export PATH=$PYENV_ROOT/shims:$DEVPREFIX/bin:$PATH

Then:
    question :
    Warning: Python 3.6 was not found on your system...
    Would you like us to install CPython 3.6.8 with pyenv? [Y/n]: 

I answer "y".
=*= Is it mandatory?

Then I got:
     Warning: The Python you just installed is not available on your PATH, apparently.

=*= Is it mandatory?

Nevertheless, I add:
$ PATH=/Programmation/GIT/.new_local/bin:/Programmation/GIT/Source/pyenv/versions/3.6.8/bin:$PATH

My folders are now:
$ ls -a1
./
../
.DS_Store
.new_local/
DEVPREFIX/
DEV_SRC_ROOT/
PIP_CONFIG_DIR/
PYENV_ROOT/
PYTHONUSERBASE/
Source/
gtk-osx-setup.sh*

=*= Is it correct?

And now I can't get the next bootstrapping instructions clear for me.
=*= Should I run?
$ jhbuild bootstrap
or
$ jhbuild -m /path/to/gtk-osx/modulesets-stable/bootstrap.modules build meta-bootstrap

=*= Shouldn't be this path?
$DEVROOT/Source/jhbuild/modulesets/bootstrap.modules

Pascal,

Python 3 > 3.2 is mandatory, it's required for both meson and GObject-Introspection. 

All of those folders with all-caps names (DEVPREFIX etc) shouldn't exist. Those are supposed to be 
environment variables, not folders. Did you create them manually or did the script do that?

`jhbuild bootstrap` requires replacing the bootstrap.modules distributed with jhbuild with the gtk-osx 
ones. It's a process I inherited when I took over gtk-osx from Richard Hult 10 years ago and I've never 
liked it. Building meta-bootstrap from the gtk-osx modules explicitly avoids dirtying the jhbuild repo.

I think you'll have to do a two-stage build for your python2 project: Build everything that needs to be 
introspected using the virtenv's python3 as python, then build python2 and whatever pure-python projects 
so that you have the right environment for your program.

John,

Those folders were created by the script, I changed gtk-osx-setup.sh (also in pull request):
-        eval "mkdir -p $_varname"
+        mkdir -p "${!_varname}"

I run again the script and I was surprised to see additional installations.
It depends if you add python 3 path in PATH.
With only one run, the installation seems incomplete.

See attached log file.

Pascal,

The log file looks right. Did you have trouble running jhbuild?

I reworked a bunch of things in gtk-osx-setup.sh including a complete rethink on envvar()'s variable quoting. 
The way I'd written it before didn't work if there were spaces in the path, the new way does.

I'm still having trouble with the pyenv automatic installation getting recognized, but you've avoided that by 
having a Python3 installation already from which it just makes a virtenv and moves on.

Regards,
John Ralls



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]