Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Command Line Builds: [Ubuntu IDE] Extension scripts referencing "/of" flag fail in 203.11 (e.g., Steamworks) #4339

Closed
1 of 2 tasks
OmegaMetor opened this issue Jan 12, 2024 · 3 comments
Assignees
Labels
build-bug Bugs when compiling projects inside GameMaker
Milestone

Comments

@OmegaMetor
Copy link

OmegaMetor commented Jan 12, 2024

Description

(I know it specifically says "building your projects inside the GameMaker IDE", but I don't know which type would be better)

Currently, on Ubuntu 22.04, when running igor with the command:
./Igor /rp ../../../../ /lf ~/Gamemaker/licence.plist /cache ~/Gamemaker/cache /temp ~/Gamemaker/temp /project ~/Game/Game.yyp /of ~/Gamemaker/out /tf Game.appimage linux Package

It gets through most of the build, but eventually fails with the following errors:

#################################### INFORMATION ####################################
Steam Extension is not available in this target: Linux (no setup required)
#####################################################################################








Copying Linux (64 bit) dependencies
Archive is current

#################################### INFORMATION ####################################
Steam Extension is not available in this target: Linux (no setup required)
#####################################################################################



System.IO.FileNotFoundException: Could not find file '/home/ubuntu/Gamemaker/out.zip'.
File name: '/home/ubuntu/Gamemaker/out.zip'
   at System.IO.File.Move(String sourceFileName, String destFileName, Boolean overwrite)
   at System.IO.File.Move(String sourceFileName, String destFileName)
   at Igor.LinuxBuilder.Package()
Igor complete.

After looking through the post_build_step.sh from the steamworks extension, where the error occurs, i found that the YYprojectName variable is unset, causing the script to fail. In ide on windows this works fine, though I haven't tested calling igor on windows.

I did not include a contact us package due to there not being any way to generate it that I am aware of. If there is a way to do that, I can do that soon.

Expected Change

I'd like either this to be fixed so it can build properly, also only slightly related but a better "more official" place to download only igor from would be nice for ci, along with documentation for running igor on non-windows platforms.

Steps To Reproduce

  1. Acquire igor on Ubuntu 22.04 (Maybe other versions, not tested)
  2. Attempt to build project that uses steamworks and the post_build_step.sh
  3. See the issue

How reliably can you recreate this issue using your steps above?

Always

Which version of GameMaker are you reporting this issue for?

2023.11.1 (Monthly)

Which operating system(s) are you seeing the problem on?

Ubuntu 22 LTS

Which platform(s) are you having trouble building this project for?

Ubuntu

Are you running GameMaker from inside your Steam library?

None

Contact Us Package Attached?

  • I have attached my Contact Us Package

Sample Project Added?

  • I have included a small sample project
@OmegaMetor OmegaMetor added the build-bug Bugs when compiling projects inside GameMaker label Jan 12, 2024
@stuckie stuckie added this to the 2024.2 milestone Jan 15, 2024
@jackerley jackerley modified the milestones: 2024.2, 2024.4 Jan 17, 2024
@DiasFranciscoA
Copy link

Morning @OmegaMetor, what version of the extension are you using I can see by the logs that this is from an older version of the extension. The message that you are seeing:

#################################### INFORMATION ####################################
Steam Extension is not available in this target: Linux (no setup required)
#####################################################################################

...is not from a current version of the Steamworks extension. Regarding the error:

System.IO.FileNotFoundException: Could not find file '/home/ubuntu/Gamemaker/out.zip'.

...please refer to the following entry in the manual where it reads the /of should not be a path to a folder but a path to a file you will need to give it a file path instead if you want to use it /of ~/Gamemaker/out/game.unx for example

@OmegaMetor
Copy link
Author

OmegaMetor commented Jan 31, 2024

The Steamworks extension is version 1.1.3a, though slightly modified to add functions for GetUserItemVote and SetUserItemVote, only modifying the c++.

Removing the /of arg works, though the manual entry is confusing since it calls it The output directory where the build will be extracted, but then it treats it as a file and errors if it doesn't exist. Removing it fixed that error there.

@gurpreetsinghmatharoo gurpreetsinghmatharoo added documentation Improvements or additions to documentation are required by this issue and removed build-bug Bugs when compiling projects inside GameMaker labels Feb 5, 2024
@patchuby
Copy link

patchuby commented Mar 9, 2024

@DiasFranciscoA I'm on the latest Steamworks extension version and this is still an issue, specifying an /of filename argument like suggested does not solve the issue. I've tried this on two different ubuntu machines. Removing the /of argument doesn't solve it either.

Stats : GMA : sp=891,au=351,bk=0,pt=3,sc=5165,sh=50,fo=6,tl=0,ob=54,ro=2,da=441,ex=3,ma=1127,fm=0xDA40B3BF7FFE7FB4
[STEAMWORKS] INIT: Script initialization succeeded (v1.6.2 :: 1).
"Copying Linux (64 bit) dependencies"


    Directory: 
    C:\ProgramData\GameMakerStudio2\Cache\runtimes\runtime-2024.2.0.163\bin\igor\windows\x64\output\Chronique des 
    Silencieux


Mode                 LastWriteTime         Length Name                                                                 
----                 -------------         ------ ----                                                                 
d-----        09/03/2024     14:01                _temp                                                                


Expand-Archive : The path '.zip' either does not exist or is not a valid file system path.
At line:1 char:34
+ ... e = 'Stop'; Expand-Archive -Path $env:PS_SRCFILE -DestinationPath $en ...
+                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : InvalidArgument: (.zip:String) [Expand-Archive], InvalidOperationException
    + FullyQualifiedErrorId : ArchiveCmdletPathNotFound,Expand-Archive
 
[STEAMWORKS] ERROR: Failed to extract contents of '.zip' to '_temp\'.


C:\GMS\extensions\Steamworks\post_build_step.bat exited with non-zero status (1)

I've submitted an issue over the Steamworks repo (YoYoGames/GMEXT-Steamworks#61) but should I open one here instead ?

@YYDan YYDan changed the title Igor not setting variables when running extension/steamworks scripts Command Line Builds: [Ubuntu IDE] Extension scripts referencing "/of" flag fail in 203.11 (e.g., Steamworks) Apr 29, 2024
@YYDan YYDan added build-bug Bugs when compiling projects inside GameMaker and removed documentation Improvements or additions to documentation are required by this issue labels Apr 29, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
build-bug Bugs when compiling projects inside GameMaker
Projects
Status: Ready for QA
Development

No branches or pull requests

7 participants