× NETGEAR will be terminating ReadyCLOUD service by July 1st, 2023. For more details click here.
Reply

unable to install build-essential in 6.9.1

a4ex
Aspirant

unable to install build-essential in 6.9.1

Hello,

 

I'm trying to install build-essential but without any luck.

I the prepivious version of the firmware i had done it. Now in 6.9.1 its impossible.

 

my sources are:

 

 

# cat sources.list
deb http://apt.readynas.com/packages/readynasos 6.9.1 updates apps main

deb http://mirrors.kernel.org/debian jessie main
deb http://security.debian.org/ jessie/updates main
deb http://ftp.uk.debian.org/debian jessie main non-free
deb http://archive.debian.org/debian etch main

and i execute the following:

 

 

 

# apt-get install build-essential
Reading package lists... Done
Building dependency tree       
Reading state information... Done
Some packages could not be installed. This may mean that you have
requested an impossible situation or if you are using the unstable
distribution that some required packages have not yet been created
or been moved out of Incoming.
The following information may help to resolve the situation:

The following packages have unmet dependencies:
 build-essential : Depends: libc6-dev but it is not going to be installed or
                            libc-dev
                   Depends: g++ (>= 4:4.9.1) but it is not going to be installed
E: Unable to correct problems, you have held broken packages.

then I try to install libc6-dev:

 

# apt-get install libc6-dev
Reading package lists... Done
Building dependency tree       
Reading state information... Done
Some packages could not be installed. This may mean that you have
requested an impossible situation or if you are using the unstable
distribution that some required packages have not yet been created
or been moved out of Incoming.
The following information may help to resolve the situation:

The following packages have unmet dependencies:
 libc6-dev : Depends: libc6 (= 2.19-18+deb8u10)
E: Unable to correct problems, you have held broken packages.

and obviously i will try to install libc6, but this is what i get.

 

# apt-get install libc6
Reading package lists... Done
Building dependency tree       
Reading state information... Done
libc6 is already the newest version (2.19-18+deb8u10.netgear1).
0 upgraded, 0 newly installed, 0 to remove and 84 not upgraded.

do you have any ideas why is that?

 

 

Model: RN10200|ReadyNAS 100 Series 2-Bay (Diskless)
Message 1 of 14

Accepted Solutions
OOM-9
NETGEAR Expert

Re: unable to install build-essential in 6.9.1

This issue was caused from the `20defaultrelease` file configured to use Debian Jessie.

/etc/apt/apt.conf.d/20defaultrelease 

It is not recommended to configure other debian repos to have higher primary. Please be careful when following websites that provide debian guides and may provide conflicts with os libraries, and make sure to keep the readynas repo with higher priority.

 

Here were some findings for other that might accedently run into this:

 

 

To help find a sample package to look at:

# dpkg -l | grep libc 
ii  libc-bin                       2.19-18+deb8u10.netgear1      armel        GNU C Library: Binaries
ii  libc-dev-bin                   2.19-18+deb8u10               armel        GNU C Library: Development binaries
ii  libc6:armel                    2.19-18+deb8u10.netgear1      armel        GNU C Library: Shared libraries
...

That is the list of packages that you have and the libc-dev-bin is a good example to use for the priority checking and seeing why we are not able to install the parent packaging.

Output from the lab unit:

# dpkg -l | grep libc
ii  libc-bin                       2.19-18+deb8u10.netgear1   armel        GNU C Library: Binaries
ii  libc-dev-bin                   2.19-18+deb8u10.netgear1   armel        GNU C Library: Development binaries
ii  libc6:armel                    2.19-18+deb8u10.netgear1   armel        GNU C Library: Shared libraries
ii  libc6-dev:armel                2.19-18+deb8u10.netgear1   armel        GNU C Library: Development Libraries and Header Files
...

The version is showing a newer version that is posted in the readynas repo.

 

Policy where the issue would start surfacing:

# apt-cache policy  libc-dev-bin
libc-dev-bin:
  Installed: 2.19-18+deb8u10
  Candidate: 2.19-18+deb8u10
  Version table:
     2.19-18+deb8u10.netgear1 900
        900 http://apt.readynas.com/packages/readynasos 6.9.2/main armel Packages
 *** 2.19-18+deb8u10 990
        990 http://mirrors.kernel.org/debian jessie/main armel Packages
        990 http://security.debian.org jessie/updates/main armel Packages
        990 http://http.us.debian.org/debian jessie/main armel Packages
        100 /var/lib/dpkg/status

