|
NetBSD Package System (pkgsrc) Installation and upgrading of packages on NetBSD. |
|
Thread Tools | Display Modes |
|
|||
pkg_chk c++ compiler not available
Hi all,
I recently upgraded from NetBSD 3.x to 4.0 using the cd upgrade method. Everything seemed to work OK. I managed to get the new pkgsrc tree using csup. When I run: Code:
#pkg_chk -a -u -s -L /var/log/pkgchk.2008-05-19.log Code:
checking whether to enable maintainer-specific portions of Makefiles... no checking ABI=32 checking whether cc is gcc... yes checking compiler cc -O2 ... yes checking compiler cc -O2 has sizeof(long)==4... yes checking for i386--netbsdelf-gcc... cc checking for C compiler default output file name... a.out checking whether the C compiler works... yes checking whether we are cross compiling... no checking for suffix of executables... checking for suffix of object files... o checking whether we are using the GNU C compiler... yes checking whether cc accepts -g... yes checking for cc option to accept ISO C89... none needed checking for cc option to accept ISO C99... none needed checking for cc option to accept ISO Standard C... (cached) none needed checking how to run the C preprocessor... cc -E checking build system compiler cc... yes checking for build system preprocessor... cc -E checking for build system executable suffix... checking whether build system compiler is ANSI... yes checking for build system compiler math library... -lm checking whether we are using the GNU C++ compiler... yes checking whether c++ accepts -g... yes checking C++ compiler c++ -O2... no, std iostream configure: error: C++ compiler not available, see config.log for details make: stopped in /usr/pkgsrc/devel/gmp make: stopped in /usr/pkgsrc/devel/gmp make: stopped in /usr/pkgsrc/devel/gmp ** 'cd /usr/pkgsrc/devel/gmp && /usr/bin/make update CLEANDEPENDS=yes' failed *** ** 'cd /usr/pkgsrc/devel/gmp && /usr/bin/make update CLEANDEPENDS=yes' failed I tried installing gcc from '/usr/pkgsrc/lang/gcc' but I still get the error. I am stumped and have nothing on the system as pkg_chk removed everything first . Any ideas would be greatly appreciated. Cheers, Troy |
|
|||
First, check your path, make sure all of the "normal" stuff is in there, /bin, /sbin, /usr/bin, /usr/sbin, things like that. If not, put them in and try again.
Also, did you install the compiler collection when you did the system upgrade? If you don't want to, you'll have to do a binary package install to get one. Doing a 'make bin-install DEPENDS_TARGET=bin-install' in /lang/gcc3 should get you the default gcc compiler set without having one installed already. |
|
|||
HitScan, thanks for the reply!
The path variable seems to look ok: Code:
#echo $PATH /home/troy/bin:/bin:/sbin:/usr/bin:/usr/sbin:/usr/X11R6/bin:/usr/pkg/bin:/usr/pkg/sbin:/usr/games:/usr/local/bin:/usr/local/sbin Code:
#cd /usr/pkgsrc/lang/gcc3 #make bin-install DEPENDS_TARGET=bin-install ===> Binary install for gcc3-3.3.6 => Installing gcc3-3.3.6 from /usr/pkgsrc/packages/All;ftp://ftp.NetBSD.org/pub/ NetBSD/packages/4.0/i386/All pkg_add: could not process directory ftp: connect to address 2001:4f8:4:7:230:48ff:fe31:43f2: No route to host tar: ustar vol 1, 7 files, 10240 bytes read, 0 bytes written in 1 secs (10240 by tes/sec) pkg_add: could not process directory pkg_add: no pkg found for 'gcc3-c++-3.3.6{,nb*}', sorry. pkg_add: 1 package addition failed pkg_add: autoload of dependency `gcc3-c++-3.3.6{,nb*}' failed! pkg_add: could not process directory pkg_add: no pkg found for 'gcc3-f77-3.3.6{,nb*}', sorry. pkg_add: 1 package addition failed pkg_add: autoload of dependency `gcc3-f77-3.3.6{,nb*}' failed! pkg_add: could not process directory pkg_add: no pkg found for 'gcc3-java-3.3.6{,nb*}', sorry. pkg_add: 1 package addition failed pkg_add: autoload of dependency `gcc3-java-3.3.6{,nb*}' failed! pkg_add: could not process directory pkg_add: no pkg found for 'gcc3-objc-3.3.6{,nb*}', sorry. pkg_add: 1 package addition failed pkg_add: autoload of dependency `gcc3-objc-3.3.6{,nb*}' failed! Thanks, Troy |
|
|||
That line about not being able to process the directory is a problem. I'm not sure what the problem was either, since I went to the FTP site that it uses and the files appear to be there.
You might just try again tomorrow (sometimes networks do odd things) and if that doesn't help what you could try next is just using ftp to connect to ftp://ftp.NetBSD.org/pub/NetBSD/packages/4.0/i386/All and downloading all 4 or 5 files that start with "gcc3-" (ftp can do tab-completion and wildcards, so you don't necessarily need to know each file's whole name) Then in the directory where you downloaded the files, run pkg_add gcc3-3.3.6.tgz and it should be able to get things moving. Note however that doing it this way may make it stop with more errors if additional dependencies are required, but you can just download them from the ftp site above and start again. |
|
|||
HitScan,
Thanks for the advice. I ended up downloading the gcc3*.tgz files from the ftp site manually as I couldn't get a connection. Code:
#ls -lh total 47M -rw-r--r-- 1 root wheel 1.3K May 20 07:12 gcc3-3.3.6.tgz -rw-r--r-- 1 root wheel 2.4M May 20 07:13 gcc3-c++-3.3.6.tgz -rw-r--r-- 1 root wheel 3.8M May 20 07:14 gcc3-c-3.3.6.tgz -rw-r--r-- 1 root wheel 1.8M May 20 07:13 gcc3-f77-3.3.6.tgz -rw-r--r-- 1 root wheel 37M May 20 07:14 gcc3-java-3.3.6.tgz -rw-r--r-- 1 root wheel 1.3M May 20 07:14 gcc3-objc-3.3.6.tgz Code:
#pkg_add gcc3-3.3.6.tgz =========================================================================== $NetBSD: MESSAGE,v 1.2 2003/07/08 15:04:58 drochner Exp $ To use gcc3-c++-3.3.6 include "/usr/pkg/gcc3/mk/c++.mk" in your BSD style makefile. =========================================================================== =========================================================================== $NetBSD: MESSAGE,v 1.2 2003/07/08 15:05:00 drochner Exp $ To use gcc3-f77-3.3.6 include "/usr/pkg/gcc3/mk/f77.mk" in your BSD style makefile. =========================================================================== Code:
# pkg_info -a digest-20080510 Message digest wrapper utility libtool-base-1.5.24nb5 Generic shared library support script (the script itself) php-5.2.6 PHP Hypertext Preprocessor version 5 gmake-3.81 GNU version of 'make' utility db4-4.6.21 Berkeley DB version 4 from Oracle perl-5.8.8nb7 Practical Extraction and Report Language pkg_install-20080423 Package management and administration tools for pkgsrc unzip-5.52nb4 List, test and extract compressed files in a ZIP archive readline-5.2nb1 GNU library that can recall and edit previous input freetds-0.82 Implementation of TDS protocol used by Sybase and MS-SQL ser m4-1.4.11nb1 GNU version of UNIX m4 macro language processor autoconf-2.62 Generates automatic source code configuration scripts mysql-client-5.0.51nb3 MySQL 5, a free SQL database (client) mysql-server-5.0.51nb1 MySQL 5, a free SQL database (server) automake-1.10.1 GNU Standards-compliant Makefile generator libxml2-2.6.32 XML parser library from the GNOME project php5-mysql-5.2.6 PHP extension for MySQL databases expat-2.0.1 XML parser library written in C libltdl-1.5.24 Generic shared library support (libltdl abstraction library) xmlcatmgr-2.2nb1 XML and SGML catalog manager php5-mbstring-5.2.6 PHP extension for multibyte characters support (currently, J phpmyadmin-2.11.5.2 Set of PHP-scripts to adminstrate MySQL over the WWW python24-2.4.5 Interpreted, interactive, object-oriented programming langua unixodbc-2.2.12 ODBC 2.x/3.x driver manager jpeg-6bnb4 IJG's jpeg compression utilities py24-mysqldb-0.9.2nb3 MySQL interface for Python apr-0.9.17.2.0.63 Apache Portable Runtime bison-2.3 GNU yacc(1) replacement pkg_chk-1.92 Check installed package versions against pkgsrc gcc3-c-3.3.6 GNU Compiler Collection, v3 - C compiler gcc-2.95.3nb7 GNU Compiler Collection, version 2 gcc3-c++-3.3.6 GNU Compiler Collection, v3 - C++ compiler gcc3-f77-3.3.6 GNU Compiler Collection, v3 - F77 compiler gcc3-java-3.3.6 GNU Compiler Collection, v3 - Java compiler gcc3-objc-3.3.6 GNU Compiler Collection, v3 - Objective C compiler freetype2-2.3.5 Font rendering engine and library API gcc3-3.3.6 GNU Compiler Collection, v3 tiff-3.8.2nb3 Library and tools for reading and writing TIFF data files postfix-2.4.5 --- !ruby/object:RI::ClassDes libmcrypt-2.5.8 Crypto algorithms library mhash-0.9.9 Hash algorithms library docbook-xml-4.4nb4 XML DTD designed for computer documentation docbook-xsl-1.73.2nb1 Docbook XSL modular stylesheet libgpg-error-1.4nb2 Definitions of common error values for all GnuPG components csup-20070216 Rewrite of the CVSup file updating client in C Code:
# cd /usr/pkgsrc/devel/gmp # make => Bootstrap dependency digest>=20010302: found digest-20080510 ===> Skipping vulnerability checks. WARNING: No /var/db/pkg/pkg-vulnerabilities file found. WARNING: To fix run: `/usr/pkg/sbin/download-vulnerability-list'. ===> Configuring for gmp-4.2.2nb1 cd /usr/pkgsrc/devel/gmp/work/gmp-4.2.2 && type autoconf && autoconf autoconf is /usr/pkgsrc/devel/gmp/work/.tools/bin/autoconf configure.in:2162: warning: AC_CACHE_VAL(lt_prog_compiler_pic_works, ...): suspicious cache-id, must contain _cv_ to be cached ../../lib/autoconf/general.m4:1973: AC_CACHE_VAL is expanded from... ../../lib/autoconf/general.m4:1993: AC_CACHE_CHECK is expanded from... aclocal.m4:638: AC_LIBTOOL_COMPILER_OPTION is expanded from... aclocal.m4:4926: AC_LIBTOOL_PROG_COMPILER_PIC is expanded from... aclocal.m4:2706: _LT_AC_LANG_C_CONFIG is expanded from... aclocal.m4:2705: AC_LIBTOOL_LANG_C_CONFIG is expanded from... aclocal.m4:86: AC_LIBTOOL_SETUP is expanded from... aclocal.m4:66: _AC_PROG_LIBTOOL is expanded from... aclocal.m4:31: AC_PROG_LIBTOOL is expanded from... configure.in:2162: the top level configure.in:2162: warning: AC_CACHE_VAL(lt_prog_compiler_static_works, ...): suspicious cache-id, must contain _cv_ to be cached aclocal.m4:683: AC_LIBTOOL_LINKER_OPTION is expanded from... configure.in:2162: warning: AC_CACHE_VAL(lt_prog_compiler_pic_works_CXX, ...): suspicious cache-id, must contain _cv_ to be cached aclocal.m4:2783: _LT_AC_LANG_CXX_CONFIG is expanded from... aclocal.m4:2782: AC_LIBTOOL_LANG_CXX_CONFIG is expanded from... aclocal.m4:1831: _LT_AC_TAGCONFIG is expanded from... configure.in:2162: warning: AC_CACHE_VAL(lt_prog_compiler_static_works_CXX, ...): suspicious cache-id, must contain _cv_ to be cached configure.in:2162: warning: AC_CACHE_VAL(lt_prog_compiler_pic_works_F77, ...): suspicious cache-id, must contain _cv_ to be cached aclocal.m4:4005: _LT_AC_LANG_F77_CONFIG is expanded from... aclocal.m4:4004: AC_LIBTOOL_LANG_F77_CONFIG is expanded from... configure.in:2162: warning: AC_CACHE_VAL(lt_prog_compiler_static_works_F77, ...): suspicious cache-id, must contain _cv_ to be cached configure.in:2162: warning: AC_CACHE_VAL(lt_prog_compiler_pic_works_GCJ, ...): suspicious cache-id, must contain _cv_ to be cached aclocal.m4:4114: _LT_AC_LANG_GCJ_CONFIG is expanded from... aclocal.m4:4113: AC_LIBTOOL_LANG_GCJ_CONFIG is expanded from... configure.in:2162: warning: AC_CACHE_VAL(lt_prog_compiler_static_works_GCJ, ...): suspicious cache-id, must contain _cv_ to be cached => Modifying GNU configure scripts to avoid --recheck => Replacing config-guess with pkgsrc versions => Replacing config-sub with pkgsrc versions => Replacing install-sh with pkgsrc version configure: WARNING: If you wanted to set the --build type, don't use --host. If a cross compiler is detected then cross compile mode will be used. checking build system type... i386-unknown-netbsdelf4.0 checking host system type... i386--netbsdelf checking for a BSD-compatible install... /usr/bin/install -c -o root -g wheel checking whether build environment is sane... yes checking for gawk... /usr/bin/awk checking whether make sets $(MAKE)... yes checking for i386--netbsdelf-strip... no checking for strip... strip checking whether to enable maintainer-specific portions of Makefiles... no checking ABI=32 checking whether cc is gcc... yes checking compiler cc -O2 ... yes checking compiler cc -O2 has sizeof(long)==4... yes checking for i386--netbsdelf-gcc... cc checking for C compiler default output file name... a.out checking whether the C compiler works... yes checking whether we are cross compiling... no checking for suffix of executables... checking for suffix of object files... o checking whether we are using the GNU C compiler... yes checking whether cc accepts -g... yes checking for cc option to accept ISO C89... none needed checking for cc option to accept ISO C99... none needed checking for cc option to accept ISO Standard C... (cached) none needed checking how to run the C preprocessor... cc -E checking build system compiler cc... yes checking for build system preprocessor... cc -E checking for build system executable suffix... checking whether build system compiler is ANSI... yes checking for build system compiler math library... -lm checking whether we are using the GNU C++ compiler... yes checking whether c++ accepts -g... yes checking C++ compiler c++ -O2... no, std iostream configure: error: C++ compiler not available, see config.log for details *** Error code 1 Stop. make: stopped in /usr/pkgsrc/devel/gmp *** Error code 1 Stop. make: stopped in /usr/pkgsrc/devel/gmp Cheers, Troy |
|
|||
You should also be able to run gcc -v and get some version information, if that doesn't work, then there is another problem. You may also want to try asking netbsd-users at netbsd.org.
Last edited by HitScan; 21st May 2008 at 11:22 AM. Reason: removed email differently |
|
|||
please don't put email addresses in posts
|
|
|||
Quote:
Code:
#gcc -v Using built-in specs. Configured with: /home/nick/work/netbsd/src/tools/gcc/../../gnu/dist/gcc/configure --enable-long-long --disable-multilib --enable-threads --disable-symvers --build=i386-unknown-netbsdelf2.0. --host=i386--netbsdelf --target=i386--netbsdelf Thread model: posix gcc version 3.3.3 (NetBSD nb3 20040520) |
|
|||
OK, but I think the way I changed it is a little easier for new users to figure out.
fenriswolf: you most likely do have both on your machine, but it's not picking up the pkgsrc version due to your path. If you type 'which gcc' it will tell you where that 3.3.3 is coming from. You can put /usr/pkg/bin before that in the path, but that probably still won't help pkgsrc. If you go to the work directory of a package that's given you that error, you can check the .work.log file for a list of the actual commands run, just head to the end and see what's being tried. I may have aimed you at the wrong email list also, pkgsrc-users at netbsd.org would likely be better. |
|
|||
It seems the package '/usr/pkgsrc/devel/gmp' a dependence for something else is looking for the c++ bin in the work folder '/usr/pkgsrc/devel/gmp/work'?
Code:
#tail .work.log[*] /usr/pkgsrc/devel/gmp/work/.wrapper/bin/c++ /usr/pkgsrc/devel/gmp/work/.wrapper/bin/c++ -c -O2 conftest.cpp <.> /usr/pkgsrc/devel/gmp/work/.gcc/bin/g++ -c -O2 conftest.cpp -I/usr/pkgsrc/devel/gmp/work/.buildlink/include -L/usr/pkgsrc/devel/gmp/work/.buildlink/lib[*] /usr/pkgsrc/devel/gmp/work/.wrapper/bin/c++ /usr/pkgsrc/devel/gmp/work/.wrapper/bin/c++ -c -g conftest.cpp <.> /usr/pkgsrc/devel/gmp/work/.gcc/bin/g++ -c -g conftest.cpp -I/usr/pkgsrc/devel/gmp/work/.buildlink/include -L/usr/pkgsrc/devel/gmp/work/.buildlink/lib[*] /usr/pkgsrc/devel/gmp/work/.wrapper/bin/c++ /usr/pkgsrc/devel/gmp/work/.wrapper/bin/c++ -O2 conftest.cc <.> /usr/pkgsrc/devel/gmp/work/.gcc/bin/g++ -O2 conftest.cc -I/usr/pkgsrc/devel/gmp/work/.buildlink/include -L/usr/pkgsrc/devel/gmp/work/.buildlink/lib[*] /usr/pkgsrc/devel/gmp/work/.wrapper/bin/c++ /usr/pkgsrc/devel/gmp/work/.wrapper/bin/c++ -O2 conftest.cc <.> /usr/pkgsrc/devel/gmp/work/.gcc/bin/g++ -O2 conftest.cc -I/usr/pkgsrc/devel/gmp/work/.buildlink/include -L/usr/pkgsrc/devel/gmp/work/.buildlink/lib[*] /usr/pkgsrc/devel/gmp/work/.wrapper/bin/c++ /usr/pkgsrc/devel/gmp/work/.wrapper/bin/c++ -O2 conftest.cc <.> /usr/pkgsrc/devel/gmp/work/.gcc/bin/g++ -O2 conftest.cc -I/usr/pkgsrc/devel/gmp/work/.buildlink/include -L/usr/pkgsrc/devel/gmp/work/.buildlink/lib Code:
#ls -lh .gcc/bin total 105B lrwxr-xr-x 1 root wheel 3B May 19 09:24 c++ -> g++ lrwxr-xr-x 1 root wheel 3B May 19 09:24 cc -> gcc -rwxr-xr-x 1 root wheel 33B May 19 09:24 cpp -rwxr-xr-x 1 root wheel 33B May 19 09:24 g++ -rwxr-xr-x 1 root wheel 33B May 19 09:24 gcc Code:
#ls -lh .wrapper/bin total 35K -rwxr-xr-x 4 root wheel 2.7K May 19 09:24 CC -rwxr-xr-x 1 root wheel 2.5K May 19 09:24 as -rwxr-xr-x 4 root wheel 2.7K May 19 09:24 c++ -rwxr-xr-x 2 root wheel 2.7K May 19 09:24 cc -rwxr-xr-x 1 root wheel 2.6K May 19 09:24 cpp -rwxr-xr-x 4 root wheel 2.7K May 19 09:24 cxx -rwxr-xr-x 2 root wheel 2.7K May 19 09:24 f77 -rwxr-xr-x 4 root wheel 2.7K May 19 09:24 g++ -rwxr-xr-x 2 root wheel 2.7K May 19 09:24 g77 -rwxr-xr-x 2 root wheel 2.7K May 19 09:24 gcc -rwxr-xr-x 1 root wheel 2.6K May 19 09:24 ld -rwxr-xr-x 1 root wheel 2.7K May 19 09:24 libtool -rwxr-xr-x 1 root wheel 2.7K May 19 09:24 shlibtool Cheers and thanks, Troy |
|
|||
Forgot to add which gcc tells me that it is installed in /usr/bin
|
|
|||
See if '/usr/pkg/bin/gcc -v' will work. If so, you may just need to adjust your path so that /usr/pkg/bin comes before /usr/bin. Also, you'll need to do a 'make clean' for the packages that have failed so they can start over. You can't change the location that a pkg looks for gcc. work/.gcc/bin is put there by part of pkgsrc, gcc is copied in on purpose.
If you've got a lot of work directories in pkgsrc it might be quicker to just do the following: cd /usr/pkgrsc rm -rf */*/work You'll want to be very careful with the spaces. If none of that helps, you may have to ask the email list. I'd have likely started over from a blank install by now if it were just my home machine, so I probably can't offer much more help. |
|
|||
I had to move /usr/pkg/gcc3/bin ahead of the /usr/pkg/bin and /usr/bin in my PATH. When I try to run it I get a different error
Code:
#cd /usr/pkgsrc/devel/gmp #make update //snipped // checking C++ compiler c++ -I/usr/pkg/include -O2 -I/usr/pkg/include... no, std iostream configure: error: C++ compiler not available, see config.log for details *** Error code 1 Stop. make: stopped in /usr/pkgsrc/devel/gmp *** Error code 1 Stop. make: stopped in /usr/pkgsrc/devel/gmp *** Error code 1 Stop. make: stopped in /usr/pkgsrc/devel/gmp Quote:
Thanks, Troy |
|
|||
I bit the bullet and reinstalled from scratch... Everything is good now except for some configuration issues.
Cheers and thanks, Troy |
|
|||
Glad to hear it's working. Hopefully you'll have better luck from here on out.
|
|
||||
I think this is a common problem when upgrading.
As a rule when a software is compiled from pkgsrc its installs on /usr/pkg/bin. nothing new. And the old software is still installed in /usr/bin /usr /lib , etc I just remove the old software and make a soft links. The are some older soft links that can not be deleted because they are needed by older versions of programs. Reg /T I remember (vaguely) when i upgraded to a never version of some compiler, then i had to register the shared objects (libraries) again i think. Maybe this was not your problem , but is good to know how to handle it. Read : http://www.daemon-systems.org/man/ldconfig.8.html, http://www.daemon-systems.org/man/ld.so.conf.5.html. Last edited by tonyex; 30th June 2008 at 10:55 AM. |
|
|
Similar Threads | ||||
Thread | Thread Starter | Forum | Replies | Last Post |
building cross compiler, having issues | moonlightcheese | FreeBSD General | 2 | 13th September 2008 02:22 PM |
java compiler | bsdnewbie999 | OpenBSD Packages and Ports | 8 | 9th August 2008 12:18 PM |
pcc compiler question | ChineseBroccoli | FreeBSD General | 1 | 11th June 2008 11:29 PM |