# python header files not found



## Crotalus (Jan 17, 2013)

Following problem when installing kde4 on new 9.1-RELEASE on new empty hard drive. I have highlighted some of the things that I feel is significant.


```
checking for swig... (cached) true
checking python2.7/Python.h usability... no
checking python2.7/Python.h presence... no
[B]checking for python2.7/Python.h... no
configure: error: Can't find python header files[/B]
===>  Script "configure" failed unexpectedly.
Please run the gnomelogalyzer, available from
"http://www.freebsd.org/gnome/gnomelogalyzer.sh", which will diagnose the
problem and suggest a solution. If - and only if - the gnomelogalyzer cannot
solve the problem, report the build failure to the FreeBSD GNOME team at
[email]gnome@FreeBSD.org[/email], and attach (a)
"/usr/ports/devel/libical/work/libical-0.44/config.log", (b) the output of
the failed make command, and (c) the gnomelogalyzer output. Also, it might
be a good idea to provide an overview of all packages installed on your system
(i.e. an `ls /var/db/pkg`). Put your attachment up on any website,
copy-and-paste into [url]http://freebsd-gnome.pastebin.com[/url], or use send-pr(1) with
the attachment. Try to avoid sending any attachments to the mailing list
(gnome@FreeBSD.org), because attachments sent to FreeBSD mailing lists are
usually discarded by the mailing list software.
```

This from /usr/ports/devel/libical/work/libical-0.44/config.log

```
Stop in /usr/ports/devel/libical.
*** [lib-depends] Error code 1

configure:20438: $? = 0
configure:20441: test -s conftest
configure:20444: $? = 0
configure:20456: result: yes
configure:20712: checking for python
configure:20739: result: true
configure:20748: checking for swig
configure:20775: result: true
configure:20797: checking python2.7/Python.h usability
configure:20809: cc -c -O2 -pipe -fPIC -fno-strict-aliasing -I/usr/local/include conftest.c >&5
In file included from conftest.c:81:
/[B]usr/local/include/python2.7/Python.h:166:17: error: pth.h: No such file or directory[/B]
configure:20815: $? = 1 
configure: failed program was:
| /* confdefs.h.  */
```
This part of pth.h

```
#ifdef HAVE_PTH
/* GNU pth user-space thread support */
[B]#include <pth.h>[/B]
#endif
```


I found a fix from 2010 for python2.6 that copied the header files to another directory. I did this as shown below. 

`# find / -name Python.h -print`
/usr/local/include/pth/Python.h
/usr/local/include/python2.7/Python.h

and 

`# find / -name pth.h -print`
/usr/local/include/pth/pth.h
/usr/local/include/python2.7/pth.h

I also did a deinstall and a reinstall without any difference.

I did not do an explicit install of python so it had to come from one of the other installs such as mysql, samba, or xorg. When a option screen appeared I took the default install options. There is no package that I can find for 9.1-Release on any of the ftp servers and there were none on the downloaded DVD. 

The header files that the install can't find is on the system in two different places. What does it want, Python.h or pth.h? It appears that there is not a proper path or the files are in the wrong place.

Here is my question, where can I copy the Python header files so the compile will run?

Anybody have any ideas?


----------



## cpm@ (Jan 18, 2013)

Rebuild lang/python27 without PTH option (disable it).


----------



## Crotalus (Jan 19, 2013)

I deleted python2.7 and then tried to set the option PTH OFF with this result

`# cd /usr/ports/lang/python/ && make config
===> No options to configure`

I proceeded to add the package for python again and I get the same results with kde4.
Looking at /usr/ports/UPDATING the only references to python was upgrading from  2.6 to 2.7 and upgrading from 2.6 to 2.7. I am not upgrading as it was a new install on a new raw hard drive.

I also deleted pth with the same results

