0.90.1: No update to any newer release possible. gcc issue?

Hello,

I’m running v0.90.1 and tried to update to the currently newest v0.102.3 via Hass.io GUI updater. After the update process, Home Assistant restarted but it was still running v0.90.1 which means that the update failed & the old version was recovered.

Afterwards I tried to update to the latest version via terminal command and got the error message that no gcc compiler was found. So I tried to do a small step and forced via terminal to update just to v0.91.0 but it failed with the same error message.

What am I doing wrong and is actually the missing gcc compiler the issue? If yes, how can I install it?

This is the terminal output during update procedue:

      to the PKG_CONFIG_PATH environment variable
      Package 'libffi', required by 'virtual:world', not found
      Package libffi was not found in the pkg-config search path.
      Perhaps you should add the directory containing `libffi.pc'
      to the PKG_CONFIG_PATH environment variable
      Package 'libffi', required by 'virtual:world', not found
      unable to execute 'gcc': No such file or directory
      unable to execute 'gcc': No such file or directory

          No working compiler found, or bogus compiler options passed to
          the compiler from Python's standard "distutils" module.  See
          the error messages above.  Likely, the problem is not related
          to CFFI but generic to the setup.py of any Python package that
          tries to compile C code.  (Hints: on OS/X 10.8, for errors about
          -mno-fused-madd see http://stackoverflow.com/questions/22313407/
          Otherwise, see https://wiki.python.org/moin/CompLangPython or
          the IRC channel #python on irc.freenode.net.)

          Trying to continue anyway.  If you are trying to install CFFI from
          a build done in a different context, you can ignore this warning.

      to the PKG_CONFIG_PATH environment variable
      Package 'libffi', required by 'virtual:world', not found
      Package libffi was not found in the pkg-config search path.
      Perhaps you should add the directory containing `libffi.pc'
      to the PKG_CONFIG_PATH environment variable
      Package 'libffi', required by 'virtual:world', not found
      unable to execute 'gcc': No such file or directory
      unable to execute 'gcc': No such file or directory

          No working compiler found, or bogus compiler options passed to
          the compiler from Python's standard "distutils" module.  See
          the error messages above.  Likely, the problem is not related
          to CFFI but generic to the setup.py of any Python package that
          tries to compile C code.  (Hints: on OS/X 10.8, for errors about
          -mno-fused-madd see http://stackoverflow.com/questions/22313407/
          Otherwise, see https://wiki.python.org/moin/CompLangPython or
          the IRC channel #python on irc.freenode.net.)

          Trying to continue anyway.  If you are trying to install CFFI from
          a build done in a different context, you can ignore this warning.

      running install
      running build
      running build_py
      creating build
      creating build/lib.linux-armv7l-3.6
      creating build/lib.linux-armv7l-3.6/cffi
      copying cffi/commontypes.py -> build/lib.linux-armv7l-3.6/cffi
      copying cffi/pkgconfig.py -> build/lib.linux-armv7l-3.6/cffi
      copying cffi/error.py -> build/lib.linux-armv7l-3.6/cffi
      copying cffi/model.py -> build/lib.linux-armv7l-3.6/cffi
      copying cffi/setuptools_ext.py -> build/lib.linux-armv7l-3.6/cffi
      copying cffi/cparser.py -> build/lib.linux-armv7l-3.6/cffi
      copying cffi/api.py -> build/lib.linux-armv7l-3.6/cffi
      copying cffi/ffiplatform.py -> build/lib.linux-armv7l-3.6/cffi
      copying cffi/backend_ctypes.py -> build/lib.linux-armv7l-3.6/cffi
      copying cffi/__init__.py -> build/lib.linux-armv7l-3.6/cffi
      copying cffi/lock.py -> build/lib.linux-armv7l-3.6/cffi
      copying cffi/cffi_opcode.py -> build/lib.linux-armv7l-3.6/cffi
      copying cffi/vengine_cpy.py -> build/lib.linux-armv7l-3.6/cffi
      copying cffi/vengine_gen.py -> build/lib.linux-armv7l-3.6/cffi
      copying cffi/verifier.py -> build/lib.linux-armv7l-3.6/cffi
      copying cffi/recompiler.py -> build/lib.linux-armv7l-3.6/cffi
      copying cffi/_cffi_include.h -> build/lib.linux-armv7l-3.6/cffi
      copying cffi/parse_c_type.h -> build/lib.linux-armv7l-3.6/cffi
      copying cffi/_embedding.h -> build/lib.linux-armv7l-3.6/cffi
      copying cffi/_cffi_errors.h -> build/lib.linux-armv7l-3.6/cffi
      running build_ext
      building '_cffi_backend' extension
      creating build/temp.linux-armv7l-3.6
      creating build/temp.linux-armv7l-3.6/c
      gcc -Wno-unused-result -Wsign-compare -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -Os -fomit-frame-pointer -g -Os -fomit-frame-pointer -g -Os -fomit-frame-pointer -g -DTHREAD_STACK_SIZE=0x100000 -fPIC -I/usr/include/ffi -I/usr/include/libffi -I/usr/include/p
ython3.6m -c c/_cffi_backend.c -o build/temp.linux-armv7l-3.6/c/_cffi_backend.o
      unable to execute 'gcc': No such file or directory
      error: command 'gcc' failed with exit status 1
      ----------------------------------------
  ERROR: Command errored out with exit status 1: /usr/bin/python3.6 -u -c 'import sys, setuptools, tokenize; sys.argv[0] = '"'"'/tmp/pip-install-74eez23t/cffi/setup.py'"'"'; __file__='"'"'/tmp/pip-install-74eez23t/cffi/setup.py'"'"';f=getattr(tokenize, '"'"'open'"'"', o
pen)(__file__);code=f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' install --record /tmp/pip-record-_0wby69j/install-record.txt --single-version-externally-managed --prefix /tmp/pip-build-env-qj33zi6g/overlay --co
mpile Check the logs for full command output.
  ----------------------------------------
