Why does this compile so slow? (<YSI\y_ini> )
#1

I am using y_ini for a register system and for some reason it compiles slow. I searched the internet
but nothing specific about YSI compiling problems so i must be doing something wrong myself.
However i just figured i should put up a blanc script like you see here and see what it does;

pawn Код:
#include <a_samp>
#include <YSI\y_ini>


public OnFilterScriptInit()
{
    print("\n--------------------------------------");
    print(" Blank Filterscript by your name here");
    print("--------------------------------------\n");
    return 1;
}

public OnFilterScriptExit()
{
    return 1;
}
This takes about 6 seconds to compile i also get the message that the compiler doesnt respond after about 4 seconds.

if i take away the YSI include the compiler works fine.
Maybe i awfully placed some files incorrect or something i dunno.
The YSI folder is just in the pawno\includes folder where it should be.

Does anyone have an idea what could cause this and even solve it without just throwing away my pc and buy a new one? XD
Reply
#2

It's just that YSI is notorious for a lot of compiler hacking and lots and lots of macros, many of which recursive. The compiler has to do multiple rounds to parse all this hacked stuff which makes it incredibly slow. I would suggest including only the stuff that you actually need. If you only require foreach then only include y_iterate, for example.
Reply
#3

Quote:
Originally Posted by Vince
Посмотреть сообщение
It's just that YSI is notorious for a lot of compiler hacking and lots and lots of macros, many of which recursive. The compiler has to do multiple rounds to parse all this hacked stuff which makes it incredibly slow. I would suggest including only the stuff that you actually need. If you only require foreach then only include y_iterate, for example.
Yeah,i had the same problem althou i didnt have many lines in my script
Reply
#4

Quote:
Originally Posted by Vince
Посмотреть сообщение
It's just that YSI is notorious for a lot of compiler hacking and lots and lots of macros, many of which recursive. The compiler has to do multiple rounds to parse all this hacked stuff which makes it incredibly slow. I would suggest including only the stuff that you actually need. If you only require foreach then only include y_iterate, for example.
That means i should do #include <y_ini> making sure that y_ini file is not in the YSI folder but just in include correct?

ive done that and i get this
pawn Код:
C:\Games\Rockstar Games\GTA San Andreas\sampserver\pawno\include\y_ini.inc(162) : fatal error 100: cannot read from file: "internal\y_version"

Compilation aborted.Pawn compiler 3.2.3664          Copyright (c) 1997-2006, ITB CompuPhase


1 Error.

should i replace this internal\y_version now too ?
Reply
#5

Quote:
Originally Posted by AIped
Посмотреть сообщение
That means i should do #include <y_ini> making sure that y_ini file is not in the YSI folder but just in include correct?

ive done that and i get this
pawn Код:
C:\Games\Rockstar Games\GTA San Andreas\sampserver\pawno\include\y_ini.inc(162) : fatal error 100: cannot read from file: "internal\y_version"

Compilation aborted.Pawn compiler 3.2.3664          Copyright (c) 1997-2006, ITB CompuPhase


1 Error.
should i replace this internal\y_version now too ?
I had the same thing u need all the ysi plugin...
Reply
#6

alright i downloaded from the github and reinstalled the entire YSI

figured that this compiles okay
pawn Код:
#include <YSI\internal\y_version>
and this
pawn Код:
#include <YSI\y_ini>
like...extremely slow.
What am i doing wrong here ?
Reply
#7

Quote:
Originally Posted by AIped
Посмотреть сообщение
alright i downloaded from the github and reinstalled the entire YSI

figured that this compiles okay
pawn Код:
#include <YSI\internal\y_version>
and this
pawn Код:
#include <YSI\y_ini>
like...extremely slow.
What am i doing wrong here ?
Nothing wrong if it takes a while...
just once it compiles? Do it?
Reply
#8

Solved.....
Close.
Reply
#9

Quote:
Originally Posted by Joron
Посмотреть сообщение
Solved.....
Close.
Actually its not solved, i figured the YSI you gave me was an old version and i got warnings.
So i downloaded the latest version.



now i figured that this compiles okay
pawn Код:
#include <YSI\internal\y_version>
BUT this one not;
pawn Код:
#include <YSI\y_ini>
like...extremely slow.
What am i doing wrong here ?
the path pawno\includes\YSI\ is where the y_ini file is located..is that correct ?
Reply
#10

I had to rewrite my gamemode loading and saving from y_ini to SQLite because of this problem though SQLite is faster than y_ini. Best solution is just let it finishes compile even if it takes so long since there is nothing to do about it. And yes! Your path is correct. Its such a horrible problem which occurs because of no nothing.
@Joron; Who are you to say problem is solved while you are not the topic owner. Moreover nice double post.
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)