It shows that it installed the older version that is not coming from the readynas repo. It also highlights the preferred repo to update from.

 

Policy from the lab unit:

# apt-cache policy libc-dev-bin
libc-dev-bin:
  Installed: 2.19-18+deb8u10.netgear1
  Candidate: 2.19-18+deb8u10.netgear1
  Version table:
 *** 2.19-18+deb8u10.netgear1 900
        900 http://apt.readynas.com/packages/readynasos 6.9.2/main armel Packages
        100 /var/lib/dpkg/status
     2.19-18+deb8u10 500
        500 http://mirrors.kernel.org/debian jessie/main armel Packages
        500 http://security.debian.org jessie/updates/main armel Packages

It shows that it prefers and installs the readynas repo version.

 

 

In this case, I remove the `20defaultrelease` config, and ran the following commands to check:

# apt clean
# apt update
# apt install build-essential Reading package lists... Done Building dependency tree Reading state information... Done The following additional packages will be installed: g++ g++-4.9 libc-dev-bin libc6-dev libstdc++-4.9-dev Suggested packages: gcc-4.9-doc libstdc++6-4.9-dbg glibc-doc manpages-dev libstdc++-4.9-doc Recommended packages: manpages-dev The following NEW packages will be installed: build-essential g++ g++-4.9 libc6-dev libstdc++-4.9-dev The following packages will be upgraded: libc-dev-bin 1 upgraded, 5 newly installed, 0 to remove and 61 not upgraded. Need to get 11.7 MB of archives. After this operation, 39.4 MB of additional disk space will be used. Do you want to continue? [Y/n]

 

View solution in original post

Message 13 of 14

All Replies
a4ex
Aspirant

Re: unable to install build-essential in 6.9.1

any suggestions?

Message 2 of 14
OOM-9
NETGEAR Expert

Re: unable to install build-essential in 6.9.1

There are a couple parts that you may want to update.

 

1) The `/etc/apt/sources.list` does get updated/overwritten on firmware updates, so you may want to have seperate debian apt configuration files in the `sources.list.d` directory.

 

2) Leads to the debian apt configurations:

For the ReadyNAS development packages, you can find them in the "dev" repo:

echo 'deb http://apt.readynas.com/packages/readynasos 6.9.1 dev' > /etc/apt/sources.list.d/readynas-dev.list