ERROR: Command errored out with exit status 1: /usr/bin/python3.6 /usr/lib/python3.6/site-packages/pip install --ignore-installed --no-user --prefix /tmp/pip-build-env-qj33zi6g/overlay --no-warn-script-location --no-binary :none: --only-binary :none: -i https://pypi.org
/simple -- setuptools wheel 'cffi>=1.1; python_implementation != '"'"'PyPy'"'"'' Check the logs for full command output.

Thanks,
Hirgo

What command did you use? You can’t/shouldn’t attempt to use any python installation commands inside a docker container system like hassio.

What was the error message you got when you tried to update via the GUI?

Did you take the time to read EACH set of release notes for EACH update after your currently running update? It’s probably one of the breaking changes from the last several months.

It sounds an awful lot like you were trying to use pip/python to update home assistant in the running container, which won’t work. You don’t install things in a running docker container, so the path you are going down is not the correct one. gcc isn’t needed because hassio runs docker.

I just tried to update again via GUI and got following System Log output:

19-12-08 21:00:34 INFO (MainThread) [hassio.homeassistant] Update Home Assistant to version 0.102.3
19-12-08 21:00:34 INFO (SyncWorker_16) [hassio.docker.interface] Update image homeassistant/raspberrypi3-homeassistant:0.90.1 to homeassistant/raspberrypi3-homeassistant:0.102.3
19-12-08 21:00:34 INFO (SyncWorker_16) [hassio.docker.interface] Pull image homeassistant/raspberrypi3-homeassistant tag 0.102.3.
19-12-08 21:11:09 INFO (SyncWorker_16) [hassio.docker.interface] Stop homeassistant application
19-12-08 21:12:10 INFO (SyncWorker_16) [hassio.docker.interface] Clean homeassistant application
19-12-08 21:12:13 INFO (SyncWorker_2) [hassio.docker.homeassistant] Start homeassistant homeassistant/raspberrypi3-homeassistant with version 0.102.3
19-12-08 21:15:45 INFO (MainThread) [hassio.store.git] Update add-on https://github.com/hassio-addons/repository repository
19-12-08 21:15:45 INFO (MainThread) [hassio.store.git] Update add-on https://github.com/home-assistant/hassio-addons repository
19-12-08 21:15:45 INFO (MainThread) [hassio.updater] Fetch update data from https://version.home-assistant.io/stable.json
19-12-08 21:15:49 INFO (MainThread) [hassio.store] Load add-ons from store: 62 all - 0 new - 0 remove
19-12-08 21:22:17 WARNING (MainThread) [hassio.homeassistant] Don't wait anymore of Home Assistant startup!
19-12-08 21:22:17 CRITICAL (MainThread) [hassio.homeassistant] HomeAssistant update fails -> rollback!
19-12-08 21:22:17 INFO (MainThread) [hassio.homeassistant] Update Home Assistant to version 0.90.1
19-12-08 21:22:17 INFO (SyncWorker_14) [hassio.docker.interface] Update image homeassistant/raspberrypi3-homeassistant:0.102.3 to homeassistant/raspberrypi3-homeassistant:0.90.1
19-12-08 21:22:17 INFO (SyncWorker_14) [hassio.docker.interface] Pull image homeassistant/raspberrypi3-homeassistant tag 0.90.1.
19-12-08 21:22:19 INFO (SyncWorker_14) [hassio.docker.interface] Stop homeassistant application
19-12-08 21:22:22 INFO (SyncWorker_14) [hassio.docker.interface] Clean homeassistant application
19-12-08 21:22:24 INFO (SyncWorker_4) [hassio.docker.homeassistant] Start homeassistant homeassistant/raspberrypi3-homeassistant with version 0.90.1
19-12-08 21:23:29 INFO (MainThread) [hassio.homeassistant] Detect a running Home Assistant instance
19-12-08 21:23:29 INFO (MainThread) [hassio.homeassistant] Successful run Home Assistant 0.90.1
19-12-08 21:23:30 INFO (SyncWorker_18) [hassio.docker.interface] Cleanup images: ['homeassistant/raspberrypi3-homeassistant:0.102.3']

Can you gain more information out of that? Or can I pull more log data from somewhere else to get more details?

Hirgo

Install the configuration checker addon and run it. That will check your configuration against the latest version of homeassistant and log all the errors.

Fix the errors and re-run the configuration checker addon.

Rinse and repeat until configuration check completes without errors.

Update hassio.

1 Like