I did a `#  cd /usr/ports/x11/kde4/ && make config`


                                    +--------------------------------------------------------------------+
                                    | Options for kde 4.8.4                                              |
                                    | +----------------------------------------------------------------+ |
                                    | |  [*] KDEACCESSIBILITY  Accessibility applications                                                     | |
                                    | |  [*] KDEADMIN          Administration utilities                | |
                                    | |  [*] KDEARTWORK        Additional screensavers and wallpapers  | |
                                    | | [  ] KDEBINDINGS       Bindings for programming languages      | |
                                    | |  [*] KDEEDU            Entertaining, educational programs      | |
                                    | |  [*] KDEGAMES          Collection of games                     | |
                                    | |  [*] KDEGRAPHICS       Graphics utilities                      | |
                                    | |  [*] KDEMULTIMEDIA     Multimedia applications                 | |
                                    | |  [*] KDENETWORK        Network-related programs                | |
                                    | |  [*] KDEPIM            Personal information management         | |
                                    | |  [*] KDEPLASMA         Extra plasmoids and plugins for Plasma  | |
                                    | |  [*] KDESDK            Software development kit                | |
                                    | |  [*] KDETOYS           Miscellaneous small applications        | |
                                    | |  [*] KDEUTILS          Set of generic utilities                
                                    | |  [*] KDEWEBDEV         Web development environment 
                                    | +------v(+)---------------------------------------------100%------+ |
                                    +--------------------------------------------------------------------+
                                    |                   <  OK  >          <Cancel>                       |
                                    +--------------------------------------------------------------------+

I tried kde4 with the `# KDEBINDINGS` set with the same result.

I attempted the following; `#  echo $PATH
/sbin:/bin:/usr/sbin:/usr/bin:/usr/games:/usr/local/sbin:/usr/local/bin:/root/bin`
`# set path=($path;/usr/local/include/python2.7)`
`#  echo $PATH
/sbin:/bin:/usr/sbin:/usr/bin:/usr/games:/usr/local/sbin:/usr/local/bin:/root/bin:;:/usr/local/include/python2.7`

This would have set the header files in the path for the compile. However the result with 
kd4 was the same.

Anybody have any ideas?

Keith


----------



## cpm@ (Jan 19, 2013)

The port on which you have to work is lang/python27.

To rebuild this port or any:

`# make deinstall clean reinstall clean`

To install KDE4 use ports-mgmt/portmaster, is preferable to install with portmaster(8) instead the old method.

`# portmaster x11/kde4`


----------



## Crotalus (Jan 19, 2013)

cpu82 said:
			
		

> The port on which you have to work is lang/python27.
> 
> To rebuild this port or any:
> 
> `# make deinstall clean reinstall clean`



I did that already after trying to find options in the Makefile with the same results installing kde4.


----------



## cpm@ (Jan 19, 2013)

Try to install devel/libical as following:

`# make -DWITHOUT_PYTHON install clean`


----------



## Crotalus (Jan 19, 2013)

cpu82 said:
			
		

> Try to install devel/libical as following:
> 
> `# make -DWITHOUT_PYTHON install clean`


I followed your suggestion and it continued to install the package. I don't know why, but thanks.

I now have another problem with cups-base as shown below;

