Error deploying on streamlit cloud when trying to install ArcGIS API

I tried to deploy my app with the streamlit cloud Using the ArcGIS API for Python . I saw this post (Deploy error when try install arcgis api) and tried to troubleshoot using the suggestions but I have not had any luck.
Here is the Github repository: Portfolio/WildFirePortfolio at 7f656be5f17bc05cb7342e8469e65d715f4c7c5d Β· zkasson/Portfolio Β· GitHub.

ERROR:

Using uv pip install.

[18:44:13] πŸŽ› Preparing system...

[18:44:13] β›“ Spinning up manager process...

error: Failed to download and build `arcgis==2.4.0`

  Caused by: Failed to build: `arcgis==2.4.0`

  Caused by: Failed to install requirements from build-system.requires (install)

  Caused by: Failed to download and build distributions

  Caused by: Failed to fetch wheel: krb5==0.7.0

  Caused by: Failed to build: `krb5==0.7.0`

  Caused by: Build backend failed to determine extra requires with `build_wheel()` with exit status: 1

--- stdout:

Using krb5-config at 'krb5-config'

--- stderr:

/bin/sh: 1: krb5-config: not found

Traceback (most recent call last):

  File "<string>", line 14, in <module>

  File "/home/adminuser/.cache/uv/.tmpMXCi5l/.venv/lib/python3.12/site-packages/setuptools/build_meta.py", line 334, in get_requires_for_build_wheel

    return self._get_build_requires(config_settings, requirements=[])

           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

  File "/home/adminuser/.cache/uv/.tmpMXCi5l/.venv/lib/python3.12/site-packages/setuptools/build_meta.py", line 304, in _get_build_requires

    self.run_setup()

  File "/home/adminuser/.cache/uv/.tmpMXCi5l/.venv/lib/python3.12/site-packages/setuptools/build_meta.py", line 320, in run_setup

    exec(code, locals())

  File "<string>", line 175, in <module>

  File "<string>", line 33, in run_command

  File "/usr/local/lib/python3.12/subprocess.py", line 466, in check_output

    return run(*popenargs, stdout=PIPE, timeout=timeout, check=True,

           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

  File "/usr/local/lib/python3.12/subprocess.py", line 571, in run

    raise CalledProcessError(retcode, process.args,

subprocess.CalledProcessError: Command '('krb5-config --cflags krb5',)' returned non-zero exit status 127.

---

Checking if Streamlit is installed


────────────────────────────────────────────────────────────────────────────────────────



──────────────────────────────────────── pip ───────────────────────────────────────────


Using standard pip install.

Collecting streamlit (from -r /mount/src/portfolio/WildFirePortfolio/requirements.txt (line 1))

  Downloading streamlit-1.40.1-py2.py3-none-any.whl.metadata (8.5 kB)

Collecting geopandas (from -r /mount/src/portfolio/WildFirePortfolio/requirements.txt (line 2))

  Downloading geopandas-1.0.1-py3-none-any.whl.metadata (2.2 kB)

Collecting pandas (from -r /mount/src/portfolio/WildFirePortfolio/requirements.txt (line 3))

  Downloading pandas-2.2.3-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.metadata (89 kB)

     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 89.9/89.9 kB 8.1 MB/s eta 0:00:00[2024-11-14 18:44:17.755090] 

Collecting matplotlib (from -r /mount/src/portfolio/WildFirePortfolio/requirements.txt (line 4))

  Downloading matplotlib-3.9.2-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.metadata (11 kB)

Collecting leafmap (from -r /mount/src/portfolio/WildFirePortfolio/requirements.txt (line 5))

  Downloading leafmap-0.39.2-py2.py3-none-any.whl.metadata (16 kB)

Collecting gssapi (from -r /mount/src/portfolio/WildFirePortfolio/requirements.txt (line 6))

  Downloading gssapi-1.9.0.tar.gz (94 kB)

     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 94.3/94.3 kB 149.7 MB/s eta 0:00:00

  Installing build dependencies: started

  Installing build dependencies: finished with status 'done'

  Getting requirements to build wheel: started

  Getting requirements to build wheel: finished with status 'error'

  error: subprocess-exited-with-error

  

  Γ— Getting requirements to build wheel did not run successfully.

  β”‚ exit code: 1

  ╰─> [25 lines of output]

      /bin/sh: 1: krb5-config: not found

      Traceback (most recent call last):

        File "/home/adminuser/venv/lib/python3.12/site-packages/pip/_vendor/pyproject_hooks/_in_process/_in_process.py", line 353, in <module>

          main()

        File "/home/adminuser/venv/lib/python3.12/site-packages/pip/_vendor/pyproject_hooks/_in_process/_in_process.py", line 335, in main

          json_out['return_val'] = hook(**hook_input['kwargs'])

                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^

        File "/home/adminuser/venv/lib/python3.12/site-packages/pip/_vendor/pyproject_hooks/_in_process/_in_process.py", line 118, in get_requires_for_build_wheel

          return hook(config_settings)

                 ^^^^^^^^^^^^^^^^^^^^^

        File "/tmp/pip-build-env-rp9xw5f5/overlay/lib/python3.12/site-packages/setuptools/build_meta.py", line 334, in get_requires_for_build_wheel

          return self._get_build_requires(config_settings, requirements=[])

                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

        File "/tmp/pip-build-env-rp9xw5f5/overlay/lib/python3.12/site-packages/setuptools/build_meta.py", line 304, in _get_build_requires

          self.run_setup()

        File "/tmp/pip-build-env-rp9xw5f5/overlay/lib/python3.12/site-packages/setuptools/build_meta.py", line 320, in run_setup

          exec(code, locals())

        File "<string>", line 109, in <module>

        File "<string>", line 22, in get_output

        File "/usr/local/lib/python3.12/subprocess.py", line 466, in check_output

          return run(*popenargs, stdout=PIPE, timeout=timeout, check=True,

                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

        File "/usr/local/lib/python3.12/subprocess.py", line 571, in run

          raise CalledProcessError(retcode, process.args,

      subprocess.CalledProcessError: Command 'krb5-config --libs gssapi' returned non-zero exit status 127.

      [end of output]

  

  note: This error originates from a subprocess, and is likely not a problem with pip.

error: subprocess-exited-with-error


Γ— Getting requirements to build wheel did not run successfully.

β”‚ exit code: 1

╰─> See above for output.


note: This error originates from a subprocess, and is likely not a problem with pip.


[notice] A new release of pip is available: 24.0 -> 24.3.1

[notice] To update, run: pip install --upgrade pip

Checking if Streamlit is installed


────────────────────────────────────────────────────────────────────────────────────────


[18:44:25] ❗️ installer returned a non-zero exit code

Requirments.txt

streamlit
geopandas 
pandas
matplotlib
leafmap
gssapi
arcgis

packages.txt

libkrb5-dev

This is my first time importing arcgis. I am trying to get data from living atlas. Happy to answer follow up questions.

Why did you add krb5-config to your requirements file? I don’t see anything in the linked topic suggesting that.

1 Like

Yep. I misread that. Took it out and it still gives a similar error. I updated question.

1 Like

I tried that and it gives the same error. :sweat_smile:

packages.txt must be in the root of your repo.

If packages.txt exists in the root directory of your repository we automatically detect it, parse it, and install the listed packages.

1 Like

Thanks. I was unaware of that. The app is not making it past the β€˜Your app is in the oven’ page. Not sure if this is a related issue. There is not much code in the .py file yet so it shouldn’t be taking that long.

Terminal:

[21:13:33] πŸ–₯ Provisioning machine...

[21:13:33] πŸŽ› Preparing system...

[21:13:33] β›“ Spinning up manager process...

[21:13:35] πŸš€ Starting up repository: 'portfolio', branch: 'main', main module: 'wildfireApp.py'

[21:13:35] πŸ™ Cloning repository...

[21:13:36] πŸ™ Cloning into '/mount/src/portfolio'...

[21:13:36] πŸ™ Cloned repository!

[21:13:36] πŸ™ Pulling code changes from Github...

[21:13:37] πŸ“¦ Processing dependencies...

[21:13:37] πŸ“¦ Apt dependencies were installed from /mount/src/portfolio/packages.txt using apt-get.

Hit:1 http://deb.debian.org/debian bullseye InRelease

Get:2 http://deb.debian.org/debian-security bullseye-security InRelease [27.2 kB]

Get:3 http://deb.debian.org/debian bullseye-updates InRelease [44.1 kB]

Get:4 https://packages.microsoft.com/debian/11/prod bullseye InRelease [3650 B]

Get:5 http://deb.debian.org/debian-security bullseye-security/main amd64 Packages [308 kB]

Get:6 https://packages.microsoft.com/debian/11/prod bullseye/main arm64 Packages [31.8 kB]

Get:7 https://packages.microsoft.com/debian/11/prod bullseye/main amd64 Packages [161 kB]

Fetched 575 kB in 1s (840 kB/s)

Reading package lists...[2024-11-14 21:13:38.756378] 

Reading package lists...[2024-11-14 21:13:39.413807] 

Building dependency tree...[2024-11-14 21:13:39.572075] 

Reading state information...[2024-11-14 21:13:39.572299] 

The following additional packages will be installed:

  bind9-host bind9-libs comerr-dev krb5-multidev libfstrm0 libgssrpc4

  libkadm5clnt-mit12 libkadm5srv-mit12 libkdb5-10 libmaxminddb0 libprotobuf-c1

  libuv1

Suggested packages:

  doc-base krb5-doc krb5-user mmdb-bin

The following NEW packages will be installed:

  bind9-host bind9-libs comerr-dev krb5-config krb5-multidev libfstrm0

  libgssrpc4 libkadm5clnt-mit12 libkadm5srv-mit12 libkdb5-10 libkrb5-dev

  libmaxminddb0 libprotobuf-c1 libuv1

0 upgraded, 14 newly installed, 0 to remove and 3 not upgraded.

Need to get 2617 kB of archives.

After this operation, 6984 kB of additional disk space will be used.

Get:1 http://deb.debian.org/debian bullseye/main amd64 libuv1 amd64 1.40.0-2+deb11u1 [132 kB]

Get:2 http://deb.debian.org/debian bullseye/main amd64 libfstrm0 amd64 0.6.0-1+b1 [21.5 kB]

Get:3 http://deb.debian.org/debian bullseye/main amd64 libmaxminddb0 amd64 1.5.2-1 [29.8 kB]

Get:4 http://deb.debian.org/debian bullseye/main amd64 libprotobuf-c1 amd64 1.3.3-1+b2 [27.0 kB]

Get:5 http://deb.debian.org/debian bullseye/main amd64 bind9-libs amd64 1:9.16.50-1~deb11u2 [1433 kB]

Get:6 http://deb.debian.org/debian bullseye/main amd64 bind9-host amd64 1:9.16.50-1~deb11u2 [312 kB]

Get:7 http://deb.debian.org/debian-security bullseye-security/main amd64 comerr-dev amd64 2.1-1.46.2-2+deb11u1 [107 kB]

Get:8 http://deb.debian.org/debian bullseye/main amd64 krb5-config all 2.6+nmu1 [23.6 kB]

Get:9 http://deb.debian.org/debian bullseye/main amd64 libgssrpc4 amd64 1.18.3-6+deb11u5 [91.8 kB]

Get:10 http://deb.debian.org/debian bullseye/main amd64 libkdb5-10 amd64 1.18.3-6+deb11u5 [73.5 kB]

Get:11 http://deb.debian.org/debian bullseye/main amd64 libkadm5srv-mit12 amd64 1.18.3-6+deb11u5 [86.0 kB]

Get:12 http://deb.debian.org/debian bullseye/main amd64 libkadm5clnt-mit12 amd64 1.18.3-6+deb11u5 [74.2 kB]

Get:13 http://deb.debian.org/debian bullseye/main amd64 krb5-multidev amd64 1.18.3-6+deb11u5 [158 kB]

Get:14 http://deb.debian.org/debian bullseye/main amd64 libkrb5-dev amd64 1.18.3-6+deb11u5 [47.7 kB]

debconf: delaying package configuration, since apt-utils is not installed

Fetched 2617 kB in 0s (5996 kB/s)

Selecting previously unselected package libuv1:amd64.

(Reading database ... 22036 files and directories currently installed.)

Preparing to unpack .../00-libuv1_1.40.0-2+deb11u1_amd64.deb ...

Unpacking libuv1:amd64 (1.40.0-2+deb11u1) ...

Selecting previously unselected package libfstrm0:amd64.

Preparing to unpack .../01-libfstrm0_0.6.0-1+b1_amd64.deb ...

Unpacking libfstrm0:amd64 (0.6.0-1+b1) ...

Selecting previously unselected package libmaxminddb0:amd64.

Preparing to unpack .../02-libmaxminddb0_1.5.2-1_amd64.deb ...

Unpacking libmaxminddb0:amd64 (1.5.2-1) ...

Selecting previously unselected package libprotobuf-c1:amd64.

Preparing to unpack .../03-libprotobuf-c1_1.3.3-1+b2_amd64.deb ...

Unpacking libprotobuf-c1:amd64 (1.3.3-1+b2) ...

Selecting previously unselected package bind9-libs:amd64.

Preparing to unpack .../04-bind9-libs_1%3a9.16.50-1~deb11u2_amd64.deb ...

Unpacking bind9-libs:amd64 (1:9.16.50-1~deb11u2) ...

Selecting previously unselected package bind9-host.

Preparing to unpack .../05-bind9-host_1%3a9.16.50-1~deb11u2_amd64.deb ...

Unpacking bind9-host (1:9.16.50-1~deb11u2) ...

Selecting previously unselected package comerr-dev:amd64.

Preparing to unpack .../06-comerr-dev_2.1-1.46.2-2+deb11u1_amd64.deb ...

Unpacking comerr-dev:amd64 (2.1-1.46.2-2+deb11u1) ...

Selecting previously unselected package krb5-config.

Preparing to unpack .../07-krb5-config_2.6+nmu1_all.deb ...

Unpacking krb5-config (2.6+nmu1) ...

Selecting previously unselected package libgssrpc4:amd64.

Preparing to unpack .../08-libgssrpc4_1.18.3-6+deb11u5_amd64.deb ...

Unpacking libgssrpc4:amd64 (1.18.3-6+deb11u5) ...

Selecting previously unselected package libkdb5-10:amd64.

Preparing to unpack .../09-libkdb5-10_1.18.3-6+deb11u5_amd64.deb ...

Unpacking libkdb5-10:amd64 (1.18.3-6+deb11u5) ...

Selecting previously unselected package libkadm5srv-mit12:amd64.

Preparing to unpack .../10-libkadm5srv-mit12_1.18.3-6+deb11u5_amd64.deb ...

Unpacking libkadm5srv-mit12:amd64 (1.18.3-6+deb11u5) ...

Selecting previously unselected package libkadm5clnt-mit12:amd64.

Preparing to unpack .../11-libkadm5clnt-mit12_1.18.3-6+deb11u5_amd64.deb ...

Unpacking libkadm5clnt-mit12:amd64 (1.18.3-6+deb11u5) ...

Selecting previously unselected package krb5-multidev:amd64.

Preparing to unpack .../12-krb5-multidev_1.18.3-6+deb11u5_amd64.deb ...

Unpacking krb5-multidev:amd64 (1.18.3-6+deb11u5) ...

Selecting previously unselected package libkrb5-dev:amd64.

Preparing to unpack .../13-libkrb5-dev_1.18.3-6+deb11u5_amd64.deb ...

Unpacking libkrb5-dev:amd64 (1.18.3-6+deb11u5) ...

Setting up libmaxminddb0:amd64 (1.5.2-1) ...

Setting up libfstrm0:amd64 (0.6.0-1+b1) ...

Setting up libprotobuf-c1:amd64 (1.3.3-1+b2) ...

Setting up libgssrpc4:amd64 (1.18.3-6+deb11u5) ...

Setting up libuv1:amd64 (1.40.0-2+deb11u1) ...

Setting up comerr-dev:amd64 (2.1-1.46.2-2+deb11u1) ...

Setting up libkadm5clnt-mit12:amd64 (1.18.3-6+deb11u5) ...

Setting up libkdb5-10:amd64 (1.18.3-6+deb11u5) ...

Setting up bind9-libs:amd64 (1:9.16.50-1~deb11u2) ...

Setting up libkadm5srv-mit12:amd64 (1.18.3-6+deb11u5) ...

Setting up bind9-host (1:9.16.50-1~deb11u2) ...

Setting up krb5-multidev:amd64 (1.18.3-6+deb11u5) ...

Setting up libkrb5-dev:amd64 (1.18.3-6+deb11u5) ...

Setting up krb5-config (2.6+nmu1) ...

debconf: unable to initialize frontend: Dialog

debconf: (Dialog frontend will not work on a dumb terminal, an emacs shell buffer, or without a controlling terminal.)

debconf: falling back to frontend: Readline

Configuring Kerberos Authentication

-----------------------------------


When users attempt to use Kerberos and specify a principal or user name without

specifying what administrative Kerberos realm that principal belongs to, the

system appends the default realm.  The default realm may also be used as the

realm of a Kerberos service running on the local machine.  Often, the default

realm is the uppercase version of the local DNS domain.

Ah, looks like I made a mistake and you don’t need krb5-config. Trying to install it is causing trouble, remove it from packages.txt.

The krb5-config you need is a script that comes with libkrb5-dev, I think. Confusing, isn’t it?

1 Like

Looks like things are moving along now. Just taking awhile. Thanks for the help. Its all so confusing to me :joy:

This topic was automatically closed 2 days after the last reply. New replies are no longer allowed.