好的,我正在研究做一個多語言項目。我正在查看Ada中的那部分內容。我已經知道AdaCore包,但我需要分別鏈接每個文件,這意味着它可能是最容易直接通過GCC。如何在Windows計算機上安裝GNAT(GNU Ada)?
唯一的問題是,GNAT顯然主要是寫在在Ada,我似乎無法找到指導如何安裝在任何地方。
MinGW爲我處理了一些其他語言,但顯然GNAT不包括在內。
在此先感謝!
好的,我正在研究做一個多語言項目。我正在查看Ada中的那部分內容。我已經知道AdaCore包,但我需要分別鏈接每個文件,這意味着它可能是最容易直接通過GCC。如何在Windows計算機上安裝GNAT(GNU Ada)?
唯一的問題是,GNAT顯然主要是寫在在Ada,我似乎無法找到指導如何安裝在任何地方。
MinGW爲我處理了一些其他語言,但顯然GNAT不包括在內。
在此先感謝!
如果您稍後決定安裝MinGW Ada,則可以使用mingw-get
命令更新現有安裝,如下所示,例如, mingw-get install ada
。更多細節可能被發現here。
如本文相關answer中所建議的,替代編譯器有其用處。
$ mingw-get --help Manage MinGW and MSYS installations (command line user interface). Usage: mingw-get [OPTIONS] ACTION [package-spec ...] mingw-get update mingw-get [OPTIONS] {install | upgrade | remove} package-spec ... mingw-get [OPTIONS] {show | list} [package-spec ...] Options: --help, -h Show this help text --version, -V Show version and licence information Actions: update Update local copy of repository catalogues list, show List and show details of available packages install Install new packages upgrade Upgrade previously installed packages remove Remove previously installed packages Package Specifications: [subsystem-]name[-component]: msys-bash-doc The 'doc' component of the bash package for MSYS mingw32-gdb All components of the gdb package for MinGW Use 'mingw-get list' to identify possible package names and the components associated with each.
附錄:在Windows XP中,我管道mingw-get list
通過grep
削list
。
$ mingw-get list | grep -i ada ... Package: mingw32-gcc-v3-ada Subsystem: mingw32 The GNU Ada Compiler This package provides the MinGW implementation of the GNU Ada language written in the Ada language. ... $ gnatmake --version GNATMAKE 4.5.2 Copyright (C) 1995-2010, Free Software Foundation, Inc. ...
轉到AdaCore’s Libre site,下載安裝程序並運行它!
這就是說,我認爲你的個人編譯源文件的方案會有問題; Ada代碼必須支持細化,這不是你想要手動管理的東西。我沒有自己檢查過(如果我可以幫助它,我不會在Windows上編程),但是here is some information on using GNAT with Windows;值得一看。
我想我可能對它措辭不佳。從我讀過的大多數情況來看,結合語言的唯一方法是(a)找到支持混合語言的編譯器(如Visual Studio/.NET),或單獨編譯並鏈接目標文件。考慮到這些知識,我得出的結論是,在學習使用GCC的命令行時,我可能會少一些頭痛的問題。 – johnki
我已經習慣了'gnatmake',但我記得分別使用'gcc -c','gnatbind'和'gnatlink'。 – trashgod
正如我所記得的那樣,'gnatbind'創建了詳細代碼(現在是'b〜main.ad [bs]' - 它在C的那一天,而不是Ada,並且可能還有一個選項)包含一個鏈接所需的所有目標代碼模塊列表嵌入爲註釋; 'gnatlink'處理這個並且運行實際的鏈接,並且我們不得不爲自己的那部分推出我們自己的鏈接。 –
東西一樣阿達Web服務器需要阿達開發商甚至已經在Windows類似Unix的環境,所以我總是與GNAT GPL一起安裝MSYS。有幾個關於如何將MSYS與MinGW一起使用的指南。唯一的問題是,最近的MSYS自動安裝程序默認配置爲使用非AdaCore MinGW,這不是我們想要的。
最新正常(非自動)MSYS的安裝程序是在這裏:
http://sourceforge.net/projects/mingw/files/MSYS/Base/msys-core/msys-1.0.11/MSYS-1.0.11.exe/download
安裝之後,你將被要求提供MinGW的位置。編寫c:/ GNAT/2012或任何您用於GNAT(無bin)的內容。
在Windows 7的這個腳本失敗原因不明,但連接MSYS和MinGW是寫
c:/GNAT/2012 /mingw
成C一樣簡單:\ MSYS \ 1.0 \等\ fstab中
我上傳的64bit GNU ada在Mingw-w64項目中的SF.NET上。
啊,這就是你得到MinGW Ada編譯器的方法。我在安裝時使用了mingw-get-inst安裝程序,它似乎已將其與Java編譯器一起放出。 – johnki
IIRC,GUI安裝程序提供它作爲一個選項。 – trashgod
我沒有它作爲一個選項。我只有C,C++,Obj-C,Fortran,MSYS和Developer Toolkit,運行mingw-get-inst-20111118。另外,從命令行嘗試它,ada是一個未知的軟件包,而且這個列表非常龐大,我需要查看的部分在我讀取之前會被截斷。 – johnki