LinuxQuestions.org

LinuxQuestions.org (/questions/)
-   Linux - Newbie (https://www.linuxquestions.org/questions/linux-newbie-8/)
-   -   what are "X Includes"? (https://www.linuxquestions.org/questions/linux-newbie-8/what-are-x-includes-564847/)

nebula010 06-27-2007 09:49 AM

what are "X Includes"?
 
I am trying to install an app from source, in the ./configure stage I get this error:

Code:

checking for X... configure: error: Can't find X includes. Please check your installation and add the correct paths!

What do I need to do?

(Yellow Dog Linux 5, Mac G4 400mhz ppc)

Nylex 06-27-2007 10:11 AM

X includes are the X11 header files, which contain prototypes of functions (amongst other things) used in programs that use the X11 library. You need to install the X development package for your distro. I think it's called libX11-devel for YDL (I had a look at their website and found a package with that name).

nebula010 06-27-2007 10:27 AM

Quote:

Originally Posted by Nylex
X includes are the X11 header files, which contain prototypes of functions (amongst other things) used in programs that use the X11 library. You need to install the X development package for your distro. I think it's called libX11-devel for YDL (I had a look at their website and found a package with that name).


Hmmm. yum says libx11-devel is already installed and current.

SciYro 06-27-2007 01:54 PM

could you then list a sample of what was installed and where?

nebula010 06-27-2007 09:03 PM

Quote:

Originally Posted by SciYro
could you then list a sample of what was installed and where?

Here's what I get:

Quote:

# ./configure
checking build system type... powerpc-unknown-linux-gnu
checking host system type... powerpc-unknown-linux-gnu
checking target system type... powerpc-unknown-linux-gnu
checking for a BSD-compatible install... /usr/bin/install -c
checking for -p flag to install... yes
checking whether build environment is sane... yes
checking for gawk... gawk
checking whether make sets $(MAKE)... yes
checking for kde-config... /usr/bin/kde-config
checking where to install... /usr (as returned by kde-config)
checking for style of include used by make... GNU
checking for gcc... gcc
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 gcc accepts -g... yes
checking for gcc option to accept ANSI C... none needed
checking dependency style of gcc... gcc3
checking how to run the C preprocessor... gcc -E
checking for g++... g++
checking whether we are using the GNU C++ compiler... yes
checking whether g++ accepts -g... yes
checking dependency style of g++... gcc3
checking whether gcc is blacklisted... no
checking whether g++ supports -Wmissing-format-attribute... yes
checking whether gcc supports -Wmissing-format-attribute... yes
checking whether g++ supports -Wundef... yes
checking whether g++ supports -Wno-long-long... yes
checking whether g++ supports -Wno-non-virtual-dtor... yes
checking whether g++ supports -fno-reorder-blocks... yes
checking whether g++ supports -fno-exceptions... yes
checking whether g++ supports -fno-check-new... yes
checking whether g++ supports -fno-common... yes
checking whether g++ supports -fexceptions... yes
checking whether system headers can cope with -O2 -fno-inline... irrelevant
checking how to run the C++ preprocessor... g++ -E
checking whether g++ supports -O0... yes
checking whether g++ supports -Wl,--no-undefined... yes
checking whether g++ supports -Wl,--allow-shlib-undefined... yes
not using lib directory suffix
checking for a sed that does not truncate output... /bin/sed
checking for egrep... grep -E
checking for ld used by gcc... /usr/bin/ld
checking if the linker (/usr/bin/ld) is GNU ld... yes
checking for /usr/bin/ld option to reload object files... -r
checking for BSD-compatible nm... /usr/bin/nm -B
checking whether ln -s works... yes
checking how to recognise dependent libraries... pass_all
checking for ANSI C header files... yes
checking for sys/types.h... yes
checking for sys/stat.h... yes
checking for stdlib.h... yes
checking for string.h... yes
checking for memory.h... yes
checking for strings.h... yes
checking for inttypes.h... yes
checking for stdint.h... yes
checking for unistd.h... yes
checking dlfcn.h usability... yes
checking dlfcn.h presence... yes
checking for dlfcn.h... yes
checking for g77... no
checking for f77... no
checking for xlf... no
checking for frt... no
checking for pgf77... no
checking for fort77... no
checking for fl32... no
checking for af77... no
checking for f90... no
checking for xlf90... no
checking for pgf90... no
checking for epcf90... no
checking for f95... f95
checking whether we are using the GNU Fortran 77 compiler... yes
checking whether f95 accepts -g... yes
checking the maximum length of command line arguments... 32768
checking command to parse /usr/bin/nm -B output from gcc object... ok
checking for objdir... .libs
checking for ar... ar
checking for ranlib... ranlib
checking for strip... strip
checking if gcc static flag works... yes
checking if gcc supports -fno-rtti -fno-exceptions... no
checking for gcc option to produce PIC... -fPIC
checking if gcc PIC flag -fPIC works... yes
checking if gcc supports -c -o file.o... yes
checking whether the gcc linker (/usr/bin/ld) supports shared libraries... yes
checking whether -lc should be explicitly linked in... no
checking dynamic linker characteristics... GNU/Linux ld.so
checking how to hardcode library paths into programs... immediate
checking whether stripping libraries is possible... yes
checking for shl_load... no
checking for shl_load in -ldld... no
checking for dlopen... no
checking for dlopen in -ldl... yes
checking whether a program can dlopen itself... yes
checking whether a statically linked program can dlopen itself... yes
checking if libtool supports shared libraries... yes
checking whether to build shared libraries... yes
checking whether to build static libraries... no
configure: creating libtool
appending configuration tag "CXX" to libtool
checking for ld used by g++... /usr/bin/ld
checking if the linker (/usr/bin/ld) is GNU ld... yes
checking whether the g++ linker (/usr/bin/ld) supports shared libraries... yes
checking for g++ option to produce PIC... -fPIC
checking if g++ PIC flag -fPIC works... yes
checking if g++ supports -c -o file.o... yes
checking whether the g++ linker (/usr/bin/ld) supports shared libraries... yes
checking dynamic linker characteristics... GNU/Linux ld.so
checking how to hardcode library paths into programs... immediate
checking whether stripping libraries is possible... yes
checking for shl_load... (cached) no
checking for shl_load in -ldld... (cached) no
checking for dlopen... (cached) no
checking for dlopen in -ldl... (cached) yes
checking whether a program can dlopen itself... (cached) yes
checking whether a statically linked program can dlopen itself... (cached) yes
appending configuration tag "F77" to libtool
checking if libtool supports shared libraries... yes
checking whether to build shared libraries... yes
checking whether to build static libraries... no
checking for f95 option to produce PIC... -fPIC
checking if f95 PIC flag -fPIC works... yes
checking if f95 supports -c -o file.o... yes
checking whether the f95 linker (/usr/bin/ld) supports shared libraries... yes
checking dynamic linker characteristics... GNU/Linux ld.so
checking how to hardcode library paths into programs... immediate
checking whether stripping libraries is possible... yes
checking for msgfmt... /usr/bin/msgfmt
checking for gmsgfmt... /usr/bin/msgfmt
checking for xgettext... /usr/bin/xgettext
checking if C++ programs can be compiled... yes
checking for strlcat... no
checking if strlcat needs custom prototype... yes - in libkdefakes
checking for strlcpy... no
checking if strlcpy needs custom prototype... yes - in libkdefakes
checking for main in -lutil... yes
checking for main in -lcompat... no
checking for crypt in -lcrypt... yes
checking for socklen_t... yes
checking for dnet_ntoa in -ldnet... no
checking for dnet_ntoa in -ldnet_stub... no
checking for inet_ntoa... yes
checking for connect... yes
checking for remove... yes
checking for shmat... yes
checking for sys/types.h... (cached) yes
checking for stdint.h... (cached) yes
checking sys/bitypes.h usability... yes
checking sys/bitypes.h presence... yes
checking for sys/bitypes.h... yes
checking for poll in -lpoll... no
checking Carbon/Carbon.h usability... no
checking Carbon/Carbon.h presence... no
checking for Carbon/Carbon.h... no
checking CoreAudio/CoreAudio.h usability... no
checking CoreAudio/CoreAudio.h presence... no
checking for CoreAudio/CoreAudio.h... no
checking if res_init needs -lresolv... yes
checking for res_init... yes
checking if res_init needs custom prototype... no
checking for killpg in -lucb... no
checking for int... yes
checking size of int... 4
checking for short... yes
checking size of short... 2
checking for long... yes
checking size of long... 4
checking for char *... yes
checking size of char *... 4
checking for dlopen in -ldl... (cached) yes
checking for shl_unload in -ldld... no
checking for size_t... yes
checking size of size_t... 4
checking for unsigned long... yes
checking size of unsigned long... 4
checking sizeof size_t == sizeof unsigned long... yes
checking for PIE support... yes
checking if enabling -pie/fPIE support... yes
checking crt_externs.h usability... no
checking crt_externs.h presence... no
checking for crt_externs.h... no
checking for _NSGetEnviron... no
checking for vsnprintf... yes
checking for snprintf... yes
checking for X... configure: error: Can't find X includes. Please check your installation and add the correct paths!
#

HappyTux 06-27-2007 10:34 PM

You can usually pass an option to the configure that will tell it where to find X, use ./configure --help to find out what it is named it could be something like this if you were using Debian ./configure --with-x-include-dir=/usr/include/X11 hopefully it will find them once you put in your location.

nebula010 06-28-2007 12:19 AM

Quote:

Originally Posted by HappyTux
You can usually pass an option to the configure that will tell it where to find X, use ./configure --help to find out what it is named it could be something like this if you were using Debian ./configure --with-x-include-dir=/usr/include/X11 hopefully it will find them once you put in your location.


./configure --help gives this as an option:

--with-extra-includes=DIR

so I tried:
./configure --with-extra-includes=/usr/include/X11
./configure --with-extra-includes=/usr/include
./configure --with-extra-includes=/usr
./configure --with-extra-include=/usr/include/X11
./configure --with-x-includes=/usr/include/X11
./configure --with-x-include-dir=/usr/include/X11

and many other variations, all resulting in the same (original) error.

Any ideas?

Nylex 06-28-2007 12:27 AM

On Slack, the X includes are in /usr/X11/include, though obviously they might be in a different place on YDL.

jschiwal 06-28-2007 12:37 AM

what does "locate '/X11/X.h'" return?

inova 06-28-2007 02:07 AM

Is this newbie question??

nebula010 06-28-2007 08:12 AM

Quote:

Originally Posted by jschiwal
what does "locate '/X11/X.h'" return?


It returns:

/usr/include/X11/X.h

jschiwal 06-28-2007 06:09 PM

Quote:

Originally Posted by nebula010
It returns:

/usr/include/X11/X.h

Then that is the path you need include for the X includes. I asked because it seemed from the responses that different distro's may have different locations. It is always best to actually examine what is in this directory. You might also want to validate the package that supplied these file to see if any are missing.
For SuSE, the package would be named xorg-x11-libX-devel. When I looked at the contents of that package, I noticed that there were fewer include files in the package than I had noticed earlier when I examined the directory on my system (Your mileage may very). So there may be a further dependency that you need. Could you tell us what application you are trying to install. If there is an rpm build of the same package, that would allow me to look at what my dependencies would be. Your's may be similar. It may be a problem with a missing header rather than a problem with an include path during the configure phase.

Can you examine the configure.log file to see which file it was checking for? You may need to examine the configure script itself.

jschiwal 06-28-2007 10:31 PM

Quote:

Originally Posted by nebula010
It returns:

/usr/include/X11/X.h

That looks like the include path you want. However, giving that directory a closer look, there are more packages that save headers there:
Code:

xaw3d-1.5E-263
xlockmore-5.23-11
xorg-x11-7.2-26
xorg-x11-devel-7.2-19
xorg-x11-libfontenc-devel-7.2-12
xorg-x11-libICE-devel-7.2-13
xorg-x11-libs-7.2-21
xorg-x11-libSM-devel-7.2-12
xorg-x11-libX11-devel-7.2-13
xorg-x11-libXau-devel-7.2-8
xorg-x11-libXdmcp-devel-7.2-8
xorg-x11-libXfixes-devel-7.2-13
xorg-x11-libxkbfile-devel-7.2-12
xorg-x11-libXmu-devel-7.2-13
xorg-x11-libXpm-devel-7.2-12
xorg-x11-libXprintUtil-devel-7.2-8
xorg-x11-libXrender-devel-7.2-12
xorg-x11-libXt-devel-7.2-13
xorg-x11-libXv-devel-7.2-8
xorg-x11-proto-devel-7.2-10
xorg-x11-server-7.2-30.6
xorg-x11-xtrans-devel-7.2-12

See if any of these show up in the documentation for the program you are trying to install. You might want to post what it is you are trying to install. Knowing just what you are trying to install might help us give better advice.

nebula010 06-29-2007 12:41 AM

I'm trying to install kstars. Yes, I am running kde on Yellow Dog Linux 5, and no it didnt get installed by default. I've tried to yum it, no luck, it seems ydl doesnt include it. I will do the above couple of suggestions and post back asap...

jschiwal 06-29-2007 02:00 AM

I searched for kstars on rpm.pbone.net to get an idea on the dependencies. These X11 related libraries are needed. The source rpm link timed out so I couldn't look up more information.

libXext
libXmu
libXt
libXi
libXrender
libX11
libGL

But I bet you need to install your versions of:
xorg-x11-libXrender-devel
xorg-x11-libXt-devel
xorg-x11-libX11-devel


All times are GMT -5. The time now is 04:38 PM.