求救~~~SCITE的编译问题~
= =好不容易才弄到一个编译器,SCITE,弄了半天才把她配置好。
按着书上的那个HELLO程序输入测试了下,但编译出来的文件是以.o为后缀的?而且没有生成执行文件?
是这个编译器就是这样还是其他什么原因阿?
这个是右边的提示信息,本人英语不太好,看不太懂= =。。。。
>gcc -c hello.adb
>Exit code: 0
>gnatmake
Usage: gnatmake opts name {[-cargs opts] [-bargs opts] [-largs opts] [-margs opts]}
name is one or more file name from which you can omit the .adb or .ads suffix
gnatmake switches:
-a Consider all files, even readonly ali files
-b Bind only
-B Build, bind and link full project
-c Compile only
-C Cache source mappings: invoke compiler with temp mapping file
-C=mapp Cache source mappings: invoke compiler with mapping file mapp
-D dir Specify dir as the object directory
-eI Index of unit in multi-unit source file
-eL Follow symbolic links when processing project files
-f Force recompilations of non predefined units
-F Full project path name in brief error messages
-i In place. Replace existing ali file, or put it with source
-jnum Use nnn processes to compile
-k Keep going after compilation errors
-l Link only
-m Minimal recompilation
-M List object file dependences for Makefile
-n Check objects up to date, output next file to compile if not
-o name Choose an alternate executable name
-Pproj Use GNAT Project File proj
-q Be quiet/terse
-R Do not use a run_path_option when linking
-s Recompile if compiler switches have changed
-u Unique compilation. Only compile the given files.
-U Unique compilation for all sources of all projects
-v Display reasons for all (re)compilations
-vPx Specify verbosity when parsing GNAT Project Files
-x Allow compilation of needed units external to the projects
-Xnm=val Specify an external reference for GNAT Project Files
-z No main subprogram (zero main)
--GCC=command Use this gcc command
--GNATBIND=command Use this gnatbind command
--GNATLINK=command Use this gnatlink command
Source and Library search path switches:
-aLdir Skip missing library sources if ali in dir
-Adir like -aLdir -aIdir
-aOdir Specify library/object files search path
-aIdir Specify source files search path
-Idir Like -aIdir -aOdir
-I- Don't look for sources & library files in the default directory
-Ldir Look for program libraries also in dir
-nostdinc Don't look for sources in the system default directory
-nostdlib Don't look for library files in the system default directory
--RTS=dir specify the default source and object search path
To pass an arbitrary switch to the Compiler, Binder or Linker:
-cargs opts opts are passed to the compiler
-bargs opts opts are passed to the binder
-largs opts opts are passed to the linker
-margs opts opts are passed to gnatmake
Compiler switches (passed to the compiler by gnatmake):
-fstack-check Generate stack checking code
-fno-inline Inhibit all inlining (makes executable smaller)
-g Generate debugging information
-Idir Specify source files search path
-I- Do not look for sources in current directory
-O[0123] Control the optimization level
-gnata Assertions enabled. Pragma Assert/Debug to be activated
-gnatA Avoid processing gnat.adc, if present file will be ignored
-gnatb Generate brief messages to stderr even if verbose mode set
-gnatc Check syntax and semantics only (no code generation)
-gnatd? Compiler debug option ? ([.]a-z,A-Z,0-9), see debug.adb
-gnatD Debug expanded generated code rather than source code
-gnatec=? Specify configuration pragmas file, e.g. -gnatec=/x/f.adc
-gnateD? Define or redefine preprocessing symbol, e.g. -gnateDsym=val
-gnatef Full source path in brief error messages
-gnateInn Index in multi-unit source, e.g. -gnateI2
-gnatem=? Specify mapping file, e.g. -gnatem=mapping
-gnatep=? Specify preprocessing data file, e.g. -gnatep=prep.data
-gnatE Dynamic elaboration checking mode enabled
-gnatf Full errors. Verbose details, all undefined references
-gnatF Force all import/export external names to all uppercase
-gnatg GNAT implementation mode (used for compiling GNAT units)
-gnatG Output generated expanded code in source form
-gnath Output this usage (help) information
-gnati? Identifier char set (?=1/2/3/4/5/8/9/p/f/n/w)
-gnatk Limit file names to nn characters (k = krunch)
-gnatl Output full source listing with embedded error messages
-gnatmnn Limit number of detected errors to nn (1-999999)
-gnatn Inlining of subprograms (apply pragma Inline across units)
-gnatN Full (frontend) inlining of subprograms
-gnato Enable overflow checking (off by default)
-gnatO nm Set name of output ali file (internal switch)
-gnatp Suppress all checks
-gnatP Generate periodic calls to System.Polling.Poll
-gnatq Don't quit, try semantics, even if parse errors
-gnatQ Don't quit, write ali/tree file even if compile errors
-gnatR? List rep info (?=0/1/2/3 for none/types/all/variable)
-gnatR?s List rep info to file.rep instead of standard output
-gnats Syntax check only
-gnatS Print listing of package Standard
-gnatt Tree output file to be generated
-gnatTnn All compiler tables start at nn times usual starting size
-gnatu List units for this compilation
-gnatU Enable unique tag for error messages
-gnatv Verbose mode. Full error output with source lines to stdout
-gnatVxx Enable selected validity checking mode, xx = list of parameters:
a turn on all validity checking options
c turn on checking for copies
C turn off checking for copies
d turn on default (RM) checking
D turn off default (RM) checking
f turn on checking for floating-point
F turn off checking for floating-point
i turn on checking for in params
I turn off checking for in params
m turn on checking for in out params
M turn off checking for in out params
o turn on checking for operators/attributes
O turn off checking for operators/attributes
p turn on checking for parameters
P turn off checking for parameters
r turn on checking for returns
R turn off checking for returns
s turn on checking for subscripts
S turn off checking for subscripts
t turn on checking for tests
T turn off checking for tests
n turn off all validity checks (including RM)
-gnatwxx Enable selected warning modes, xx = list of parameters:
a turn on all optional warnings (except d,h,l)
A turn off all optional warnings
b turn on warnings for bad fixed value (not multiple of small)
B* turn off warnings for bad fixed value (not multiple of small)
c turn on warnings for constant conditional
C* turn off warnings for constant conditional
d turn on warnings for implicit dereference
D* turn off warnings for implicit dereference
e treat all warnings as errors
f turn on warnings for unreferenced formal
F* turn off warnings for unreferenced formal
g* turn on warnings for unrecognized pragma
G turn off warnings for unrecognized pragma
h turn on warnings for hiding variable
H* turn off warnings for hiding variable
i* turn on warnings for implementation unit
I turn off warnings for implementation unit
j turn on warnings for obsolescent (annex J) feature
J* turn off warnings for obsolescent (annex J) feature
k turn on warnings on constant variable
K* turn off warnings on constant variable
l turn on warnings for missing elaboration pragma
L* turn off warnings for missing elaboration pragma
m turn on warnings for variable assigned but not read
M* turn off warnings for variable assigned but not read
n* normal warning mode (cancels -gnatws/-gnatwe)
o* turn on warnings for address clause overlay
O turn off warnings for address clause overlay
p turn on warnings for ineffective pragma Inline
P* turn off warnings for ineffective pragma Inline
r turn on warnings for redundant construct
R* turn off warnings for redundant construct
s suppress all warnings
u turn on warnings for unused entity
U* turn off warnings for unused entity
v* turn on warnings for unassigned variable
V turn off warnings for unassigned variable
x* turn on warnings for export/import
X turn off warnings for export/import
y* turn on warnings for Ada 2005 incompatibility
Y turn off warnings for Ada 2005 incompatibility
z* turn on size/align warnings for unchecked conversion
Z turn off size/align warnings for unchecked conversion
* indicates default in above list
-gnatW Wide character encoding method (h/u/s/e/8/b)
-gnatx Suppress output of cross-reference information
-gnatX Language extensions permitted
-gnaty Enable default style checks (same as -gnaty3abcefhiklmnprst)
-gnatyxx Enable selected style checks xx = list of parameters:
1-9 check indentation
a check attribute casing
b check no blanks at end of lines
c check comment format
d check no DOS line terminators
e check end/exit labels present
f check no form feeds/vertical tabs in source
h check no horizontal tabs in source
i check if-then layout
k check casing rules for keywords
l check reference manual layout
Lnn check max nest level < nn
m check line length <= 79 characters
n check casing of package Standard identifiers
Mnn check line length <= nn characters
o check subprogram bodies in alphabetical order
p check pragma casing
r check casing for identifier references
s check separate subprogram specs present
t check token separation rules
u check no unnecessary blank lines
x check extra parens around conditionals
-gnatyN Cancel all previously set style checks
-gnatz Distribution stub generation (r/c for receiver/caller stubs)
-gnat83 Enforce Ada 83 restrictions
-gnat95 Ada 95 mode (default)
-gnat05 Allow Ada 2005 extensions
>Exit code: 4
>hello
sh: hello: not found
>Exit code: 127

