emacs-orgmode@gnu.org archives
 help / color / mirror / code / Atom feed
* Bug: babel with c++ [8.2.10 (8.2.10-29-g89a0ac-elpa]
@ 2015-01-14  0:16 seth andrews
  2015-01-14  0:36 ` seth andrews
  2015-01-16 21:21 ` Nicolas Goaziou
  0 siblings, 2 replies; 3+ messages in thread
From: seth andrews @ 2015-01-14  0:16 UTC (permalink / raw)
  To: emacs-orgmode

[-- Attachment #1: Type: text/plain, Size: 2761 bytes --]

C++ (or c code for that matter) that needs to link to any libraries will
not compile with babel.  In the function org-babel-C-execute, the file name
is given last, making it impossible to pass compiler flags that will effect
linking.  A simple fix is to switch the order of the last two arguments to
format.

Emacs  : GNU Emacs 24.3.1 (x86_64-pc-linux-gnu, GTK+ Version 3.10.7)
 of 2014-03-07 on lamiak, modified by Debian
Package: Org-mode version 8.2.10 (8.2.10-29-g89a0ac-elpa @
/home/seth/.emacs.d/elpa/org-20150112/)

current state:
==============
(setq
 org-tab-first-hook '(org-hide-block-toggle-maybe
org-src-native-tab-command-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 'ignore
 org-confirm-shell-link-function 'yes-or-no-p
 org-ascii-format-inlinetask-function 'org-ascii-format-inlinetask-default
 org-special-ctrl-a/e t
 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-from-is-user-regexp "\\<seth\\>"
 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-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-hide-inline-tasks org-cycle-show-empty-lines
                  org-optimize-window-after-visibility-change)
 org-babel-tangle-lang-exts '(("C++" . "cpp") ("emacs-lisp" . "el"))
 org-confirm-elisp-link-function 'yes-or-no-p
 org-metadown-hook '(org-babel-pop-to-session-maybe)
 org-html-format-headline-function 'ignore
 org-babel-load-languages '((gnuplot . t) (emacs-lisp . t) (C . t))
 org-html-format-inlinetask-function 'ignore
 org-clock-out-hook '(org-clock-remove-empty-clock-drawer)
 org-src-fontify-natively t
 )

[-- Attachment #2: Type: text/html, Size: 3228 bytes --]

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: Bug: babel with c++ [8.2.10 (8.2.10-29-g89a0ac-elpa]
  2015-01-14  0:16 Bug: babel with c++ [8.2.10 (8.2.10-29-g89a0ac-elpa] seth andrews
@ 2015-01-14  0:36 ` seth andrews
  2015-01-16 21:21 ` Nicolas Goaziou
  1 sibling, 0 replies; 3+ messages in thread
From: seth andrews @ 2015-01-14  0:36 UTC (permalink / raw)
  To: emacs-orgmode

[-- Attachment #1: Type: text/plain, Size: 3190 bytes --]

Here's a simple example of the bug I just sent, if you try to run this with
babel it fails.
#+begin_src C++ :exports both :includes (list "\"boost/filesystem.hpp\""
"<stdio.h>") :flags "-lboost_system"
 printf("testing\n");
#+end_src


On 13 January 2015 at 17:16, seth andrews <sethdandrews@gmail.com> wrote:

> C++ (or c code for that matter) that needs to link to any libraries will
> not compile with babel.  In the function org-babel-C-execute, the file name
> is given last, making it impossible to pass compiler flags that will effect
> linking.  A simple fix is to switch the order of the last two arguments to
> format.
>
> Emacs  : GNU Emacs 24.3.1 (x86_64-pc-linux-gnu, GTK+ Version 3.10.7)
>  of 2014-03-07 on lamiak, modified by Debian
> Package: Org-mode version 8.2.10 (8.2.10-29-g89a0ac-elpa @
> /home/seth/.emacs.d/elpa/org-20150112/)
>
> current state:
> ==============
> (setq
>  org-tab-first-hook '(org-hide-block-toggle-maybe
> org-src-native-tab-command-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 'ignore
>  org-confirm-shell-link-function 'yes-or-no-p
>  org-ascii-format-inlinetask-function 'org-ascii-format-inlinetask-default
>  org-special-ctrl-a/e t
>  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-from-is-user-regexp "\\<seth\\>"
>  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-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-hide-inline-tasks org-cycle-show-empty-lines
>                   org-optimize-window-after-visibility-change)
>  org-babel-tangle-lang-exts '(("C++" . "cpp") ("emacs-lisp" . "el"))
>  org-confirm-elisp-link-function 'yes-or-no-p
>  org-metadown-hook '(org-babel-pop-to-session-maybe)
>  org-html-format-headline-function 'ignore
>  org-babel-load-languages '((gnuplot . t) (emacs-lisp . t) (C . t))
>  org-html-format-inlinetask-function 'ignore
>  org-clock-out-hook '(org-clock-remove-empty-clock-drawer)
>  org-src-fontify-natively t
>  )
>
>

[-- Attachment #2: Type: text/html, Size: 3932 bytes --]

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: Bug: babel with c++ [8.2.10 (8.2.10-29-g89a0ac-elpa]
  2015-01-14  0:16 Bug: babel with c++ [8.2.10 (8.2.10-29-g89a0ac-elpa] seth andrews
  2015-01-14  0:36 ` seth andrews
@ 2015-01-16 21:21 ` Nicolas Goaziou
  1 sibling, 0 replies; 3+ messages in thread
From: Nicolas Goaziou @ 2015-01-16 21:21 UTC (permalink / raw)
  To: seth andrews; +Cc: emacs-orgmode

Hello,

seth andrews <sethdandrews@gmail.com> writes:

> C++ (or c code for that matter) that needs to link to any libraries will
> not compile with babel.  In the function org-babel-C-execute, the file name
> is given last, making it impossible to pass compiler flags that will effect
> linking.  A simple fix is to switch the order of the last two arguments to
> format.

Thank you for the report.

Could you send a patch with a test for it in test-ob-C.el?


Regards,

-- 
Nicolas Goaziou

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2015-01-16 21:21 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2015-01-14  0:16 Bug: babel with c++ [8.2.10 (8.2.10-29-g89a0ac-elpa] seth andrews
2015-01-14  0:36 ` seth andrews
2015-01-16 21:21 ` Nicolas Goaziou

Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/emacs/org-mode.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).