Guild icon
DDraceNetwork
Development / developer
Development discussion. Logged to https://ddnet.tw/irclogs/ Connected with DDNet's IRC channel, Matrix room and GitHub repositories — IRC: #ddnet on Quakenet | Matrix: #ddnet-developer:matrix.org GitHub: https://github.com/ddnet
Between 2017-07-31 00:00:00Z and 2017-08-01 00:00:00Z
Avatar
0a28556 A bit nicer birthday message - def-
Avatar
This makes CMake look at the provided libraries before considering system libraries. Enable this by default on Windows. Fixes #830.
Avatar
<deen> github unusable right now
16:44
<heinrich5991> it works for me surprisingly
16:44
<heinrich5991> https://status.github.com/ < this still shows 0% reachability
Avatar
lovely unicorn
Avatar
<heinrich5991> deen: it seems you deleted the freetype binary for mac again
17:09
<deen> i did?
17:10
<heinrich5991> you need to execute git submodule update instead of adding the submodule after you updated your local git repository
17:10
<heinrich5991> (you can probably view the commit locally if github doesn't work for you)
17:11
<deen> i never touched the ddnet-libs file
17:11
<deen> that's not even a file, that's a directory
17:11
<deen> so i need to take special care of updating the ddnet-libs submodule every time i make a commit?
17:11
<heinrich5991> yes, not touching it and adding it to a commit (or using git commit -a) reverts the change
17:12
<deen> that seems like a pretty stupid design to me
17:12
<heinrich5991> (unless you use git submodule --update)
17:12
<deen> before each commit?
17:12
<heinrich5991> yes, I haven't figured out why it is that way either
17:12
<heinrich5991> (yes @ design)
17:12
<deen> So now I need to run 2 commands every time to build ddnet instead of 1 and also 2 commands to commit instead of 1
17:13
<heinrich5991> you should check what you commit or use git add to specify what you commit
17:13
<deen> seems like we're moving in the wrong direction
17:13
<deen> why should I check when I remember what I changed?
17:14
<heinrich5991> because it's a good idea anyway? even when you have no submodules
17:14
<deen> actually after each change I need to remove the build directory or can cmake auto-update it?
17:14
<deen> well, i don't expect git to make changes on its own
17:14
<heinrich5991> it doesn't make changes, it doesn't update the submodule automatically
17:15
<heinrich5991> we could add git submodule update to the cmakefile, it's probably a good idea anyway
17:15
<deen> so just make the submodule follow master, always?
17:15
<deen> nope, that's not a good idea
17:15
<heinrich5991> why not?
17:15
<deen> the build tool should not change the git repository on its own
17:16
<heinrich5991> that doesn't change the git repository
17:16
<heinrich5991> so, what a submodule is: another git repository, within the folder structure of the bigger one
17:16
<heinrich5991> you can check out your own branches etc., commit stuf
17:17
<heinrich5991> git submodule update checks out the revision that the parent wants
17:19
<heinrich5991> deen: and no, you don't need to remove the cmake build directory, especially not after https://github.com/ddnet/ddnet/pull/821
17:19
<deen> ok, so just 4 commands to test if a change builds: cd build && cmake .. && make -jx (no autodetection of number of cpus) && cd ..
17:20
<deen> compared to "bam release" previously
17:20
<deen> or even just "bam"
17:20
<heinrich5991> if you want, you can do cmake . && make if you want
17:20
<deen> ah, some cmake projects gave me errors when i did that
17:21
<heinrich5991> or just cmake --build build
17:21
<heinrich5991> if you already have a build directory there
17:21
<deen> and having to list every single file instead of glob is also terrible in cmake
17:21
<heinrich5991> yes
17:22
<heinrich5991> but I think that's a design tradeoff from supporting things like IDE projects
17:22
<deen> it's not that expensive to scan a directory sturcture and check if some files were added
17:22
<heinrich5991> no, but the build tool has to support it
17:23
<heinrich5991> (cmake doesn't drive the build, it generates config files for other tools)
17:24
<heinrich5991> but I think that's on of CMake's upsides, you can just generate your MSVC++ 20xx project and press compile
17:24
<deen> yeah, that's their design mistake
17:24
<heinrich5991> previously, you had to fiddle with the command line on windows
17:24
<deen> well, i don't care about msvc++
17:24
<heinrich5991> well, I care for the different systems equally, even if I don't use them
17:24
<deen> so how do i fix the ddnet repo again now?
17:25
<deen> ddnet-libs looks like a directory
17:25
<deen> the .git file tells me some other path, but not sure what to do there
17:26
<deen> git submodule update does nothing
17:27
<heinrich5991> git checkout master in there
17:27
<deen> ok, done
Avatar
<heinrich5991> now it's even older. git pull master
17:29
<heinrich5991> (think of it as a git repository)
17:29
<deen> git pull origin I guess
17:29
<deen> yeah, but my point is that I don't want to keep track of 2 git repos at once
17:29
<heinrich5991> yea, that
17:29
<deen> I just want it to always stay at origin/master and get auto-updated
Avatar
26ab0ca Update ddnet-libs again? - def-
Avatar
<heinrich5991> works
17:33
<heinrich5991> https://stackoverflow.com/a/37383406/870079 < if you want to hack your way around this
Avatar
<heinrich5991> deen: btw, you don't have to re-execute cmake
17:52
<heinrich5991> it will re-execute itself on make if something changed
17:53
<heinrich5991> (so it's just make then, if you want an in-source build)
18:44
52e42c2 Add CMake config option PREFER_BUNDLED_LIBS - heinrich5991 1e1ee7a Merge pull request #831 from heinrich5991/pr_dd... - def-
18:45
83742a9 List all source files instead of globbing them ... - heinrich5991 fd1b676 Merge pull request #821 from heinrich5991/pr_dd... - def-
Avatar
<eeeee> seems like we need a ccmake program now to generate cmakelists.txt
18:51
<heinrich5991> there is ccmake :)
18:51
<heinrich5991> but it's a tui for cmake
18:53
80fac31 fixed memory leak in console - H-M-H d3714f7 close workerthreads on shutdown - H-M-H 7b3aba8 fixed memoryleak in CCollision - H-M-H 7486ee8 also Unload Sound - H-M-H 7f7fa06 free the Client created by CreateClient - H-M-H
Avatar
Anyone want to work on the emoji PR?
20:04
@xPapla ^
Avatar
@xPapla is out of home for few months
20:05
:/
Avatar
So, someone else can fix it and we merge
20:06
if there is interest in this emoji stuff
20:06
Personally I don't care much either way, but people will probably like it
Avatar
Pls don't add too many 😦
Avatar
xd that will look so weird for old clients
Avatar
<Socialdarwinist> Are you willing to implement Complex Text Rendering then too? That is more important, so localizations and chats in Thai, Hindi etc. are possible. For nobody needs Emoji, but you can’t say “Noboy needs Thai or Hindi”.
20:46
<heinrich5991> there are definitely people who want to have emoji
20:46
<heinrich5991> just as there are people who want Thai or Hindi
20:52
<Socialdarwinist> The emoji is stuff is only invented by Unicode to promote their actual script encoding. Offering scripts is paramount – what people want is like always the product of delusion.
20:53
<heinrich5991> emoji stuff was added because it was contained in some japanese encoding
20:54
<Socialdarwinist> That would be too trifling a reason for such a marketing campaign that surrounds the emoji issue.
20:55
<heinrich5991> marketing campaign? from unicode? I doubt it
Avatar
<Socialdarwinist> The money flows from the Adopt-a-character program, which results in almost only emojis being encoded, to script encoding: http://blog.unicode.org/2016/06/encoding-mayan-script-your-adopt.html
Avatar
<Socialdarwinist> Look at the press coverage: Emojis are what journalists can catch about encoding. It has been crucial for the public portrayal of the Unicode work, because journalists in the Western world are generally college dropouts and pseudointellectual punks who can get nary an idea about context-sensitive shaping or the problems of bidirectional text, and even if they can, do not have the dexterity to express it because of their
21:14
<Socialdarwinist> addiction of breaking all down to 140 characters, and because it is easier to appease advertising clients which such rather than the General Punctuation block.
Avatar
<heinrich5991> without looking at the press coverage, I know that a lot of people use emojis
21:32
<heinrich5991> so even without trying to insult journalists, one can see that emojis apparantly carry some importance
21:36
<eeeee> no it's a unicode conspiracy to infect your brain with emoji. repost this 10 times to warn your friends
Avatar
REPTILIANS!!!!
Avatar
obama was a shape shifting lizard
Avatar
hi @Learath2
Avatar
hi @Ryozuki
Avatar
Socialdarwinist 2017-07-31 21:40:18Z
Surely, a Zionist plot to mock the prohibition of pictures in Islam, making people support icons before they support Arabic writing. That is at least the story I could sell Press TV. Because they’re journalists.
Avatar
Why are you talking about this, on dev channel?
21:40
GO to tv
Avatar
Socialdarwinist 2017-07-31 21:41:16Z
It is about what to implement first 😬
Avatar
phaha
Avatar
<Learath2> @Savander do you not believe in shape shifting lizards setting the agenda?
Avatar
@Learath2, I'm one of them, tsii
Avatar
<Learath2> deen is also a shape shifting lizard trying to slow down the ddnet project so we do not discover the ultimate truth
Avatar
nobody knows
Avatar
<eeeee> ﷽﷽﷽
Avatar
i don't have a font that can haz those characters on my computer
Avatar
ask yourself, why im here since 2013
Avatar
what are those even?
Avatar
report eeeee for radical terrorism (edited)
Avatar
@eeeee i'm going to share your DDWar, sorry mate.
Avatar
@Savander don't you dare
Avatar
our lawyers will take you to court on that
Avatar
<eeeee> infidel
Avatar
I'm lizard, do you remember?
21:45
I stay above the law
Avatar
<Ryozuki> @heinrich5991, oh now that you are here, i can with cmake but i get an error when executing the server/client, here is a diff between bam and cmake (bam works) https://cdn.discordapp.com/attachments/293493549758939136/341237096742125568/DIFF.txt , this is the error "could not find entry point of the process "_ZNSt7__cxx1112basic_stringlcSt11char_traitslcESalcEE9_M_createERjj"
21:45
<Ryozuki> i can compile with*
Avatar
Ryozuki, you tried after last commits?
Avatar
with mingw
Avatar
I saw, that they changed something in cmake
Avatar
not related i think, sec i try
Avatar
Ryozuki: that exact error happened for me after a gcc upgrade, they changed the C++ linking couple of versions ago
Avatar
: O O
Avatar
seeª!
Avatar
had to recompile many libraries with the new ABI
Avatar
<Learath2> GCC 4.7 to be exact
Avatar
Socialdarwinist 2017-07-31 21:47:23Z
DDNet could get banned in the KSA or other countries for implementing emojis. http://www.dailymail.co.uk/news/article-3571462/Islamic-preacher-BANS-text-emojis-Muslims-angels-don-t-halos-don-t-know-devil-really-looks-like.html You could excuse yourself by supporting Arabic script first.
Avatar
-- The C compiler identification is GNU 5.3.0 -- The CXX compiler identification is GNU 5.3.0
Avatar
<Learath2> might be our bundled libraries linked with < 4.7 gcc
Avatar
is there a fix? or i have to get back to 4.7
21:48
:(
Avatar
<Learath2> hey i have no idea if that's the problem
21:49
<Learath2> that's the problem i had
Avatar
back to windows 95 then 😦
Avatar
<Learath2> Ryozuki: which OS are you using?
21:50
<Ryozuki> Windows 10
21:50
<Learath2> well that explains alot
21:50
<Ryozuki> ye it sucks
21:50
<Learath2> garbageOS 10
21:50
<Ryozuki> #wintendo
21:50
<Learath2> hmm are you using mingw?
21:51
<Ryozuki> yep
Avatar
ChromeOS
21:52
<Ryozuki> idk if its of help
21:52
<Learath2> Ryozuki: are you compiling with the bundled libs?
21:52
<Ryozuki> wait need to test the force bundled
21:53
<Learath2> windows never worked too well with non-bundled libs, don't even know if it's possible
21:53
<Ryozuki> Curl not found (using bundled version)
21:53
<Ryozuki> -- * Freetype not found (using bundled version)
21:53
<Ryozuki> -- * Ogg not found (using bundled version)
21:53
<Ryozuki> -- * Opus not found (using bundled version)
21:53
<Ryozuki> -- * Opusfile not found (using bundled version)
21:54
<Ryozuki> -- * PythonInterp found
21:54
<Ryozuki> -- * SDL2 not found (using bundled version)
21:54
<Ryozuki> -- * Zlib not found (using bundled version)
21:54
<Ryozuki> PythonInterp found <- ? i have python installed
21:54
<Learath2> can you pls not spam us? :P
21:54
<Ryozuki> sry :P
Avatar
you sure, you ccloned libs to? 😛
Avatar
<Ryozuki> yes
21:56
<Learath2> Ryozuki: you sure you have python in your PATH?
Avatar
something went wrooooong
Avatar
<Ryozuki> python --version
21:56
<Ryozuki> Python 3.5.3
21:56
<Ryozuki> im sure :P
21:56
<Learath2> Ryozuki: if you are using mingw are you also using MSYS?
21:57
<Ryozuki> not that i know?
21:58
<Learath2> are you using windows cmd?
21:58
<Ryozuki> yes
21:58
<Learath2> that's garbage
21:58
<Learath2> never worked well
21:58
<Ryozuki> im using cmder
21:58
<Ryozuki> but that doesnt change anything
21:59
<Learath2> try MSYS included in mingw or Git Bash it also includes MinTTY with MSYS which is great
21:59
<Ryozuki> git bash? ill try
22:00
<Ryozuki> nah it uses visual studio which i don't want
22:00
<Ryozuki> i want mingw :/
22:01
<Learath2> git bash should use mingw
22:01
<Learath2> wtf did you do to it??
22:01
<Ryozuki> idk
22:01
<Learath2> if it's in path it should take gcc first
22:01
<Ryozuki> wait ill force mingw
22:01
<Learath2> it shouldn't even find msvc in git bash
22:04
<Ryozuki> same error
22:04
<Learath2> Ryozuki: is it using the bundled libs?
22:04
<Ryozuki> cmake says yes, less for pythoninterp
22:05
<Learath2> if you can try an older gcc pls, deen might be using an older gcc to build the libs
22:07
<Ryozuki> gcc 4.8.2?
Avatar
<heinrich5991> Ryozuki: do you have msvc installed?
22:34
<Ryozuki> yes
22:34
<Ryozuki> if that comes with visual studio
22:35
<Ryozuki> The C compiler identification is MSVC 19.0.24210.0
22:36
<Ryozuki> i dont like msvc
22:36
<heinrich5991> could you try compiling with msvc? it's the only thing I tried so far on windows
22:36
<heinrich5991> do you have the cmake gui?
22:38
<Ryozuki> why?, compiling with msvc...
22:39
<Ryozuki> yes with msvc works
22:39
<heinrich5991> Ryozuki: and can you give me the file CMakeFiles\DDNet.dir\linklibs.rsp?
22:41
<Ryozuki> i dont have that folder
22:41
<Ryozuki> C:\Users\user\Desktop\DDNET-DEV\ddnet\build\DDNet.dir\Debug
22:41
<Ryozuki> tho there are only .obj files
22:41
<Ryozuki> DDNet_cl.res ?
22:41
<heinrich5991> no
22:42
<heinrich5991> do you have separate folders for msvc and mingw build?
22:42
<heinrich5991> if not, could you configure a mingw build again and let it run, and afterwards give me the file
22:42
<Ryozuki> sure
22:50
<Ryozuki> this one has the file you mentioned
Avatar
<heinrich5991> wait, could you run C:\MinGW\bin\g++.exe --version and g++ --version in the bam shell
22:55
<Ryozuki> both 5.3.0
22:58
<heinrich5991> Ryozuki: did you quote the error character-for-character or did you paraphrase it?
22:58
<Ryozuki> i added "
22:59
<heinrich5991> might it be "the procedure entry point could not be located"?
22:59
<heinrich5991> wait
22:59
<heinrich5991> where does the error appear?
22:59
<heinrich5991> in the console?
22:59
<heinrich5991> in a message box?
22:59
<Ryozuki> when executing it
22:59
<Ryozuki> see the image
22:59
<Ryozuki> (spanish, sry)
22:59
<heinrich5991> ok
22:59
<heinrich5991> so it's not a link-time error but a runtime error
22:59
<Ryozuki> looks like
23:00
<heinrich5991> copy all the .dlls over to the build directory
23:00
<heinrich5991> the ones where bam generates its executables
23:01
<Ryozuki> you mean copy the ddls from ddnet-libs?
23:01
<heinrich5991> no
23:01
<heinrich5991> bam automatically copies some dlls
23:01
<Ryozuki> from?
23:02
<heinrich5991> to the root directory of the ddnet stuff
23:02
<heinrich5991> from ddnet-libs probably
23:02
<heinrich5991> but just copy over the libs that bam has copied
23:02
<Ryozuki> so i build with bam?
23:02
<heinrich5991> (i.e. all the dlls in the ddnet root folder)
23:02
<heinrich5991> I thought you built with bam already?
23:02
<Ryozuki> i bam -c all to keep things clean
23:02
<heinrich5991> ah
23:03
<heinrich5991> then build with bam
23:03
<heinrich5991> (note that you can do a cmake build in a different folder if you want to)
23:03
<Ryozuki> i actually do
23:04
<Ryozuki> copied, same error
23:05
<heinrich5991> was there some libgcc*.dll?
23:05
<Ryozuki> libgcc_s_sjlj-1.dll
23:06
<heinrich5991> mh okay
23:06
<heinrich5991> and you copied those to the cmake build folder in which you tried to exectue the ddnet-server again?
23:06
<Ryozuki> yep
23:07
<heinrich5991> ah
23:09
<heinrich5991> Ryozuki: how did you generate the cmake build dir for mingw?
23:09
<heinrich5991> using the UI or the cli?
23:09
<Ryozuki> cli
23:09
<Ryozuki> cmake .. -G "MinGW Makefiles" -DCMAKE_SH="CMAKE_SH-NOTFOUND"
23:10
<heinrich5991> ok
23:10
<heinrich5991> can you rm CMakeCache.txt
23:10
<Ryozuki> yes
23:10
<heinrich5991> and then env LDFLAGS="-static-libgcc -static-libstdc++" cmake .. -G "MinGW Makefiles" [...] ?
23:11
<Ryozuki> now i build?
23:11
<heinrich5991> yes
23:12
<Ryozuki> works!
23:13
<heinrich5991> mh okay
23:13
<Ryozuki> not what you expected?
23:13
<heinrich5991> no no, it's fine
23:14
<heinrich5991> why did you do the CMAKE_SH thing?
23:14
<Ryozuki> CMake Error at C:/Program Files/CMake/share/cmake-3.7/Modules/CMakeMinGWFindMake.cmake:12 (message):
23:14
<Ryozuki> sh.exe was found in your PATH, here:
23:14
<Ryozuki> C:/Program Files/Git/usr/bin/sh.exe
23:14
<Ryozuki> For MinGW make to work correctly sh.exe must NOT be in your path.
23:14
<Ryozuki> ^ thats why
23:15
<heinrich5991> mh ok
23:15
<heinrich5991> you can probably also use any other falsy string btw
23:15
<heinrich5991> OFF NO FALSE 0 etc.
23:16
<Learath2> heinrich5991: static libgcc and libstdc++ is what we want right?
23:16
<heinrich5991> on windows with mingw yes. I'm about to send a PR
23:21
<heinrich5991> btw, PREFER_BUNDLED_LIBS is true on Windows by default
23:21
<Ryozuki> nice
Avatar
<heinrich5991> Ryozuki: can you try this?
23:22
<Ryozuki> yes
23:27
<Learath2> heinrich5991: might want a if STREQUAL "Windows" there
23:28
<heinrich5991> not that easy
23:28
<heinrich5991> you don't want it for MSVC
23:28
<Learath2> deen does cross compile for windows
23:28
<Learath2> with mingw
23:29
<Learath2> think that one already worked, so we shouldnt merge before he tries i guess
23:30
<Ryozuki> heinrich5991, works
23:30
<Learath2> oh i guess we can merge then
23:35
<heinrich5991> CI is done as well
23:37
<Learath2> heinrich5991: well i don't see any reason not to merge, if you have no objections either i'll go ahead
23:37
<heinrich5991> go ahead
23:37
523f352 Statically link standard libraries in MinGW for... - heinrich5991
Exported 324 message(s)