`#  cd /usr/ports/x11/kde4/ && make install clean
===>  Installing for kde-4.8.4
===>   kde-4.8.4 depends on package: kdeaccessibility>=4.8.0 - found
===>   kde-4.8.4 depends on file: /usr/local/kde4/bin/kuser - not found
===>    Verifying install for /usr/local/kde4/bin/kuser in /usr/ports/sysutils/kdeadmin4
===>  Installing for kdeadmin-4.8.4
===>   kdeadmin-4.8.4 depends on file: /usr/local/kde4/share/apps/system-config-printer-kde/system-config-printer-kde.py - not found
===>    Verifying install for /usr/local/kde4/share/apps/system-config-printer-kde/system-config-printer-kde.py in /usr/ports/print/system-config-printer-kde
===>  Installing for system-config-printer-kde-4.8.4
===>   system-config-printer-kde-4.8.4 depends on executable: system-config-printer - found
===>   system-config-printer-kde-4.8.4 depends on file: /usr/local/lib/python2.7/site-packages/cups.so - found
===>   system-config-printer-kde-4.8.4 depends on executable: cupsd - not found
===>    Verifying install for cupsd in /usr/ports/print/cups-base
===>  [b][color="Red"]Building for cups-base-1.5.2_2[/color][/b]
/bin/cp -p /usr/local/lib/libcups.a /usr/ports/print/cups-base/work/cups-1.5.2/cups/
/bin/cp -p /usr/local/lib/libcups.so /usr/ports/print/cups-base/work/cups-1.5.2/cups/
/bin/cp -p /usr/local/lib/libcups.so.2 /usr/ports/print/cups-base/work/cups-1.5.2/cups/
/bin/cp -p /usr/local/lib/libcupsimage.so /usr/ports/print/cups-base/work/cups-1.5.2/filter/
/bin/cp -p /usr/local/lib/libcupsimage.so.2 /usr/ports/print/cups-base/work/cups-1.5.2/filter/
chmod +x cups-config
echo Using ARCHFLAGS=""
Using ARCHFLAGS=
echo Using ALL_CFLAGS="-I.. -D_CUPS_SOURCE -I/usr/local/include -O2 -pipe  -fno-strict-aliasing -DOPENSSL_DISABLE_OLD_DES_SUPPORT -D_LARGEFILE_SOURCE  -D_THREAD_SAFE -D_REENTRANT "
Using ALL_CFLAGS=-I.. -D_CUPS_SOURCE -I/usr/local/include -O2 -pipe  -fno-strict-aliasing -DOPENSSL_DISABLE_OLD_DES_SUPPORT -D_LARGEFILE_SOURCE  -D_THREAD_SAFE -D_REENTRANT 
echo Using ALL_CXXFLAGS="-I.. -D_CUPS_SOURCE -I/usr/local/include -O2 -pipe -fno-strict-aliasing -DOPENSSL_DISABLE_OLD_DES_SUPPORT -D_LARGEFILE_SOURCE  -D_THREAD_SAFE -D_REENTRANT "
Using ALL_CXXFLAGS=-I.. -D_CUPS_SOURCE -I/usr/local/include -O2 -pipe -fno-strict-aliasing -DOPENSSL_DISABLE_OLD_DES_SUPPORT -D_LARGEFILE_SOURCE  -D_THREAD_SAFE -D_REENTRANT 
echo Using CC="cc"
Using CC=cc
echo Using CXX="cc"
Using CXX=cc
echo Using DSOFLAGS="-L../cups -Wl,-R/usr/local/lib -Wl,-rpath,/usr/local/lib -L/usr/local/lib  -L/usr/local/lib -rpath=/usr/lib:/usr/local/lib -Wl,-soname,`basename all` -shared -Wall -Wno-format-y2k -Wunused -fPIC -Os -g -fstack-protector"
Using DSOFLAGS=-L../cups -Wl,-R/usr/local/lib -Wl,-rpath,/usr/local/lib -L/usr/local/lib  -L/usr/local/lib -rpath=/usr/lib:/usr/local/lib -Wl,-soname,all -shared -Wall -Wno-format-y2k -Wunused -fPIC -Os -g -fstack-protector
echo Using LDFLAGS="-L../cgi-bin -L../cups -L../filter -L../ppdc -L../scheduler -L/usr/local/lib -rpath=/usr/lib:/usr/local/lib -Wl,-R/usr/local/lib   -Wall -Wno-format-y2k -Wunused -fPIC -Os -g -fstack-protector"
Using LDFLAGS=-L../cgi-bin -L../cups -L../filter -L../ppdc -L../scheduler -L/usr/local/lib -rpath=/usr/lib:/usr/local/lib -Wl,-R/usr/local/lib   -Wall -Wno-format-y2k -Wunused -fPIC -Os -g -fstack-protector
echo Using LIBS="-lcups  -lssl -lcrypto  -lz -pthread -lcrypt -lm -lssp_nonshared -liconv "
Using LIBS=-lcups  -lssl -lcrypto  -lz -pthread -lcrypt -lm -lssp_nonshared -liconv 
for dir in test backend berkeley cgi-bin driver monitor notifier ppdc scheduler systemv conf data desktop locale man doc examples templates  fonts; do\
        echo Making all in $dir... ;\
        (cd $dir ; gmake  all ) || exit 1;\
done
Making all in test...
gmake[1]: Entering directory `/usr/ports/print/cups-base/work/cups-1.5.2/test'
echo Linking ippserver...
Linking ippserver...
cc -L../cgi-bin -L../cups -L../filter -L../ppdc -L../scheduler -L/usr/local/lib -rpath=/usr/lib:/usr/local/lib -Wl,-R/usr/local/lib   -Wall -Wno-format-y2k -Wunused -fPIC -Os -g -fstack-protector -o ippserver ippserver.o  ../cups/libcups.a \
         -lssl -lcrypto  -pthread -lcrypt -lm -lssp_nonshared -liconv  -lz
