我花了相当多的时间尝试用mono创建一个捆绑包。我可以正常运行程序
mono program.exe
但是当我说
时 mkbundle --deps -o test test.exe
输出
OS is: Linux
Sources: 1 Auto-dependencies: True
embedding: /home/chris/Documents/Depot/test/bin/Release/test.exe
embedding: /usr/lib/mono/1.0/mscorlib.dll
embedding: /usr/lib/mono/gac/System.Core/3.5.0.0__b77a5c561934e089/System.Core.dll
embedding: /usr/lib/mono/gac/System/1.0.5000.0__b77a5c561934e089/System.dll
embedding: /usr/lib/mono/gac/System.Xml/1.0.5000.0__b77a5c561934e089/System.Xml.dll
Compiling:
as -o temp.o temp.s
cc -ggdb -o test -Wall temp.c `pkg-config --cflags --libs mono` temp.o
Done
当我尝试运行时,它说
** (test.exe:21988): WARNING **: The class System.Collections.Generic.List`1 could not be loaded, used in mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
Unhandled Exception: System.TypeLoadException: A type load exception has occurred.
我注意到它是从1.0文件夹中复制mscorlib.dll。我尝试将2.0版本放在这个文件夹中,它解决了通用列表类型加载错误,但现在我得到了秒表和信号量类型加载错误。
如何制作我需要的所有类型的捆绑包?
答案 0 :(得分:3)
您似乎想要mkbundle2
,它链接到2.0运行时。