2010-01-03 58 views
8

我想從Linux上的C程序(Matlab r2009a,Ubuntu 9.10)以編程方式調用Matlab引擎。從Linux中的C連接到Matlab引擎

我有我自己的代碼(在Windows中工作),但現在我只是想讓Matlab的「engdemo.c」程序在Linux上工作。我已經設法編譯&鏈接它(在gcc命令行中包括大約15個-l<lib>開關之後),甚至通過一些ldconfig魔術解決了所有運行時動態鏈接。

但是,當程序運行時,我只是得到「無法啓動MATLAB引擎」的錯誤消息,程序結束,沒有跡象表明它失敗的原因。

有沒有人做這個工作?我忘了做什麼?

p.s.我最初在超級用戶中問過這個問題,因爲我認爲它與配置有關,但我看到其他與Matlab引擎有關的問題,所以我想我會放棄它。

回答

7

您應該在您的C程序上運行strace以查看出現問題的位置。通常情況下,我發現,大部分的時間可以歸結爲兩種:

  • 由於沒有csh安裝
  • 具有環境設置錯誤,有時LS_COLORS螺絲釘的事情了csh
+0

尼斯電話 - 安裝tcsh的伎倆。謝謝! – 2010-01-03 07:54:26

+0

順便說一句,謝謝關於strace的提示 - 我甚至不知道存在! – 2010-01-03 07:55:22

0

MathWorks公司已記錄這對their website,具體有以下說明:

注意:要在UNIX平臺上運行MATLAB引擎,必須安裝C shell csh,安裝位置爲/bin/csh

+0

頁面不再存在。 – 2013-01-08 20:09:14

+0

@Padenton:修復它 – Amro 2014-07-30 19:47:27