When publishing files using org-babel-tangle-publish, if the :tangle
header argument is given to a source block, and if org-babel-tangle-publish
is called from a directory other than the directory in which the source
file (that is, the file being tangled) exists, then org-babel-tangle-publish
fails in the copy-file step.
This happens because org-babel-tangle returns the file name (that is,
the basename only) mentioned in the :tangle header argument, and
org-babel-tangle-publish tries to copy that unqualified basename
instead of the absolute path to the file.
My emacs configuration follows. I used the minimal configuration given in
the Feedback section of the org mode manual. The backtrace for the error is
also attached.
Thanks,
Arun Isaac.
Emacs : GNU Emacs 24.5.1 (x86_64-unknown-linux-gnu, GTK+ Version 3.16.2)
of 2015-04-20 on bitzer.hoetzel.info
Package: Org-mode version 8.3.1 (release_8.3.1-241-gea7ac0 @
/home/arunisaac/.emacs.d/org-mode/lisp/)
current state:
==
(setq
org-tab-first-hook '(org-hide-block-toggle-maybe
org-babel-hide-result-toggle-maybe org-babel-header-arg-expand)
org-speed-command-hook '(org-speed-command-default-hook
org-babel-speed-command-hook)
org-occur-hook '(org-first-headline-recenter)
org-metaup-hook '(org-babel-load-in-session-maybe)
org-html-format-drawer-function '(lambda (name contents) contents)
org-latex-format-inlinetask-function
'org-latex-format-inlinetask-default-function
org-confirm-shell-link-function 'yes-or-no-p
org-ascii-format-inlinetask-function 'org-ascii-format-inlinetask-default
org-latex-format-headline-function 'org-latex-format-headline-default-function
org-after-todo-state-change-hook '(org-clock-out-if-current)
org-latex-format-drawer-function '(lambda (name contents) contents)
org-src-mode-hook '(org-src-babel-configure-edit-buffer
org-src-mode-configure-edit-buffer)
org-agenda-before-write-hook '(org-agenda-add-entry-text)
org-babel-pre-tangle-hook '(save-buffer)
org-mode-hook '(#[nil "\300\301\302\303\304$\207" [org-add-hook
change-major-mode-hook org-show-block-all append local] 5]
#[nil "\300\301\302\303\304$\207" [org-add-hook
change-major-mode-hook org-babel-show-result-all append local] 5]
org-babel-result-hide-spec org-babel-hide-all-hashes)
org-archive-hook '(org-attach-archive-delete-maybe)
org-ascii-format-drawer-function '(lambda (name contents width) contents)
org-ctrl-c-ctrl-c-hook '(org-babel-hash-at-point
org-babel-execute-safely-maybe)
org-cycle-hook '(org-cycle-hide-archived-subtrees org-cycle-hide-drawers
org-cycle-show-empty-lines org-optimize-window-after-visibility-change)
org-confirm-elisp-link-function 'yes-or-no-p
org-metadown-hook '(org-babel-pop-to-session-maybe)
org-html-format-headline-function 'org-html-format-headline-default-function
org-html-format-inlinetask-function
'org-html-format-inlinetask-default-function
org-clock-out-hook '(org-clock-remove-empty-clock-drawer)
org-publish-project-alist '(("basic" :base-directory
"~/.emacs.d/org-tangle-bug/base" :base-extension "org" :publishing-directory
"~/.emacs.d/org-tangle-bug/pub"
:publishing-function org-babel-tangle-publish)
)
)
Debugger entered--Lisp error: (file-error "Opening input file" "no such file or
directory" "/home/arunisaac/.emacs.d/org-tangle-bug/source.c")
copy-file("source.c" "/home/arunisaac/.emacs.d/org-tangle-bug/pub/" t)
#[(el) "\302 \303#\207" [el pub-dir copy-file t] 4]("source.c")
mapc(#[(el) "\302\303#\207" [el pub-dir copy-file t] 4] ("source.c"))
org-babel-tangle-publish((:base-directory "~/.emacs.d/org-tangle-bug/base"
:base-extension "org" :publishing-directory "~/.emacs.d/org-tangle-bug/pub"
:publishing-function org-babel-tangle-publish)
"/home/arunisaac/.emacs.d/org-tangle-bug/base/source.org"
"/home/arunisaac/.emacs.d/org-tangle-bug/pub/")
org-publish-file("/home/arunisaac/.emacs.d/org-tangle-bug/base/source.org"
("basic" :base-directory "~/.emacs.d/org-tangle-bug/base" :base-extension "org"
:publishing-directory "~/.emacs.d/org-tangle-bug/pub" :publishing-function
org-babel-tangle-publish) t)
#[(project) "\306@!\210A\307 \310\"\307 \311\"\307
\312\"\206 \313\307 \314\"\206# \315\307 \316\"\206- \307
\317\"\2068 \307\320\"\307\321\"\322\n\"!\323\324\307
\325\"\"\"\203^ \326\327!\210\203g
\f\"\210!\330#\211$\203\216 $@\211#\"\232\204\205 \331#\332#\210$A\211$\204r *\307
\333\"\203\245 \334\307
\325\"\"\210\331\"\332#\210\203\256 \326\335!\210\336 .\207" [project
project-plist exclude-regexp sitemap-p sitemap-filename sitemap-function
org-publish-initialize-cache plist-get :exclude :auto-sitemap :sitemap-filename
"sitemap.org" :sitemap-function org-publish-org-sitemap :sitemap-date-format
:sitemap-file-entry-format :preparation-function :completion-function