Necesita los archivos de encabezado, que son proporcionados por los -devpaquetes, y no en los paquetes de la biblioteca en sí. Entonces, intente instalar libx11-dev. Eso debería solucionar este error de compilación en particular, aunque puede obtener errores similares sobre otras bibliotecas (y luego puede instalar sus -devpaquetes).
Aunque estos paquetes proporcionan archivos de encabezado en lugar de archivos binarios, y en general los archivos de encabezado representan todas las arquitecturas compatibles mediante el uso de macros de preprocesador, sin embargo, los -devpaquetes en Ubuntu tienden a ser específicos de la arquitectura, y este es el caso para libx11-dev(como se puede ver aquí expandiendo un lanzamiento y encontrando los .debpaquetes listados para libx11-devese lanzamiento). Dado que su sistema Ubuntu es de 64 bits y está compilando un programa de 32 bits que debe vincularse con la versión de 32 bits de la biblioteca, probablemente necesitará instalar la versión de 32 bits libx11-dev. Si está instalando con apt-geto aptitude, puede especificarlo indicando libx11-dev:i386como el paquete para instalar (desde multarch es compatible y se está utilizando).
http://packages.ubuntu.com/ es un buen recurso para encontrar el nombre del -devpaquete correspondiente a un paquete de biblioteca. No siempre es el nombre del paquete de la biblioteca seguido inmediatamente por -dev; a veces los números de versión presentes en el nombre del paquete de la biblioteca, especialmente después de a -, están ausentes en el nombre del -devpaquete correspondiente .
ldconfig -p | grep libX11\\.?