ada.properties文档
# Define SciTE settings for Ada files.
filter.ada=Ada (ads adb ada)|*.adb;*.ads;*.ada|
file.patterns.ada=*.ads;*.adb;*.ada
lexer.$(file.patterns.ada)=ada
#indent.size.$(file.patterns.ada)=3
#use.tabs.$(file.patterns.ada)=0
# Keyword except of operator keywords
keywordclass.ada.main=abort abstract accept access aliased all array at begin body \
case constant declare delay delta digits do else elsif end entry exception exit for \
function generic goto if in is limited loop new null of others out package pragma \
private procedure protected raise range record renames requeue return reverse \
select separate subtype tagged task terminate then type until use when while with
# Keywords for operators
keywordclass.ada.operators=abs and mod not or rem xor
keywordclass.ada=$(keywordclass.ada.main) $(keywordclass.ada.operators)
keywords.$(file.patterns.ada)=$(keywordclass.ada)
# Ada styles
# Default
style.ada.0=fore:#808080
# Keyword
style.ada.1=$(colour.keyword),bold
# Identifiers
style.ada.2=
# Number
style.ada.3=$(colour.number)
# Operators (delimiters)
style.ada.4=$(colour.operator),bold
# Character
style.ada.5=$(colour.char)
# End of line where character is not closed
style.ada.6=fore:#000000,$(font.monospace),back:#E0C0E0,eolfilled
# String
style.ada.7=$(colour.string)
# End of line where string is not closed
style.ada.8=fore:#000000,$(font.monospace),back:#E0C0E0,eolfilled
# Label
style.ada.9=fore:#7F0000
# Comment
style.ada.10=$(colour.code.comment.line),$(font.code.comment.line)
# Illegal token
style.ada.11=fore:#FF0000
# Comments
comment.block.ada=--~
braces.ada.style=4
statement.indent.$(file.patterns.ada)=5 begin declare else elsif exception for if is loop while
statement.end.$(file.patterns.ada)=10 ;
statement.lookback.$(file.patterns.ada)=20
block.start.$(file.patterns.ada)=10 then is
block.end.$(file.patterns.ada)=10 end
calltip.ada.word.characters=._$(chars.alpha)
adagcc=gcc -c $(FileNameExt)
#######################################################################
#AppleLab Modify 2005/04/20
#---------------------------------------------------------------------------
gnatmake=gnatmake $(FileName)
#command.compile.*.ads=$(adagcc)
command.name.0.*.ads=编译
command.0.*.ads=$(adagcc)
command.name.1.*.ads=汇编
command.1.*.ads=gnatbind $(FileName)
command.name.2.*.ads=连接
command.2.*.ads=gnatlink $(FileName)
command.name.3.*.ads=生成EXE(无控制台)
command.3.*.ads=gnatmake -mwindows $(FileName)
command.name.4.*.ads=生成EXE(控制台)
command.4.*.ads=gnatmake $(FileName)
command.name.5.*ads=控制运行
command.5.*ads=gexecute $(FileName)
command.name.6.*.ads=调试运行
command.6.*.ads=$(FileName)
#command.build.*.ads=$(gnatmake)
#command.go.*.ads=$(FileName)
#---------------------------------------------
#command.compile.*.adb=$(adagcc)
command.name.0.*.adb=编译
command.0.*.adb=$(adagcc)
command.name.1.*.adb=汇编
command.1.*.adb=gnatbind $(FileName)
command.name.2.*.adb=连接
command.2.*.adb=gnatlink $(FileName)
command.name.3.*.adb=生成EXE(无控制台)
command.3.*.adb=gnatmake -mwindows $(FileName)
command.name.4.*.adb=生成EXE(控制台)
command.4.*.adb=gnatmake $(FileName)
command.name.5.*.adb=非控制运行
command.5.*adb=gexecute $(FileName)
command.name.6.*.adb=调试运行
command.6.*.adb=$(FileName)
#command.build.*.adb=$(gnatmake)
#command.go.*.adb=$(FileName)
----------------------------------------------------------
先编译,然后直接选 生成 就可以了
1
是build吗?可是没有生成文件阿,只有左边那些
还有你那个是要修改的吗?是全部覆盖还是?
+QQ:515639
+QQ:515639
= =
在LINUX下。。。用不了QQ
EMAIL倒有: shaojiachengwz@163.com
晕
以上是完整的文档,完全覆盖就可以了。
先 选 编译
再 选 生成
中间的BIND以及LINK会自动被执行,无须选择。
你哪里来的UNIX编译器??
1
下载的。
多谢
已经可以了。不过我点那个文件怎么没有反应呢?
ada.properties
# Define SciTE settings for Ada files.
filter.ada=Ada (ads adb)|*.ads;*.adb|
file.patterns.ada=*.ads;*.adb
lexer.$(file.patterns.ada)=ada
#indent.size.$(file.patterns.ada)=3
#use.tabs.$(file.patterns.ada)=0
# Keyword except of operator keywords
keywordclass.ada.main=abort abstract accept access aliased all array at begin body \
case constant declare delay delta digits do else elsif end entry exception exit for \
function generic goto if in is limited loop new null of others out package pragma \
private procedure protected raise range record renames requeue return reverse \
select separate subtype tagged task terminate then type until use when while with
# Keywords for operators
keywordclass.ada.operators=abs and mod not or rem xor
keywordclass.ada=$(keywordclass.ada.main) $(keywordclass.ada.operators)
keywords.$(file.patterns.ada)=$(keywordclass.ada)
# Ada styles
# Default
style.ada.0=fore:#808080
# Keyword
style.ada.1=$(colour.keyword),bold
# Identifiers
style.ada.2=
# Number
style.ada.3=$(colour.number)
# Operators (delimiters)
style.ada.4=$(colour.operator),bold
# Character
style.ada.5=$(colour.char)
# End of line where character is not closed
style.ada.6=fore:#000000,$(font.monospace),back:#E0C0E0,eolfilled
# String
style.ada.7=$(colour.string)
# End of line where string is not closed
style.ada.8=fore:#000000,$(font.monospace),back:#E0C0E0,eolfilled
# Label
style.ada.9=fore:#7F0000
# Comment
style.ada.10=$(colour.code.comment.line),$(font.code.comment.line)
# Illegal token
style.ada.11=fore:#FF0000
# Comments
comment.block.ada=--~
braces.ada.style=4
statement.indent.$(file.patterns.ada)=5 begin declare else elsif exception for if is loop while
statement.lookback.$(file.patterns.ada)=20
block.start.$(file.patterns.ada)=10 then is
block.end.$(file.patterns.ada)=10 end
calltip.ada.word.characters=._$(chars.alpha)
adagcc=gcc -c $(FileNameExt)
command.compile.*.ads=$(adagcc)
command.build.*.ads=gnatmake $(FileName)
command.compile.*.adb=$(adagcc)
command.build.*.adb=gnatmake $(FileName)
command.go.*.adb=$(FileName)
command.name.3.*.adb=MakeNonConsole
command.3.*.adb=gnatmake -mwindows $(FileName)