gcc-m32在Windows托管代理上不工作
gcc-m32在Windows托管代理上不工作,windows,gcc,azure-pipelines,Windows,Gcc,Azure Pipelines,我已使用vs2017-win2016映像在托管代理上创建了一个简单的Azure DevOps管道:
准备C文件[PowerShell任务]:
New-Item "test.c" -ItemType File -Value "int Foo() { return 123; }"
生成DLL[命令行任务]:
gcc -v -c test.c -m32
gcc -v -shared -o test.dll test.o -m32
但第二步失败了:
C:/
我已使用vs2017-win2016映像在托管代理上创建了一个简单的Azure DevOps管道:
准备C文件[PowerShell任务]:
New-Item "test.c" -ItemType File -Value "int Foo() { return 123; }"
生成DLL[命令行任务]:
gcc -v -c test.c -m32
gcc -v -shared -o test.dll test.o -m32
但第二步失败了:
C:/ProgramData/Chocolate/lib/mingw32/tools/install/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/8.1.0/../x86_64-w64-mingw32/bin/ld.exe:搜索时跳过不兼容的C:/ProgramData/chocolate/lib/mingw/tools/install/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/8.1.0/../
C:/ProgramData/chocolate/lib/mingw32/tools/install/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/8.1.0/../x86_64-w64-mingw32/bin/ld.exe:搜索时跳过不兼容的C:/ProgramData/chocolate/lib/mingw/tools/install/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/8.1.0/../lib/w32
C:/ProgramData/Chocolate/lib/mingw/tools/install/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/8.1.0/../x86_64-w64-mingw32/bin/ld.exe:找不到-luser32
C:/ProgramData/chocolate/lib/mingw32/tools/install/mingw64/bin/../lib/gcc/x86\u 64-w64-mingw32/8.1.0/../x86\u 64-w64-mingw32/bin/ld.exe:搜索Ell32时跳过不兼容的C:/ProgramData/chocolate/lib/mingw/tools/install/mingw64/bin/../lib/gcc/x86\u 64-w64-mingw32/8.1.0/../
C:/ProgramData/Chocolate/lib/mingw/tools/install/mingw64/bin/../lib/gcc/x86\u 64-w64-mingw32/8.1.0/../x86\u 64-w64-mingw32/bin/ld.exe:搜索Ell32时跳过不兼容的C:/ProgramData/Chocolate/lib/mingw/tools/install/mingw64/bin/../lib/gcc/x86\u 64-w64-mingw32/8.1.0/../
C:/ProgramData/chocolate/lib/mingw32/tools/install/mingw64/bin/../lib/gcc/x86\u 64-w64-mingw32/8.1.0/../x86\u 64-w64-mingw32/bin/ld.exe:搜索Ell32时跳过不兼容的C:/ProgramData/chocolate/lib/mingw/tools/install/mingw64/bin/../lib/gcc/x86\u 64-w64-mingw32/8.1.0/../
C:/ProgramData/Chocolate/lib/mingw/tools/install/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/8.1.0/../x86_64-w64-mingw32/bin/ld.exe:找不到-lkernel32
C:/ProgramData/chocolate/lib/mingw32/tools/install/mingw64/bin/../lib/gcc/x86\u 64-w64-mingw32/8.1.0/../x86\u 64-w64-mingw32/bin/ld.exe:在搜索icolica时跳过不兼容的C:/ProgramData/chocolate/lib/mingw/tools/install/mingw64/bin/../lib/gcc/x86\u 64-w64-mingw32/8.1.0/../
C:/ProgramData/chocolate/lib/mingw32/tools/install/mingw64/bin/../lib/gcc/x86\u 64-w64-mingw32/8.1.0/../x86\u 64-w64-mingw32/bin/ld.exe:在搜索icolica时跳过不兼容的C:/ProgramData/chocolate/lib/mingw/tools/install/mingw64/bin/../lib/gcc/x86\u 64-w64-mingw32/8.1.0/../
C:/ProgramData/chocolate/lib/mingw32/tools/install/mingw64/bin/../lib/gcc/x86\u 64-w64-mingw32/8.1.0/../x86\u 64-w64-mingw32/bin/ld.exe:在搜索icolica时跳过不兼容的C:/ProgramData/chocolate/lib/mingw/tools/install/mingw64/bin/../lib/gcc/x86\u 64-w64-mingw32/8.1.0/../
C:/ProgramData/Chocolate/lib/mingw/tools/install/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/8.1.0/../x86_64-w64-mingw32/bin/ld.exe:找不到-liconv
C:/ProgramData/chocolate/lib/mingw32/tools/install/mingw64/bin/../lib/gcc/x86\u 64-w64-mingw32/8.1.0/../x86\u 64-w64-mingw32/bin/ld.exe:搜索w32-w32时跳过不兼容的C:/ProgramData/chocolate/lib/mingw/tools/install/mingw64/bin/../lib/gcc/x86\u 64-w64-mingw32/8.1.0/../lib
C:/ProgramData/chocolate/lib/mingw32/tools/install/mingw64/bin/../lib/gcc/x86\u 64-w64-mingw32/8.1.0/../x86\u 64-w64-mingw32/bin/ld.exe:搜索w32-w32时跳过不兼容的C:/ProgramData/chocolate/lib/mingw/tools/install/mingw64/bin/../lib/gcc/x86\u 64-w64-mingw32/8.1.0/../lib
C:/ProgramData/chocolate/lib/mingw32/tools/install/mingw64/bin/../lib/gcc/x86\u 64-w64-mingw32/8.1.0/../x86\u 64-w64-mingw32/bin/ld.exe:搜索w32-w32时跳过不兼容的C:/ProgramData/chocolate/lib/mingw/tools/install/mingw64/bin/../lib/gcc/x86\u 64-w64-mingw32/8.1.0/../lib
C:/ProgramData/Chocolate/lib/mingw/tools/install/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/8.1.0/../x86_64-w64-mingw32/bin/ld.exe:找不到-lmingw32
C:/ProgramData/chocolate/lib/mingw32/tools/install/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/8.1.0/../x86_64-w64-mingw32/bin/ld.exe:在搜索LGU-gcc时跳过不兼容的C:/ProgramData/chocolate/lib/mingw64/tools/install/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/8.1.0/../lib/../
C:/ProgramData/chocolate/lib/mingw/tools/install/mingw64/bin/../lib/gcc/x86\u 64-w64-mingw32/8.1.0/../8.1.0/../x86\u 64-w64-mingw32/bin/ld.exe:搜索LGU-gcc时跳过不兼容的C:/ProgramData/chocolate/lib/mingw/tools/install/mingw64/bin/../lib/gcc/x86\u 64-w64-mingw32/8.1.0/../
C:/ProgramData/chocolate/lib/mingw32/tools/install/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/8.1.0/../x86_64-w64-mingw32/bin/ld.exe:在搜索LGU-gcc时跳过不兼容的C:/ProgramData/chocolate/lib/mingw64/tools/install/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/8.1.0/../lib/../
C:/ProgramData/Chocolate/lib/mingw/tools/install/mingw64/bin/../lib/gcc/x86\u 64-w64-mingw32/8.1.0/../x86\u 64-w64-mingw32/bin/ld.exe:找不到-lgcc\u s
C:/ProgramData/Chocolate/lib/m
Write-Host "Downloading winlibs..."
Invoke-WebRequest -Uri "https://github.com/brechtsanders/winlibs_mingw/releases/download/11.1.0-12.0.0-9.0.0-r1/winlibs-i686-posix-dwarf-gcc-11.1.0-mingw-w64-9.0.0-r1.zip" -OutFile "winlibs.zip"
Write-Host "Downloaded."
Write-Host "Extracting winlibs..."
Expand-Archive -LiteralPath 'winlibs.zip' -DestinationPath "winlibs"
Write-Host "Extracted."
Write-Host "Building DLL..."
$gccPath = Get-ChildItem -Path "winlibs" -File -Filter "i686-w64-mingw32-gcc.exe" -Recurse
& $gccPath.FullName -c test.c -m32
& $gccPath.FullName -shared -o test.dll test.o -m32
Write-Host "Built."