Southclaws / sampctl

The Swiss Army Knife of SA:MP - vital tools for any server owner or library maintainer.
GNU General Public License v3.0
239 stars 34 forks source link

Build hangs up #477

Closed eoussama closed 1 year ago

eoussama commented 1 year ago

Upon attempting to migrate an old gamemode, after setting up the legacy folder and trying to build the gamemode, the builder simply hangs-up, and freezes as if it never started to begin with. The gamemode compiles fine using pawno tho.

Here's the the command line dump:

oussa@EO-Desktop MINGW64 ~/Downloads/dayz-survival (master)
$ sampctl package build --verbose
INFO: failed to get version information: reference not found
INFO: Package does not have any tags, consider versioning your code with: `sampctl package release`
INFO: EOussama/dayz-survival read package from directory C:\Users\oussa\Downloads\dayz-survival
INFO: EOussama/dayz-survival building dependency tree and ensuring cached copies
INFO: |- EOussama/dayz-survival is parent
INFO: |- iterating 1 dependencies of EOussama/dayz-survival
INFO: |-|- github.com/pawn-lang/samp-stdlib ensured
INFO: |-|- iterating 1 dependencies of sampctl/samp-stdlib
INFO: |-|-|- github.com/pawn-lang/pawn-stdlib ensured
INFO: |-|-|- iterating 0 dependencies of sampctl/pawn-stdlib
INFO: EOussama/dayz-survival flattened dependencies to 2 leaves
INFO: Checking for cached package pawn-v3.10.10-windows.zip in C:\Users\oussa\AppData\Roaming\sampctl
INFO: Using cached package pawn-v3.10.10-windows.zip
INFO: using include path C:\Users\oussa\Downloads\dayz-survival\legacy
INFO: using include path C:\Users\oussa\Downloads\dayz-survival
INFO: using include path C:\Users\oussa\Downloads\dayz-survival\dependencies\samp-stdlib
INFO: using include path C:\Users\oussa\Downloads\dayz-survival\dependencies\pawn-stdlib
INFO: running pre-build commands
INFO: building EOussama/dayz-survival with 3.10.10
INFO: executing compiler in C:\Users\oussa\Downloads\dayz-survival as [LD_LIBRARY_PATH=C:\Users\oussa\AppData\Roaming\sampctl\pawn\3.10.10 DYLD_LIBRARY_PATH=C:\Users\oussa\AppData\Roaming\sampctl\pawn\3.10.10] [C:\Users\oussa\AppData\Roaming\sampctl\pawn\3.10.10\pawncc.exe C:\Users\oussa\Downloads\dayz-survival\main.pwn -DC:\Users\oussa\Downloads\dayz-survival -oC:\Users\oussa\Downloads\dayz-survival\gamemodes\main.amx -d3 -;+ -(+ -\+ -Z+ -iC:\Users\oussa\Downloads\dayz-survival\legacy -iC:\Users\oussa\Downloads\dayz-survival -iC:\Users\oussa\Downloads\dayz-survival\dependencies\samp-stdlib -iC:\Users\oussa\Downloads\dayz-survival\dependencies\pawn-stdlib]

And here's pawn.json:

{
    "user": "EOussama",
    "repo": "dayz-survival",
    "tag": "0.0.1",
    "entry": "main.pwn",
    "output": "gamemodes/main.amx",
    "dependencies": [
        "pawn-lang/samp-stdlib"
    ],
    "local": true,
    "builds": [
        {
            "name": "main",
            "includes": ["legacy"]
        }
    ]
}
ADRFranklin commented 1 year ago

I would think this is a compiler issue, if the build hangs after invoking the compiler, are you by any chance compiling using the sa-mp version of the pawn compiler when using pawno? Generally there is backwards compatibility which is enabled by default with sampctl with the -Z flag. But I would recommend invoking the compiler manually yourself and passing the same arguments found in the verbose log that sampctl passes. This should give you any issues the compiler had with it.

eoussama commented 1 year ago

I already have backward compatibility enabled with #pragma compat 1 at the top of my script. Yes, the script works fine when compiled with the sa-mp version of the compiler.

ADRFranklin commented 1 year ago

This sounds less like a problem with sampctl and more of a problem between the sa-mp compiler and the community compiler. Like I said before you will need to run the community compiler yourself on your gamemode and check the results there.

eoussama commented 1 year ago

Thank you. I guess I'll do just that and report in pawn-lang/compiler.