2011-11-28 86 views
4

好的,我正在研究做一個多語言項目。我正在查看Ada中的那部分內容。我已經知道AdaCore包,但我需要分別鏈接每個文件,這意味着它可能是最容易直接通過GCC。如何在Windows計算機上安裝GNAT(GNU Ada)?

唯一的問題是,GNAT顯然主要是寫在在Ada,我似乎無法找到指導如何安裝在任何地方。

MinGW爲我處理了一些其他語言,但顯然GNAT不包括在內。

在此先感謝!

回答

3

如果您稍後決定安裝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通過greplist

 
$ 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. 
... 
+1

啊,這就是你得到MinGW Ada編譯器的方法。我在安裝時使用了mingw-get-inst安裝程序,它似乎已將其與Java編譯器一起放出。 – johnki

+0

IIRC,GUI安裝程序提供它作爲一個選項。 – trashgod

+0

我沒有它作爲一個選項。我只有C,C++,Obj-C,Fortran,MSYS和Developer Toolkit,運行mingw-get-inst-20111118。另外,從命令行嘗試它,ada是一個未知的軟件包,而且這個列表非常龐大,我需要查看的部分在我讀取之前會被截斷。 – johnki

2

轉到AdaCore’s Libre site,下載安裝程序並運行它!

這就是說,我認爲你的個人編譯源文件的方案會有問題; Ada代碼必須支持細化,這不是你想要手動管理的東西。我沒有自己檢查過(如果我可以幫助它,我不會在Windows上編程),但是here is some information on using GNAT with Windows;值得一看。

+0

我想我可能對它措辭不佳。從我讀過的大多數情況來看,結合語言的唯一方法是(a)找到支持混合語言的編譯器(如Visual Studio/.NET),或單獨編譯並鏈接目標文件。考慮到這些知識,我得出的結論是,在學習使用GCC的命令行時,我可能會少一些頭痛的問題。 – johnki

+0

我已經習慣了'gnatmake',但我記得分別使用'gcc -c','gnatbind'和'gnatlink'。 – trashgod

+0

正如我所記得的那樣,'gnatbind'創建了詳細代碼(現在是'b〜main.ad [bs]' - 它在C的那一天,而不是Ada,並且可能還有一個選項)包含一個鏈接所需的所有目標代碼模塊列表嵌入爲註釋; 'gnatlink'處理這個並且運行實際的鏈接,並且我們不得不爲自己的那部分推出我們自己的鏈接。 –

1

東西一樣阿達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中

相關問題