dlang / dub

Package and build management system for D
MIT License
673 stars 230 forks source link

Dub generated command line is too long #2630

Closed MrcSnm closed 1 year ago

MrcSnm commented 1 year ago

System information

Bug Description

How to reproduce?

Have more than the 8191 characters in my command.

Expected Behavior

I don't know what to do at this case. Maybe dub could actually put all its commands inside a file and then send the configuration file?

Logs

MrcSnm commented 1 year ago

By the way, this is pretty blocking for me. That happened when I put a bit more of dflags in my command. That means whenever I develop the next module for my game engine, I'm going to get that everywhere, so, I would be very glad if some work was done on that

WebFreak001 commented 1 year ago

dub does put all the commands into a file and executes the compiler that way. What compiler are you trying to use this with? It should work with dmd and ldc.

MrcSnm commented 1 year ago

I'm using ldc

WebFreak001 commented 1 year ago

can you run with dub -v to see what it tries to call and post that here?

MrcSnm commented 1 year ago
ldc2 -ofC:\Users\Hipreme\AppData\Local\dub\cache\hipreme_engine\~master\build\android-$DFLAGS-linux.posix.android-aarch64.arm_hardfloat-ldc_v1.32.0-24CCEAB8EF92A23957D85E6C873A6411D6D37D59D135D9EDD4E81A2A19D22419\libhipreme_engine.so C:\Users\Hipreme\AppData\Local\dub\cache\hipreme_engine\~master\build\android-$DFLAGS-linux.posix.android-aarch64.arm_hardfloat-ldc_v1.32.0-24CCEAB8EF92A23957D85E6C873A6411D6D37D59D135D9EDD4E81A2A19D22419\hipreme_engine.o C:\Users\Hipreme\AppData\Local\dub\cache\assets\~master\build\default-$DFLAGS-linux.posix.android-aarch64.arm_hardfloat-ldc_v1.32.0-B589A349B9BD47197A1DC2F7BF7E2AB0430A257B21ADB9AFF5ACD5200EE6E9FE\libassets.a C:\Users\Hipreme\AppData\Local\dub\cache\audio\~master\build\android-$DFLAGS-linux.posix.android-aarch64.arm_hardfloat-ldc_v1.32.0-06335EB50C4DD244107D7B461377A858EDABD43C04F8E95C5728A836116C0576\libaudio.a C:\Users\Hipreme\AppData\Local\dub\cache\filesystem\~master\build\default-$DFLAGS-linux.posix.android-aarch64.arm_hardfloat-ldc_v1.32.0-CBFC07BA1A3860EDBADBDE5D3D86BA412564F1AADF8AC97FEF13100E79CCA85A\libfilesystem.a C:\Users\Hipreme\AppData\Local\dub\cache\font\~master\build\default-$DFLAGS-linux.posix.android-aarch64.arm_hardfloat-ldc_v1.32.0-71E1FE2663AA8F6BCE51A5CF37DF45CD7139D4A3DDCA4662065887981572FB93\libfont.a C:\Users\Hipreme\AppData\Local\dub\cache\arsd-official\10.9.9\+ttf\build\library-$DFLAGS-linux.posix.android-aarch64.arm_hardfloat-ldc_v1.32.0-17038106C1593CA50BD9EDB04184A653533C40184CAC13BC22D1D7E862423E2B\libarsd-official_ttf.a C:\Users\Hipreme\AppData\Local\dub\cache\renderer\~master\build\android-$DFLAGS-linux.posix.android-aarch64.arm_hardfloat-ldc_v1.32.0-8A473BAB31E3257187E1B403612DA675434993CA55B6750976CCF6B50AB57942\librenderer.a C:\Users\Hipreme\AppData\Local\dub\cache\audio_decoding\~master\build\audioformats-$DFLAGS-linux.posix.android-aarch64.arm_hardfloat-ldc_v1.32.0-C2B75CEF1171F29898272AD02CD0EE41662DBBC8DD4CCC77AC8F341DED0F0017\libaudio_decoding.a C:\Users\Hipreme\AppData\Local\dub\cache\audio-formats\2.1.2\build\boost-$DFLAGS-linux.posix.android-aarch64.arm_hardfloat-ldc_v1.32.0-8B5636CFF70C9BC0064C2F96CA677BDA246B5921463D131D53169976191547BD\libaudio-formats.a C:\Users\Hipreme\AppData\Local\dub\cache\sles\~master\build\library-$DFLAGS-linux.posix.android-aarch64.arm_hardfloat-ldc_v1.32.0-801B5BF7658A8BA8045D4C17C59C339DA1138B90C506EDC0A27489F07B231608\libsles.a C:\Users\Hipreme\AppData\Local\dub\cache\bind\~master\build\default-$DFLAGS-linux.posix.android-aarch64.arm_hardfloat-ldc_v1.32.0-F5A8BFF960B784748C5B03D9EBAA294199D2706ADEDE26DBE401A0C5AAC19740\libbind.a C:\Users\Hipreme\AppData\Local\dub\cache\data\~master\build\default-$DFLAGS-linux.posix.android-aarch64.arm_hardfloat-ldc_v1.32.0-76312320FBDEE87AB0B4A622C5DEF1E45B53CB70D3F62B6042FC117BC08080F6\libdata.a C:\Users\Hipreme\AppData\Local\dub\cache\gles\~master\build\default-$DFLAGS-linux.posix.android-aarch64.arm_hardfloat-ldc_v1.32.0-A34C09856D57B3708DA9C3F197EB1506D164A3F39F7AD439E465B6307CFF0F2E\libgles.a C:\Users\Hipreme\AppData\Local\dub\cache\image\~master\build\arsd-$DFLAGS-linux.posix.android-aarch64.arm_hardfloat-ldc_v1.32.0-4975A138A5448CDC2ADE28B9F05CE2887FA7648BD45758B777D2AC11E1D95521\libimage.a C:\Users\Hipreme\AppData\Local\dub\cache\arsd-official\10.9.9\+image_files\build\library-$DFLAGS-linux.posix.android-aarch64.arm_hardfloat-ldc_v1.32.0-DD92370C536C4FB8ADC5DF4E855AAAF32561A696FD0234E2471B7313E8BD419C\libarsd-official_image_files.a C:\Users\Hipreme\AppData\Local\dub\cache\arsd-official\10.9.9\+bmp\build\library-$DFLAGS-linux.posix.android-aarch64.arm_hardfloat-ldc_v1.32.0-ECBA4AFBCBFA899879F44BD762CE8DADC38FCD4344D820602A14D31D61C23EAD\libarsd-official_bmp.a C:\Users\Hipreme\AppData\Local\dub\cache\arsd-official\10.9.9\+imageresize\build\library-$DFLAGS-linux.posix.android-aarch64.arm_hardfloat-ldc_v1.32.0-F3EE5B848DDB7E3E41D904650FB7194417FE31C76FE503147B3264C86DB3D3F6\libarsd-official_imageresize.a C:\Users\Hipreme\AppData\Local\dub\cache\arsd-official\10.9.9\+jpeg\build\library-$DFLAGS-linux.posix.android-aarch64.arm_hardfloat-ldc_v1.32.0-1B940C9B9F09935663A263920FA3CFDF29F2E9ED96C3CDDDDCCD435C39C76365\libarsd-official_jpeg.a C:\Users\Hipreme\AppData\Local\dub\cache\arsd-official\10.9.9\+png\build\library-$DFLAGS-linux.posix.android-aarch64.arm_hardfloat-ldc_v1.32.0-E592E5803E86ABB6A78C47352E24CD22F64D23A65784337DC85F79AF9B7D94FC\libarsd-official_png.a C:\Users\Hipreme\AppData\Local\dub\cache\arsd-official\10.9.9\+color_base\build\library-$DFLAGS-linux.posix.android-aarch64.arm_hardfloat-ldc_v1.32.0-38EF2469B87D11F4B1D07441E71D6FCE2B6EEC391E1FF4D6100486F2B25502E5\libarsd-official_color_base.a C:\Users\Hipreme\AppData\Local\dub\cache\arsd-official\10.9.9\+svg\build\library-$DFLAGS-linux.posix.android-aarch64.arm_hardfloat-ldc_v1.32.0-C4AF9DD480FF31053800BBDF7E9A52A5C36FFF275D323CEA7E0E50FA3A488A4C\libarsd-official_svg.a C:\Users\Hipreme\AppData\Local\dub\cache\error\~master\build\default-$DFLAGS-linux.posix.android-aarch64.arm_hardfloat-ldc_v1.32.0-C8118E47369148560F8ADBF5401CCB383A27B268FD2C727488737F232D6940C3\liberror.a C:\Users\Hipreme\AppData\Local\dub\cache\console\~master\build\android-$DFLAGS-linux.posix.android-aarch64.arm_hardfloat-ldc_v1.32.0-DB97DF34CDF8FB241D3BB58FDA9C2E0CFEDD86D2106271C779A0DE40D8FFB0C3\libconsole.a C:\Users\Hipreme\AppData\Local\dub\cache\config\~master\build\default-$DFLAGS-linux.posix.android-aarch64.arm_hardfloat-ldc_v1.32.0-34D1396B093ABBA204BCB1CF9F17DFE1CB98AE2D3272C29B0CFF163A5C6650CA\libconfig.a C:\Users\Hipreme\AppData\Local\dub\cache\debugging\~master\build\default-$DFLAGS-linux.posix.android-aarch64.arm_hardfloat-ldc_v1.32.0-5BC272BF0EDDFD031508761C67429CA335D37127B3B323F760ED363A022CADBE\libdebugging.a C:\Users\Hipreme\AppData\Local\dub\cache\jni\~master\build\library-$DFLAGS-linux.posix.android-aarch64.arm_hardfloat-ldc_v1.32.0-EF5F280BA1C3B2D2E949FA9E54E08760A97938C043B498EB6DCD880E34EA3621\libjni.a C:\Users\Hipreme\AppData\Local\dub\cache\math\~master\build\default-$DFLAGS-linux.posix.android-aarch64.arm_hardfloat-ldc_v1.32.0-0852845E1C02B5A5472434EF3E189C8339F546C3B580E51C956294D8495082EB\libmath.a C:\Users\Hipreme\AppData\Local\dub\cache\windowing\~master\build\android-$DFLAGS-linux.posix.android-aarch64.arm_hardfloat-ldc_v1.32.0-5D73CD349601A095DE7559CC50D36A5697353CC2502AB4640FCD44166E4C0792\libwindowing.a C:\Users\Hipreme\AppData\Local\dub\cache\tween\~master\build\default-$DFLAGS-linux.posix.android-aarch64.arm_hardfloat-ldc_v1.32.0-851D8F3AD3A9DF347689B37A05D05F42DD816D6E08445234D93ED4C11254DB01\libtween.a C:\Users\Hipreme\AppData\Local\dub\cache\timer\~master\build\default-$DFLAGS-linux.posix.android-aarch64.arm_hardfloat-ldc_v1.32.0-FF87688382A5D97F5AFFFC68F2D30BB1E895854C51D80FFBFE1836B4BBAA7BE2\libtimer.a C:\Users\Hipreme\AppData\Local\dub\cache\hipengine_api\~master\build\hipengine-$DFLAGS-linux.posix.android-aarch64.arm_hardfloat-ldc_v1.32.0-ECBB3D06A8CCCF60DBD47B64FDB705E7F8FEDCB49D2FE2519B62133418D41186\libhipengine_api.a C:\Users\Hipreme\AppData\Local\dub\cache\util\~master\build\default-$DFLAGS-linux.posix.android-aarch64.arm_hardfloat-ldc_v1.32.0-A380D2A7FE633D0D4977963B827F07B256C6C9E18EAB1A5EEE98156122ABD7C3\libutil.a -L--no-as-needed -L-soname -Llibhipreme_engine.so -L-LC:/Users/Hipreme/AppData/Local/Android/Sdk/ndk/25.1.8937393/toolchains/llvm/prebuilt/windows-x86_64/sysroot/usr/lib/aarch64-linux-android/33/ -L-llog -L-landroid -L-lOpenSLES -L-lEGL -L-lGLESv3 -mtriple=aarch64--linux-android -defaultlib=phobos2-ldc,druntime-ldc 
-link-defaultlib-shared=false -L-L"G:\HipremeEngine\tools\user\build_selector\Android\ldcLibs\android\lib" -L-rpath="G:\HipremeEngine\tools\user\build_selector\Android\ldcLibs\android\lib" -gcc="G:/HipremeEngine/tools/user/build_selector/Android/Sdk/ndk/21.4.7075529/toolchains/llvm/prebuilt/windows-x86_64/bin/aarch64-linux-android21-clang.cmd" -linker="G:/HipremeEngine/tools/user/build_selector/Android/Sdk/ndk/21.4.7075529/toolchains/llvm/prebuilt/windows-x86_64/bin/aarch64-linux-android-ld.bfd.exe" -L-L"G:/HipremeEngine/tools/user/build_selector/Android/Sdk/ndk/21.4.7075529/toolchains/llvm/prebuilt/windows-x86_64/sysroot/usr/lib/aarch64-linux-android/30" -shared -g -gc
Linha de comando muito longa.
Error: G:/HipremeEngine/tools/user/build_selector/Android/Sdk/ndk/21.4.7075529/toolchains/llvm/prebuilt/windows-x86_64/bin/aarch64-linux-android21-clang.cmd failed with status: 1
FAIL C:\Users\Hipreme\AppData\Local\dub\cache\hipreme_engine\~master\build\android-$DFLAGS-linux.posix.android-aarch64.arm_hardfloat-ldc_v1.32.0-24CCEAB8EF92A23957D85E6C873A6411D6D37D59D135D9EDD4E81A2A19D22419 hipreme_engine dynamicLibrary   
Error ldc2 failed with exit code 1.
MrcSnm commented 1 year ago

@WebFreak001 Maybe there is some kind of loose ends when someone uses the enviornment DFLAGS?

MrcSnm commented 1 year ago

Bump:

Is there someway I could debug that? As I said, I don't know if the generated command length is counted or not. Maybe there is a problem related to the expansion on DFLAGS

WebFreak001 commented 1 year ago

can you share the repository where you are hitting this issue?

MrcSnm commented 1 year ago

1: Clone https://github.com/MrcSnm/HipremeEngine 2: Run dub at tools/user/build_selector 3: Follow the setup 4: Build for Android

WebFreak001 commented 1 year ago

ok issue was long path names, fixed in DUB 1.32.0 already - already resolved by #2589

WebFreak001 commented 1 year ago

@kinke can you maybe make a patch release of LDC bumping the DUB version to 1.32.0 / 1.32.1?

I'm surprised the bundled DUB version in LDC wasn't 1.32.0 already actually, since it was tagged on April 1st and the LDC release is 2 weeks old now.

kinke commented 1 year ago

That was a patch release for LDC only. Dub, reggae etc. are bumped with each frontend version. So dub v1.32 will be used with LDC v1.33.