(It looks like this version of the `build-essential` is specific to netgear's version, so you would need the readynasos repo update.)

 

For the other debian packages that you have listed:

 

bash -c 'cat > /etc/apt/sources.list.d/debian-other.list' << EOF
deb http://ftp.uk.debian.org/debian jessie main non-free
deb http://archive.debian.org/debian etch main
EOF

  

 

What packages were you looking at in the etch version? (Its a little bit on the older side these days.)

 

Message 3 of 14
a4ex
Aspirant

Re: unable to install build-essential in 6.9.1

Hi,

I'm trying to install SABYenc but with no luck. I manage to install sometime ago an older version, but after ReadyNAS update, I'm unable to install new versions.

 

The problem I get is the same as I had the first time i did it.

pip install sabyenc==3.3.2
...
compilation terminated.

error: command 'arm-linux-gnueabi-gcc' failed with exit status

To over come this problem I installed build-essential.

 

Now i cant install build-essential, since it fails in dependencies.

Message 4 of 14
mdgm-ntgr
NETGEAR Employee Retired

Re: unable to install build-essential in 6.9.1

What output do you get when trying to install build-essential?

Message 5 of 14
a4ex
Aspirant

Re: unable to install build-essential in 6.9.1

Hi,

I have added all the related outputs in my first post.
Message 6 of 14
mdgm-ntgr
NETGEAR Employee Retired

Re: unable to install build-essential in 6.9.1

Still exactly the same output after making the changes that OOM-9 suggested?

Message 7 of 14
a4ex
Aspirant

Re: unable to install build-essential in 6.9.1

Hi,

 

With the new sources the problem stays the same.

 

# pip install sabyenc --upgrade
Downloading/unpacking sabyenc from https://pypi.python.org/packages/02/87/fedf093dbd2c426b0ead256a531d511d4800bb30163f6d5949b6f467caae/sabyenc-3.3.2.tar.gz#md5=0358d66f3bb1a79b04205088ab5a510a
  Downloading sabyenc-3.3.2.tar.gz
  Running setup.py (path:/tmp/pip-build-pYKVtF/sabyenc/setup.py) egg_info for package sabyenc
    
Installing collected packages: sabyenc
  Found existing installation: sabyenc 3.0.2
    Uninstalling sabyenc:
      Successfully uninstalled sabyenc
  Running setup.py install for sabyenc
    building 'sabyenc' extension
    arm-linux-gnueabi-gcc -pthread -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes -fno-strict-aliasing -D_FORTIFY_SOURCE=2 -g -fstack-protector-strong -Wformat -Werror=format-security -fPIC -I/usr/include/python2.7 -c src/sabyenc.c -o build/temp.linux-armv7l-2.7/src/sabyenc.o
    In file included from src/sabyenc.c:22:0:
    src/sabyenc.h:22:20: fatal error: Python.h: No such file or directory
     #include <Python.h>
                        ^
    compilation terminated.
    error: command 'arm-linux-gnueabi-gcc' failed with exit status 1
    Complete output from command /usr/bin/python -c "import setuptools, tokenize;__file__='/tmp/pip-build-pYKVtF/sabyenc/setup.py';exec(compile(getattr(tokenize, 'open', open)(__file__).read().replace('\r\n', '\n'), __file__, 'exec'))" install --record /tmp/pip-sXWG_E-record/install-record.txt --single-version-externally-managed --compile:
    running install

running build

running build_ext

building 'sabyenc' extension

creating build

creating build/temp.linux-armv7l-2.7

creating build/temp.linux-armv7l-2.7/src

arm-linux-gnueabi-gcc -pthread -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes -fno-strict-aliasing -D_FORTIFY_SOURCE=2 -g -fstack-protector-strong -Wformat -Werror=format-security -fPIC -I/usr/include/python2.7 -c src/sabyenc.c -o build/temp.linux-armv7l-2.7/src/sabyenc.o

In file included from src/sabyenc.c:22:0:

src/sabyenc.h:22:20: fatal error: Python.h: No such file or directory

 #include <Python.h>

                    ^

compilation terminated.

error: command 'arm-linux-gnueabi-gcc' failed with exit status 1

----------------------------------------
  Rolling back uninstall of sabyenc
Cleaning up...
Command /usr/bin/python -c "import setuptools, tokenize;__file__='/tmp/pip-build-pYKVtF/sabyenc/setup.py';exec(compile(getattr(tokenize, 'open', open)(__file__).read().replace('\r\n', '\n'), __file__, 'exec'))" install --record /tmp/pip-sXWG_E-record/install-record.txt --single-version-externally-managed --compile failed with error code 1 in /tmp/pip-build-pYKVtF/sabyenc
Storing debug log for failure in /root/.pip/pip.log

 

# apt-get install build-essential
Reading package lists... Done
Building dependency tree       
Reading state information... Done
Some packages could not be installed. This may mean that you have
requested an impossible situation or if you are using the unstable
distribution that some required packages have not yet been created
or been moved out of Incoming.
The following information may help to resolve the situation:

The following packages have unmet dependencies:
 build-essential : Depends: libc6-dev but it is not going to be installed or
                            libc-dev
                   Depends: g++ (>= 4:4.9.1) but it is not going to be installed
N: Ignoring file 'crosstools.list.no' in directory '/etc/apt/sources.list.d/' as it has an invalid filename extension
E: Unable to correct problems, you have held broken packages.

# apt-get install libc6-dev
Reading package lists... Done
Building dependency tree       
Reading state information... Done
Some packages could not be installed. This may mean that you have
requested an impossible situation or if you are using the unstable
distribution that some required packages have not yet been created
or been moved out of Incoming.
The following information may help to resolve the situation:

The following packages have unmet dependencies:
 libc6-dev : Depends: libc6 (= 2.19-18+deb8u10)
N: Ignoring file 'crosstools.list.no' in directory '/etc/apt/sources.list.d/' as it has an invalid filename extension
E: Unable to correct problems, you have held broken packages.

# apt-get install libc6
Reading package lists... Done
Building dependency tree       
Reading state information... Done
libc6 is already the newest version (2.19-18+deb8u10.netgear1).
0 upgraded, 0 newly installed, 0 to remove and 69 not upgraded.
N: Ignoring file 'crosstools.list.no' in directory '/etc/apt/sources.list.d/' as it has an invalid filename extension
Message 8 of 14
a4ex
Aspirant

Re: unable to install build-essential in 6.9.1

My sources now are like this:

 

Screenshot from 2018-01-30 22-35-46.pngScreenshot from 2018-01-30 22-36-08.png

 

Message 9 of 14
OOM-9
NETGEAR Expert

Re: unable to install build-essential in 6.9.1

I am suspecting there might be a file format issue somewhere. (And there is another config file that isn't being used.)

 

Did you want to enable secure diagnostic mode and PM me the 5-digit number so I can take a look at what is happening to the config files?

Message 10 of 14
kohdee
NETGEAR Expert

Re: unable to install build-essential in 6.9.1

Do you absolutely need 6.9.1, or can you try 6.9.2 or the 6.9.3 beta?

root@rn524x:~# apt-get install build-essential
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following additional packages will be installed:
  binutils bzip2 cpp cpp-4.9 dpkg-dev g++ g++-4.9 gcc gcc-4.9 libasan1 libatomic1 libcilkrts5 libcloog-isl4
  libdpkg-perl libgcc-4.9-dev libgomp1 libisl10 libitm1 liblsan0 libmpc3 libmpfr4 libquadmath0 libstdc++-4.9-dev
  libtimedate-perl libtsan0 libubsan0 make patch
Suggested packages:
  binutils-doc bzip2-doc cpp-doc gcc-4.9-locales debian-keyring g++-multilib g++-4.9-multilib gcc-4.9-doc
  libstdc++6-4.9-dbg gcc-multilib manpages-dev autoconf automake libtool flex bison gdb gcc-doc gcc-4.9-multilib
  libgcc1-dbg libgomp1-dbg libitm1-dbg libatomic1-dbg libasan1-dbg liblsan0-dbg libtsan0-dbg libubsan0-dbg
  libcilkrts5-dbg libquadmath0-dbg libstdc++-4.9-doc make-doc ed diffutils-doc
Recommended packages:
  fakeroot libalgorithm-merge-perl libfile-fcntllock-perl
The following NEW packages will be installed:
  binutils build-essential bzip2 cpp cpp-4.9 dpkg-dev g++ g++-4.9 gcc gcc-4.9 libasan1 libatomic1 libcilkrts5
  libcloog-isl4 libdpkg-perl libgcc-4.9-dev libgomp1 libisl10 libitm1 liblsan0 libmpc3 libmpfr4 libquadmath0
  libstdc++-4.9-dev libtimedate-perl libtsan0 libubsan0 make patch
0 upgraded, 29 newly installed, 0 to remove and 18 not upgraded.
Need to get 43.7 MB of archives.
After this operation, 124 MB of additional disk space will be used.
Do you want to continue? [Y/n] n
root@rn524x:~# apt-get install libc-dev
Reading package lists... Done
Building dependency tree
Reading state information... Done
Note, selecting 'libc6-dev' instead of 'libc-dev'
libc6-dev is already the newest version (2.19-18+deb8u10.netgear1).
root@rn524x:~# apt-get install libc6
Reading package lists... Done
Building dependency tree
Reading state information... Done
libc6 is already the newest version (2.19-18+deb8u10.netgear1).

 

Message 11 of 14
a4ex
Aspirant

Re: unable to install build-essential in 6.9.1

I'm already in 6.9.2 and the problem is the same. From your output I can see that I should have the libc6-dev pkg from Netgear, which I don't.
Does this pkg is installed by default?
Would 6.9.3 make any difference?
Message 12 of 14
OOM-9
NETGEAR Expert

Re: unable to install build-essential in 6.9.1

This issue was caused from the `20defaultrelease` file configured to use Debian Jessie.

/etc/apt/apt.conf.d/20defaultrelease 

It is not recommended to configure other debian repos to have higher primary. Please be careful when following websites that provide debian guides and may provide conflicts with os libraries, and make sure to keep the readynas repo with higher priority.

 

Here were some findings for other that might accedently run into this:

 

 

To help find a sample package to look at:

# dpkg -l | grep libc 
ii  libc-bin                       2.19-18+deb8u10.netgear1      armel        GNU C Library: Binaries
ii  libc-dev-bin                   2.19-18+deb8u10               armel        GNU C Library: Development binaries
ii  libc6:armel                    2.19-18+deb8u10.netgear1      armel        GNU C Library: Shared libraries
...

That is the list of packages that you have and the libc-dev-bin is a good example to use for the priority checking and seeing why we are not able to install the parent packaging.

Output from the lab unit:

# dpkg -l | grep libc
ii  libc-bin                       2.19-18+deb8u10.netgear1   armel        GNU C Library: Binaries
ii  libc-dev-bin                   2.19-18+deb8u10.netgear1   armel        GNU C Library: Development binaries
ii  libc6:armel                    2.19-18+deb8u10.netgear1   armel        GNU C Library: Shared libraries
ii  libc6-dev:armel                2.19-18+deb8u10.netgear1   armel        GNU C Library: Development Libraries and Header Files
...

The version is showing a newer version that is posted in the readynas repo.

 

Policy where the issue would start surfacing:

# apt-cache policy  libc-dev-bin
libc-dev-bin:
  Installed: 2.19-18+deb8u10
  Candidate: 2.19-18+deb8u10
  Version table:
     2.19-18+deb8u10.netgear1 900
        900 http://apt.readynas.com/packages/readynasos 6.9.2/main armel Packages
 *** 2.19-18+deb8u10 990
        990 http://mirrors.kernel.org/debian jessie/main armel Packages
        990 http://security.debian.org jessie/updates/main armel Packages
        990 http://http.us.debian.org/debian jessie/main armel Packages
        100 /var/lib/dpkg/status

It shows that it installed the older version that is not coming from the readynas repo. It also highlights the preferred repo to update from.

 

Policy from the lab unit:

# apt-cache policy libc-dev-bin
libc-dev-bin:
  Installed: 2.19-18+deb8u10.netgear1
  Candidate: 2.19-18+deb8u10.netgear1
  Version table:
 *** 2.19-18+deb8u10.netgear1 900
        900 http://apt.readynas.com/packages/readynasos 6.9.2/main armel Packages
        100 /var/lib/dpkg/status
     2.19-18+deb8u10 500
        500 http://mirrors.kernel.org/debian jessie/main armel Packages
        500 http://security.debian.org jessie/updates/main armel Packages

It shows that it prefers and installs the readynas repo version.

 

 

In this case, I remove the `20defaultrelease` config, and ran the following commands to check:

# apt clean
# apt update
# apt install build-essential Reading package lists... Done Building dependency tree Reading state information... Done The following additional packages will be installed: g++ g++-4.9 libc-dev-bin libc6-dev libstdc++-4.9-dev Suggested packages: gcc-4.9-doc libstdc++6-4.9-dbg glibc-doc manpages-dev libstdc++-4.9-doc Recommended packages: manpages-dev The following NEW packages will be installed: build-essential g++ g++-4.9 libc6-dev libstdc++-4.9-dev The following packages will be upgraded: libc-dev-bin 1 upgraded, 5 newly installed, 0 to remove and 61 not upgraded. Need to get 11.7 MB of archives. After this operation, 39.4 MB of additional disk space will be used. Do you want to continue? [Y/n]

 

Message 13 of 14
a4ex
Aspirant

Re: unable to install build-essential in 6.9.1

Thank you all so much for the support.

 

I did add this configuration some time ago, when i was tring to install CrossToolchains and completely forgot it. At that time this configuration did not cuased any problems installing build-essential but after the FW update, the priorities kickd in.

Message 14 of 14
Top Contributors
Discussion stats
  • 13 replies
  • 3300 views
  • 2 kudos
  • 4 in conversation
Announcements