Сборка многомодульных сборок - PullRequest
0 голосов
/ 25 апреля 2011

Я пытаюсь собрать многомодульную сборку. У меня есть 2 файла, а именно Fraction.cs и MyCalc.cs и оба в том же пространстве имен и в другом AssemblyInfo.cs. Я не знаю, как создать файл makefile, поэтому я скопировал его из книги, за которой следую. Вот содержимое

ASSEMBLY= MySharedAssembly.dll

BIN=.\bin
SRC=.
DEST=.\bin

CSC=csc /nologo /debug+ /d:DEBUG /d:TRACE 

MODULETARGET=/t:module
LIBTARGET=/t:library
EXETARGET=/t:exe

REFERENCES=System.dll

MODULES=$(DEST)\Fraction.dll $(DEST)\MyCalc.dll
METADATA=$(SRC)\Assemblyinfo.cs

all: $(DEST)\MySharedAssembly.dll

# Assembly metadata placed in the same module as manifest
$(DEST)\$(ASSEMBLY): $(METADATA) $(MODULES) $(DEST) $(CSC) $(LIBTARGET) /addmodule:$(MODULES: =;) /out:$@ %s

# Add MyCalc.dll module to this dependency list
$(DEST)\MyCalc.dll: MyCalc.cs $(DEST) $(CSC) $(MODULETARGET) /r:$(REFERENCES: =;) /out:$@ %s

# Add Fraction
$(DEST)\Fraction.dll: Fraction.cs $(DEST) $(CSC) $(MODULETARGET) /r:$(REFERENCES: =;) /out:$@ %s

$(DEST)::
!
if !EXISTS($(DEST))
    mkdir $(DEST)
!endif

Я все понимаю, но не знаком с синтаксисом. Поэтому, когда я пытаюсь запустить nmake, я получаю следующую ошибку

makefile (21): фатальная ошибка v1033: синтаксическая ошибка: ':' непредвиденный

Я предполагаю, что что-то не так в строке 21. Пожалуйста, помогите

Ответы [ 2 ]

0 голосов
/ 27 апреля 2011

Наконец-то это сработало, когда я скопировал код из интернета.Причина, по которой это сработало, заключается в том, что строка с ошибкой была разделена на две строки с использованием ключа возврата.

$ (DEST) \ $ (ASSEMBLY): $ (METADATA) $ (MODULES) $ (DEST)$ (CSC) $ (LIBTARGET) / addmodule: $ (MODULES: =;) / out: $ @% s

0 голосов
/ 25 апреля 2011
$(DEST)::

Это неисправная линия?

...