Boa Tarde !
Bom estou com um problema… programo em delphi mas aqui na empresa que trabalho tinha um compilador em Ruby para gerar a versao em uma Certa maquina…
Só que formataram esse maquina e só fizeram o backup do código em Ruby… não entendo nada Da Linguagem Ruby mais fui mexendo e descobrindo algumas coisas
‘até que consegui roda o código’ Mas ele esta me retornando um erro… queria ver se aqui teria alguém que possa me ajudar… vou colocar o codigo aqui e a imagem do erro
Desde já agradeço
=begin
Script para compilacao de projetos DELPHI
=end
require ‘fileutils’
class DelphiCompiler
DELPHI_COMPILER = ‘dcc32’
attr_reader :dir_destiny
def initialize(project_dir, project_name, dir_destiny)
@project_dir = project_dir
@project_name = project_name
@dir_destiny = dir_destiny
@lib_path = []
@res_path = []
end
def add_lib(lib)
@lib_path << lib
end
def add_res(res)
@res_path << res
end
def compile!
system DELPHI_COMPILER+' -M -B -Q -U\''+@lib_path.join(';')+'\' -R\''+@res_path.join(';')+'\' '+@project_name+' /H- /W-'
end
def copy
from = @project_dir+@project_name.upcase.sub('DPR', 'EXE');
to = @dir_destiny+@project_name.upcase.sub('DPR', 'EXE')
puts 'Copiando arquivo para \\\10.1.0.26\\versao\\, aguarde...'
File.cp(from, to)
# TODO: LINHA PROVISORIA
puts 'Copiando arquivo para \\\10.1.0.26\\versao\\, aguarde...'
File.cp(from, 'C:\\versao\\'+@project_name.upcase.sub('DPR', 'EXE'))
end
end
system ‘pause’
PROJECT_DIR = ‘C:\jedi_vcs\sas\fontes\’
PROJECT_NAME = ‘SAS.dpr’
EXE_PATH = ‘\\10.1.0.26\versao\’
#EXE_PATH = “c:/sas_win/”
c = DelphiCompiler.new(PROJECT_DIR, PROJECT_NAME, EXE_PATH)
c.add_lib(‘c:\aplicativos\JEDI\jcl\lib\d10’)
c.add_lib(‘c:\aplicativos\JEDI\jvcl\lib\d10’)
c.add_lib(‘c:\aplicativos\WarlleyComponentes’)
c.add_lib(‘c:\aplicativos\WarlleyComponentes\Lib’)
c.add_lib(‘c:\aplicativos\FortesReport\bin\d7vcl’)
c.add_lib(‘c:\aplicativos\tdbf’)
c.add_lib(‘c:\aplicativos\ExpressComp\ExpressDataController\Sources’)
c.add_lib(‘c:\aplicativos\ExpressComp\ExpressEditors Library 5\Sources’)
c.add_lib(‘c:\aplicativos\ExpressComp\ExpressExport Library\Sources’)
c.add_lib(‘c:\aplicativos\ExpressComp\ExpressLibrary\Sources’)
c.add_lib(‘c:\aplicativos\ExpressComp\ExpressPageControl 2\Sources’)
c.add_lib(‘c:\aplicativos\ExpressComp\ExpressQuantumGrid 5\Sources’)
c.add_lib(‘c:\aplicativos\ExpressComp\XP Theme Manager\Sources’)
c.add_lib(‘c:\Program Files\Borland\BDS\4.0\lib\Indy10’)
c.add_lib(‘c:\Users\Lucas\Documents\Borland Studio Projects\Bpl’)
c.add_lib(‘c:\aplicativos\FortesReport\bin’)
c.add_lib(‘c:\acbr\Fontes\ACBrComum’)
c.add_lib(‘c:\acbr\Fontes\ACBrCapicom’)
c.add_lib(‘c:\acbr\Fontes\synalist’)
c.add_lib(‘c:\acbr\Fontes\ACBrNFe2’)
c.add_lib(‘c:\acbr\Fontes\PCN2’)
c.add_lib(‘c:\acbr\Fontes\ACBrDiversos’)
c.add_lib(‘c:\Program Files\Borland\BDS\4.0\RaveReports\Lib’)
c.add_lib(‘c:\Aplicativos\JEDI\jvcl\common’)
c.add_lib(‘c:\Aplicativos\JEDI\jcl\source’)
c.add_res(‘c:\Aplicativos\JEDI\jvcl\resources’)
puts <<-HEAD
Script para compilacao de projetos DELPHI
HEAD
c.compile!
puts ‘======================================================’
loop do
print ‘Copiar executavel? \\10.1.0.26\versao\ [S]:’
$cp_file = gets.upcase.chomp
$cp_file = ‘S’ if $cp_file.empty?
break if $cp_file == ‘S’ || $cp_file == ‘N’
end
if $cp_file == ‘S’
begin
c.copy
rescue
puts ‘ERRO AO COPIAR O ARQUIVO!’
system ‘pause’
end
puts ‘======================================================’
end
[img]