../cups/libcups.a(http.o): In function `http_write_ssl':
/usr/ports/print/cups-client/work/cups-1.5.2/cups/http.c:4617: undefined reference to `gnutls_record_send'
../cups/libcups.a(http.o): In function `_httpWait':
/usr/ports/print/cups-client/work/cups-1.5.2/cups/http.c:2890: undefined reference to `gnutls_record_check_pending'
../cups/libcups.a(http.o): In function `http_setup_ssl':
/usr/ports/print/cups-client/work/cups-1.5.2/cups/http.c:3938: undefined reference to `gnutls_certificate_allocate_credentials'
/usr/ports/print/cups-client/work/cups-1.5.2/cups/http.c:3940: undefined reference to `gnutls_init'
/usr/ports/print/cups-client/work/cups-1.5.2/cups/http.c:3941: undefined reference to `gnutls_set_default_priority'
/usr/ports/print/cups-client/work/cups-1.5.2/cups/http.c:3942: undefined reference to `gnutls_server_name_set'
/usr/ports/print/cups-client/work/cups-1.5.2/cups/http.c:3944: undefined reference to `gnutls_credentials_set'
/usr/ports/print/cups-client/work/cups-1.5.2/cups/http.c:3945: undefined reference to `gnutls_transport_set_ptr'
/usr/ports/print/cups-client/work/cups-1.5.2/cups/http.c:3946: undefined reference to `gnutls_transport_set_pull_function'
/usr/ports/print/cups-client/work/cups-1.5.2/cups/http.c:3947: undefined reference to `gnutls_transport_set_push_function'
/usr/ports/print/cups-client/work/cups-1.5.2/cups/http.c:3949: undefined reference to `gnutls_handshake'
/usr/ports/print/cups-client/work/cups-1.5.2/cups/http.c:3954: undefined reference to `gnutls_error_is_fatal'
/usr/ports/print/cups-client/work/cups-1.5.2/cups/http.c:3959: undefined reference to `gnutls_strerror'
/usr/ports/print/cups-client/work/cups-1.5.2/cups/http.c:3961: undefined reference to `gnutls_deinit'
/usr/ports/print/cups-client/work/cups-1.5.2/cups/http.c:3962: undefined reference to `gnutls_certificate_free_credentials'
../cups/libcups.a(http.o): In function `http_shutdown_ssl':
/usr/ports/print/cups-client/work/cups-1.5.2/cups/http.c:4301: undefined reference to `gnutls_bye'
/usr/ports/print/cups-client/work/cups-1.5.2/cups/http.c:4302: undefined reference to `gnutls_deinit'
/usr/ports/print/cups-client/work/cups-1.5.2/cups/http.c:4303: undefined reference to `gnutls_certificate_free_credentials'
../cups/libcups.a(http.o): In function `http_read_ssl':
/usr/ports/print/cups-client/work/cups-1.5.2/cups/http.c:3455: undefined reference to `gnutls_record_recv'
../cups/libcups.a(http.o): In function `httpInitialize':
/usr/ports/print/cups-client/work/cups-1.5.2/cups/http.c:1527: undefined reference to `gnutls_global_init'
gmake[1]: *** [ippserver] Error 1
gmake[1]: Leaving directory `/usr/ports/print/cups-base/work/cups-1.5.2/test'
gmake: *** [all] Error 1
*** [do-build] Error code 1

Stop in /usr/ports/print/cups-base.
*** [install] Error code 1

Stop in /usr/ports/print/cups-base.
*** [run-depends] Error code 1

Stop in /usr/ports/print/system-config-printer-kde.
*** [run-depends] Error code 1

Stop in /usr/ports/sysutils/kdeadmin4.
*** [install] Error code 1

Stop in /usr/ports/sysutils/kdeadmin4.
*** [run-depends] Error code 1

Stop in /usr/ports/x11/kde4.
*** [install] Error code 1

Stop in /usr/ports/x11/kde4.`

Something is missing most likely a header file and as of now I don't know what. Sometimes being on the leading edge is not good. The bleeding edge when the blood is dry is more stable. I am tempted to wipe the drive clean and go to Version 8.3. As of this time there are no binaries to install so the only way to build the port as there are no packages.x(

Thanks for the help!

Keith


----------



## cpm@ (Jan 19, 2013)

A lot of ports need to regression testing, that's to say, a lot of work.

Be sure is disabled GNUTLS option for these ports print/cups-base, print/cups-client and print/cups-image. Rebuild again all three ports.


----------



## Crotalus (Jan 24, 2013)

cpu82 said:
			
		

> A lot of ports need to regression testing, that's to say, a lot of work.
> 
> Be sure is disabled GNUTLS option for these ports print/cups-base, print/cups-client and print/cups-image. Rebuild again all three ports.


Thanks for the help. I did a uninstall and and a new install on the packages. I went back and did all the suggestions and was able to get kde4 loaded. The packages are installed, however I now have a problem getting kde to load. But that is another problem that I need to seek out the remedy. Running `$ startx`caused the machine to power down.  I don't know how to mark this one as solved!


----------



## cpm@ (Jan 24, 2013)

About you KDE4 problem, just open a new thread. Please, read mark as solved.


----------

