5

I'm working on developing a new Emacs feature for all three Window systems supported by Emacs, and would like a complete working installation of Emacs built --with-x --with-x-toolkit=no. The welcome screen is not displaying the Emacs logo image that I am used to seeing. I'm running it on X11 / XTERM.

Q:  What package do I need from let's say macports or building from source that will enable images on the Welcome screen in Emacs for X?

Here is my configuration:

Where should the build process find the source code?    .
What compiler should emacs be built with?               gcc -std=gnu99 -g3 -O2
Should Emacs use the GNU version of malloc?             no
  (The GNU allocators don't work with this system configuration.)
Should Emacs use a relocating allocator for buffers?    no
Should Emacs use mmap(2) for buffer allocation?         no
What window system should Emacs use?                    x11
What toolkit should Emacs use?                          none
Where do we find X Windows header files?                Standard dirs
Where do we find X Windows libraries?                   Standard dirs
Does Emacs use -lXaw3d?                                 no
Does Emacs use -lXpm?                                   yes
Does Emacs use -ljpeg?                                  yes
Does Emacs use -ltiff?                                  yes
Does Emacs use a gif library?                           yes -lgif
Does Emacs use a png library?                           yes -lpng16
Does Emacs use -lrsvg-2?                                yes
Does Emacs use cairo?                                   no
Does Emacs use imagemagick?                             no
Does Emacs support sound?                               no
Does Emacs use -lgpm?                                   no
Does Emacs use -ldbus?                                  yes
Does Emacs use -lgconf?                                 no
Does Emacs use GSettings?                               yes
Does Emacs use a file notification library?             yes (kqueue)
Does Emacs use access control lists?                    yes 
Does Emacs use -lselinux?                               no
Does Emacs use -lgnutls?                                no
Does Emacs use -lxml2?                                  yes
Does Emacs use -lfreetype?                              yes
Does Emacs use -lm17n-flt?                              no
Does Emacs use -lotf?                                   no
Does Emacs use -lxft?                                   yes
Does Emacs directly use zlib?                           yes
Does Emacs have dynamic modules support?                no
Does Emacs use toolkit scroll bars?                     no
Does Emacs support Xwidgets (requires gtk3)?            no

Example

lawlist
  • 18,826
  • 5
  • 37
  • 118
  • Does Emacs every display a logo when run in a terminal? It doesn't for me. – Tyler Mar 14 '16 at 22:52
  • @Tyler -- My impression was that Emacs built `--with-x` creates a GUI version of Emacs, that uses (in part) `xterm.c` and permits me to have fancy things like all `cursor-type` with different colors and so forth. Although X11/XTERM looks like a terminal, launching Emacs built `--with-x` creates a GUI experience. – lawlist Mar 14 '16 at 22:57

1 Answers1

5

I tracked down the problem to the last line of use-fancy-splash-screens-p, which erroneously returns nil. If we change the last number from 19 to 17, the Emacs logo appears as expected. The revised function can be placed in the .emacs file and it is detected before the splash screen is displayed. Here is the open bug report: http://debbugs.gnu.org/cgi/bugreport.cgi?bug=23074

(defun use-fancy-splash-screens-p ()
  "Return t if fancy splash screens should be used."
  (when (and (display-graphic-p)
             (or (and (display-color-p)
          (image-type-available-p 'xpm))
                 (image-type-available-p 'pbm)))
    (let ((frame (fancy-splash-frame)))
      (when frame
  (let* ((img (create-image (fancy-splash-image-file)))
         (image-height (and img (cdr (image-size img nil frame))))
         ;; We test frame-height so that, if the frame is split
         ;; by displaying a warning, that doesn't cause the normal
         ;; splash screen to be used.
         (frame-height (1- (frame-height frame))))
   ;; The original value added to the `image-height' for the test was 19; however,
   ;; that causes the test to fail on X11 by about 1.5 -- so use 17 instead.
    (> frame-height (+ image-height 17)))))))
lawlist
  • 18,826
  • 5
  • 37
  • 118