Thanks! Yeah, this was a typo in Mix_LoadWav_RW's deps. Fix in https://github.com/emscripten-core/emscripten/pull/8587
Please let me know if that doesn't fix things for you. - Alon On Thu, May 9, 2019 at 11:42 PM Александр Гурьянов <[email protected]> wrote: > This is VERBOSE=1 output: > lone.js && cd /home/caiiiycuk/emscripten/cats/project/emscripten && > gpx tools postbuild wasm wbin-standalone.js > VERBOSE is on, this generates a lot of output and can slow down compilation > adding _Mix_AllocateChannels and deps $SDL : function > _Mix_AllocateChannels(num) { > > adding SDL and deps > $FS,$PATH,$Browser,SDL_GetTicks,SDL_LockSurface,$SDL : > {defaults:{width:320,height:200,copyOnLo > adding FS and deps > __setErrNo,$PATH,$PATH_FS,$TTY,$MEMFS,$IDBFS,$NODEFS,$WORKERFS : > {root:null,mounts:[],devices:{},streams: > adding ___setErrNo and deps : function ___setErrNo(value) { > if (Mo > adding PATH and deps : {splitPath:function(filename) { > va > adding PATH_FS and deps $PATH,$FS : {resolve:function() { > var resolved > adding TTY and deps $FS : {ttys:[],init:function () { > // htt > adding MEMFS and deps $FS : {ops_table:null,mount:function(mount) { > > adding IDBFS and deps $FS,$MEMFS,$PATH : {dbs:{},indexedDB:function() { > if > adding NODEFS and deps $FS,$PATH : {isWindows:false,staticInit:function() { > adding WORKERFS and deps $FS : {DIR_MODE:16895,FILE_MODE:33279,reader:n > adding Browser and deps > emscripten_set_main_loop,emscripten_set_main_loop_timing,$Browser : > {mainLoop:{scheduler:null,method:"",curr > adding _emscripten_set_main_loop and deps > emscripten_set_main_loop_timing,emscripten_get_now,$Browser : function > _emscripten_set_main_loop(func, > adding _emscripten_set_main_loop_timing and deps $Browser : function > _emscripten_set_main_loop_timin > adding _emscripten_get_now and deps : function _emscripten_get_now() { > abort() > adding _SDL_GetTicks and deps $SDL : function _SDL_GetTicks() { > return (D > adding _SDL_LockSurface and deps $SDL : function _SDL_LockSurface(surf) { > va > adding _Mix_HaltChannel and deps $SDL : function _Mix_HaltChannel(channel) > { > > adding _Mix_Init and deps $SDL : function _Mix_Init(flags) { > if (!fla > adding _Mix_LoadWAV and deps > Mix_LoadWAV_RW,SDL_RWFromFile,SDL_FreeRW,$SDL : function > _Mix_LoadWAV(filename) { > va > adding _Mix_LoadWAV_RW and deps PATH_FS,$SDL : function > _Mix_LoadWAV_RW(rwopsID, freesr > error: undefined symbol: PATH_FS > warning: To disable errors for undefined symbols use `-s > ERROR_ON_UNDEFINED_SYMBOLS=0` > adding _PATH_FS and deps : function _PATH_FS( > ) { > err('missing func > adding _SDL_RWFromFile and deps $SDL : function _SDL_RWFromFile(_name, > mode) { > > adding _SDL_FreeRW and deps $SDL : function _SDL_FreeRW(rwopsID) { > SDL. > adding _Mix_OpenAudio and deps $SDL : function _Mix_OpenAudio(frequency, > forma > adding _Mix_Pause and deps $SDL : function _Mix_Pause(channel) { > if (c > adding _Mix_PlayChannelTimed and deps $SDL,Mix_PlayChannel : function > _Mix_PlayChannelTimed( > ) { > retu > adding _Mix_PlayChannel and deps $SDL : function _Mix_PlayChannel(channel, > id, l > adding _Mix_Resume and deps $SDL : function _Mix_Resume(channel) { > if ( > adding _Mix_Volume and deps $SDL : function _Mix_Volume(channel, volume) { > > adding _SDL_GetError and deps $SDL : function _SDL_GetError() { > if (!SDL. > adding ___buildEnvironment and deps $ENV : function > ___buildEnvironment(environ) { > > adding ENV and deps : {} > adding ___cxa_allocate_exception and deps : function > ___cxa_allocate_exception(size) > adding ___cxa_begin_catch and deps > _ZSt18uncaught_exceptionv,$EXCEPTIONS : function > ___cxa_begin_catch(ptr) { > v > adding EXCEPTIONS and deps __cxa_free_exception : > {last:0,caught:[],infos:{},deAdjust:func > adding ___cxa_free_exception and deps : function > ___cxa_free_exception(ptr) { > > adding ___cxa_current_primary_exception and deps : function > ___cxa_current_primary_exceptio > adding ___cxa_decrement_exception_refcount and deps $EXCEPTIONS : > function ___cxa_decrement_exception_refc > adding ___cxa_increment_exception_refcount and deps $EXCEPTIONS : > function ___cxa_increment_exception_refc > adding ___cxa_pure_virtual and deps : function ___cxa_pure_virtual() { > ABO > adding ___cxa_throw and deps > _ZSt18uncaught_exceptionv,__cxa_find_matching_catch,$EXCEPTIONS : > function ___cxa_throw(ptr, type, destruc > adding ___cxa_find_matching_catch and deps > __resumeException,$EXCEPTIONS : function ___cxa_find_matching_catch() > { > > adding ___resumeException and deps $EXCEPTIONS,function() { > Functions.libraryFunctions['___resumeException'] = 1 } : function > ___resumeException(ptr) { > i > adding ___cxa_uncaught_exception and deps _ZSt18uncaught_exceptionv : > function ___cxa_uncaught_exception() { > > adding ___gxx_personality_v0 and deps > _ZSt18uncaught_exceptionv,__cxa_find_matching_catch : function > ___gxx_personality_v0() { > } > adding ___lock and deps : function ___lock() {} > adding ___map_file and deps __setErrNo : function ___map_file(pathname, > size) { > > adding ___syscall102 and deps > $SOCKFS,$DNS,_read_sockaddr,_write_sockaddr,$SYSCALLS : function > ___syscall102(which, varargs) { > adding SOCKFS and deps $FS,$ERRNO_CODES : {mount:function(mount) { > // If Mod > adding ERRNO_CODES and deps : {EPERM:1,ENOENT:2,ESRCH:3,EINTR:4,EIO:5, > adding DNS and deps _inet_pton4_raw,_inet_pton6_raw : > {address_map:{id:1,addrs:{},names:{}},lo > adding __inet_pton4_raw and deps : function __inet_pton4_raw(str) { > var > adding __inet_pton6_raw and deps htons : function __inet_pton6_raw(str) { > var > adding __read_sockaddr and deps > $Sockets,_inet_ntop4_raw,_inet_ntop6_raw : function > __read_sockaddr(sa, salen) { > > adding Sockets and deps __setErrNo : > {BUFFER_SIZE:10240,MAX_BUFFER_SIZE:10485 > adding __inet_ntop4_raw and deps : function __inet_ntop4_raw(addr) { > re > adding __inet_ntop6_raw and deps _inet_ntop4_raw : function > __inet_ntop6_raw(ints) { > // > adding __write_sockaddr and deps > $Sockets,_inet_pton4_raw,_inet_pton6_raw : function > __write_sockaddr(sa, family, ad > adding SYSCALLS and deps $PATH,$FS : > {DEFAULT_POLLMASK:5,mappings:{},umask:51 > adding ___syscall140 and deps $SYSCALLS : function > ___syscall140(which, varargs) { > adding ___syscall142 and deps $SYSCALLS : function > ___syscall142(which, varargs) { > adding ___syscall145 and deps $SYSCALLS : function > ___syscall145(which, varargs) { > adding ___syscall146 and deps $SYSCALLS : function > ___syscall146(which, varargs) { > adding ___syscall183 and deps $SYSCALLS : function > ___syscall183(which, varargs) { > adding ___syscall221 and deps __setErrNo,$SYSCALLS : function > ___syscall221(which, varargs) { > adding ___syscall3 and deps $SYSCALLS : function ___syscall3(which, > varargs) {SY > adding ___syscall33 and deps $SYSCALLS : function ___syscall33(which, > varargs) {S > adding ___syscall4 and deps $SYSCALLS : function ___syscall4(which, > varargs) {SY > adding ___syscall5 and deps $SYSCALLS : function ___syscall5(which, > varargs) {SY > adding ___syscall54 and deps $SYSCALLS : function ___syscall54(which, > varargs) {S > adding ___syscall6 and deps $SYSCALLS : function ___syscall6(which, > varargs) {SY > adding ___syscall91 and deps $SYSCALLS : function ___syscall91(which, > varargs) {S > adding ___unlock and deps : function ___unlock() {} > adding _abort and deps : function _abort() { > Module['abort']( > adding _clock_gettime and deps > emscripten_get_now,emscripten_get_now_is_monotonic,__setErrNo : > function _clock_gettime(clk_id, tp) { > > adding _emscripten_get_now_is_monotonic and deps emscripten_get_now : > function _emscripten_get_now_is_monotoni > adding _emscripten_asm_const_double and deps : true > adding _emscripten_asm_const_int and deps : true > adding _emscripten_async_wget_data and deps $Browser : function > _emscripten_async_wget_data(url > adding _emscripten_get_heap_size and deps : function > _emscripten_get_heap_size() { > > adding _emscripten_longjmp and deps longjmp : function > _emscripten_longjmp(env, value) > adding _longjmp and deps saveSetjmp,testSetjmp,setThrew : function > _longjmp(env, value) { > _set > adding _saveSetjmp and deps realloc : function _saveSetjmp(env, label, > table, > adding _testSetjmp and deps : function _testSetjmp(id, table, size) { > > adding _setThrew and deps : function _setThrew(threw, value) { > t > adding _emscripten_resize_heap and deps > emscripten_get_heap_size,$abortOnCannotGrowMemory : function > _emscripten_resize_heap(request > adding abortOnCannotGrowMemory and deps : function > abortOnCannotGrowMemory(request > adding _exit and deps : function _exit(status) { > // void _ex > adding _getaddrinfo and deps > > $Sockets,$DNS,_inet_pton4_raw,_inet_ntop4_raw,_inet_pton6_raw,_inet_ntop6_raw,_write_sockaddr > : function _getaddrinfo(node, service, hin > adding _getenv and deps $ENV : function _getenv(name) { > // char *ge > adding _gettimeofday and deps : function _gettimeofday(ptr) { > var no > adding _glAttachShader and deps $GL : function _glAttachShader(program, > shader > adding GL and deps $GL : {counter:1,lastError:0,buffers:[],mapped > adding _glBindBuffer and deps $GL : function _glBindBuffer(target, buffer) > { > adding _glBindFramebuffer and deps $GL : function > _glBindFramebuffer(target, fram > adding _glBindRenderbuffer and deps $GL : function > _glBindRenderbuffer(target, ren > adding _glBindTexture and deps $GL : function _glBindTexture(target, > texture) > adding _glBlendFunc and deps $GL : function _glBlendFunc(x0, x1) { GLctx['b > adding _glBufferData and deps $GL : function _glBufferData(target, size, > dat > adding _glCheckFramebufferStatus and deps $GL : function > _glCheckFramebufferStatus(x0) { > adding _glClear and deps $GL : function _glClear(x0) { GLctx['clear'](x > adding _glClearColor and deps $GL : function _glClearColor(x0, x1, x2, x3) > { > adding _glColorMask and deps $GL : function _glColorMask(red, green, blue, > adding _glCompileShader and deps $GL : function _glCompileShader(shader) { > > adding _glCompressedTexImage2D and deps $GL : function > _glCompressedTexImage2D(target, > adding _glCreateProgram and deps $GL : function _glCreateProgram() { > var id > adding _glCreateShader and deps $GL : function _glCreateShader(shaderType) > { > > adding _glDeleteBuffers and deps $GL : function _glDeleteBuffers(n, > buffers) { > > adding _glDeleteFramebuffers and deps $GL : function > _glDeleteFramebuffers(n, frameb > adding _glDeleteProgram and deps $GL : function _glDeleteProgram(id) { > if ( > adding _glDeleteRenderbuffers and deps $GL : function > _glDeleteRenderbuffers(n, rende > adding _glDeleteShader and deps $GL : function _glDeleteShader(id) { > if (! > adding _glDeleteTextures and deps $GL : function _glDeleteTextures(n, > textures) > adding _glDisable and deps $GL : function _glDisable(x0) { GLctx['disable > adding _glDisableVertexAttribArray and deps $GL : function > _glDisableVertexAttribArray(ind > adding _glDrawArrays and deps $GL : function _glDrawArrays(mode, first, > coun > adding _glDrawElements and deps $GL : function _glDrawElements(mode, > count, ty > adding _glEnable and deps $GL : function _glEnable(x0) { GLctx['enable'] > adding _glEnableVertexAttribArray and deps $GL : function > _glEnableVertexAttribArray(inde > adding _glFinish and deps $GL : function _glFinish() { GLctx['finish']() > adding _glFlush and deps $GL : function _glFlush() { GLctx['flush']() } > adding _glFramebufferRenderbuffer and deps $GL : function > _glFramebufferRenderbuffer(targ > adding _glFramebufferTexture2D and deps $GL : function > _glFramebufferTexture2D(target, > adding _glGenBuffers and deps _glGenObject,$GL : function > _glGenBuffers(n, buffers) { > > adding __glGenObject and deps $GL : function __glGenObject(n, buffers, > creat > adding _glGenFramebuffers and deps _glGenObject,$GL : function > _glGenFramebuffers(n, ids) { > > adding _glGenRenderbuffers and deps _glGenObject,$GL : function > _glGenRenderbuffers(n, renderbu > adding _glGenTextures and deps _glGenObject,$GL : function > _glGenTextures(n, textures) { > > adding _glGetAttribLocation and deps $GL : function > _glGetAttribLocation(program, n > adding _glGetError and deps $GL : function _glGetError() { > // First re > adding _glGetIntegerv and deps $emscriptenWebGLGet,$GL : function > _glGetIntegerv(name_, p) { > > adding emscriptenWebGLGet and deps $GL : function > emscriptenWebGLGet(name_, p, ty > adding _glGetProgramInfoLog and deps $GL : function > _glGetProgramInfoLog(program, m > adding _glGetProgramiv and deps $GL : function _glGetProgramiv(program, > pname, > adding _glGetShaderInfoLog and deps $GL : function > _glGetShaderInfoLog(shader, max > adding _glGetShaderiv and deps $GL : function _glGetShaderiv(shader, > pname, p > adding _glGetUniformLocation and deps $GL : function > _glGetUniformLocation(program, > adding _glLinkProgram and deps $GL : function _glLinkProgram(program) { > G > adding _glPixelStorei and deps $GL : function _glPixelStorei(pname, param) > { > > adding _glRenderbufferStorage and deps $GL : function > _glRenderbufferStorage(x0, x1, > adding _glScissor and deps $GL : function _glScissor(x0, x1, x2, x3) { GL > adding _glShaderSource and deps $GL : function _glShaderSource(shader, > count, > adding _glStencilFunc and deps $GL : function _glStencilFunc(x0, x1, x2) { > GL > adding _glStencilOp and deps $GL : function _glStencilOp(x0, x1, x2) { GLct > adding _glTexImage2D and deps $emscriptenWebGLGetTexPixelData,$GL : > function _glTexImage2D(target, level, in > adding emscriptenWebGLGetTexPixelData and deps > > _computeUnpackAlignedImageSize,_colorChannelsInGlTextureFormat,_sizeOfGlTextureElementType,$GL > : function emscriptenWebGLGetTexPixelData( > adding __computeUnpackAlignedImageSize and deps $GL : function > __computeUnpackAlignedImageSize > adding __colorChannelsInGlTextureFormat and deps $GL : > {6402:1,6406:1,6407:3,6408:4,6409:1,6410 > adding __sizeOfGlTextureElementType and deps $GL : > {5121:1,5123:2,5125:4,5126:4,32819:2,328 > adding _glTexParameteri and deps $GL : function _glTexParameteri(x0, x1, > x2) { > adding _glUniform1f and deps $GL : function _glUniform1f(location, v0) { > > adding _glUniform1i and deps $GL : function _glUniform1i(location, v0) { > > adding _glUniform2f and deps $GL : function _glUniform2f(location, v0, v1) > adding _glUniform4f and deps $GL : function _glUniform4f(location, v0, v1, > adding _glUniformMatrix3fv and deps $GL : function > _glUniformMatrix3fv(location, c > adding _glUseProgram and deps $GL : function _glUseProgram(program) { > GL > adding _glVertexAttrib4f and deps $GL : function _glVertexAttrib4f(x0, x1, > x2, x > adding _glVertexAttribPointer and deps $GL : function > _glVertexAttribPointer(index, s > adding _glViewport and deps $GL : function _glViewport(x0, x1, x2, x3) { G > adding _glutCreateWindow and deps $Browser,$GLUT : function > _glutCreateWindow(name) { > v > adding GLUT and deps $Browser,glutPostRedisplay,$GLUT : > {initTime:null,idleFunc:null,displayFunc > adding _glutPostRedisplay and deps $GLUT : function _glutPostRedisplay() { > if ( > adding _glutDisplayFunc and deps $GLUT : function _glutDisplayFunc(func) { > GL > adding _glutInit and deps $Browser,$GLUT : function _glutInit(argcp, argv) > { > // > adding _glutInitDisplayMode and deps $GLUT : function > _glutInitDisplayMode(mode) { > > adding _glutInitWindowSize and deps $GLUT : function > _glutInitWindowSize(width, heig > adding _glutMainLoop and deps > $GLUT,glutReshapeWindow,glutPostRedisplay,$GLUT : function > _glutMainLoop() { > _glutResh > adding _glutReshapeWindow and deps $GLUT,glutPostRedisplay,$GLUT : > function _glutReshapeWindow(width, heigh > adding _glutMotionFunc and deps $GLUT : function _glutMotionFunc(func) { > GLU > adding _glutMouseFunc and deps $GLUT : function _glutMouseFunc(func) { > GLUT > adding _gmtime and deps __tm_current,gmtime_r : function _gmtime(time) { > return _gmt > adding ___tm_current and deps : 20428832 > adding _gmtime_r and deps __tm_timezone : function _gmtime_r(time, tmPtr) { > va > adding ___tm_timezone and deps : (stringToUTF8("GMT", 20428880, 4), 20428 > adding _llvm_bswap_i16 and deps : function _llvm_bswap_i16(x) { > x = x| > adding _llvm_bswap_i32 and deps : function _llvm_bswap_i32(x) { > x = x| > adding _llvm_round_f32 and deps Math_floor,Math_ceil : function > _llvm_round_f32(f) { > f = +f > adding _llvm_stackrestore and deps : function _llvm_stackrestore(p) { > var > adding _llvm_stacksave and deps : function _llvm_stacksave() { > var sel > adding _llvm_trap and deps : function _llvm_trap() { > abort('trap! > adding _memcpy and deps emscripten_memcpy_big,Int8Array,Int32Array : > function _memcpy(dest, src, num) { > d > adding _emscripten_memcpy_big and deps : function > _emscripten_memcpy_big(dest, sr > adding _memmove and deps memcpy : function _memmove(dest, src, num) { > > adding _memset and deps Int8Array,Int32Array : function _memset(ptr, > value, num) { > > adding _pthread_cond_broadcast and deps : function > _pthread_cond_broadcast(x) { > > adding _pthread_cond_wait and deps : function _pthread_cond_wait() { > return 0 > adding _pthread_mutexattr_destroy and deps : function > _pthread_mutexattr_destroy() {} > adding _pthread_mutexattr_init and deps : function > _pthread_mutexattr_init() {} > adding _pthread_mutexattr_settype and deps : function > _pthread_mutexattr_settype() {} > adding _roundf and deps Math_floor,Math_ceil : function _roundf(d) { > d = +d; > re > adding _sbrk and deps > > __setErrNo,emscripten_get_heap_size,emscripten_resize_heap,$abortOnCannotGrowMemory > : function _sbrk(increment) { > incremen > adding _sched_yield and deps : function _sched_yield() { > return 0; > > adding _signal and deps _sigalrm_handler : function _signal(sig, func) { > if (si > adding __sigalrm_handler and deps : 0 > adding _strftime and deps > _isLeapYear,_arraySum,_addDays,_MONTH_DAYS_REGULAR,_MONTH_DAYS_LEAP : > function _strftime(s, maxsize, format, t > adding __isLeapYear and deps : function __isLeapYear(year) { > retu > adding __arraySum and deps : function __arraySum(array, index) { > > adding __addDays and deps > _isLeapYear,_MONTH_DAYS_LEAP,_MONTH_DAYS_REGULAR : function > __addDays(date, days) { > var > adding __MONTH_DAYS_LEAP and deps : [31,29,31,30,31,30,31,31,30,31,30,31] > adding __MONTH_DAYS_REGULAR and deps : > [31,28,31,30,31,30,31,31,30,31,30,31] > adding _strftime_l and deps strftime : function _strftime_l(s, maxsize, > format, > adding _time and deps : function _time(ptr) { > var ret = (Dat > Error: Aborting compilation due to previous errors > shared:ERROR: '/usr/bin/nodejs > /home/caiiiycuk/emscripten/sdk/emscripten/src/compiler.js > /tmp/tmpKYjiFx.txt > /home/caiiiycuk/emscripten/sdk/emscripten/src/library_pthread_stub.js' > failed (1) > ninja: build stopped: subcommand failed. > > чт, 9 мая 2019 г. в 01:17, Alon Zakai <[email protected]>: > > > > I recently split up PATH into PATH and PATH_FS, where PATH_FS is the > part that depends on FS being present. Sounds like that might have caused a > bug somehow. If you build with -s VERBOSE=1 it should print the decisions > it makes when adding symbols, and then it should say which ends up > requiring PATH_FS. Then hopefully we can figure it out from there. (Or, if > you can provide a testcase I can look at that directly.) > > > > On Tue, May 7, 2019 at 10:01 PM Александр Гурьянов <[email protected]> > wrote: > >> > >> Hi guys! Just updated to latest incoming > >> (39158e5e344460d5c0a5da8913f87e4cb0db6e4a) and now have this error > >> that does not exists on previous version: > >> > >> error: undefined symbol: PATH_FS > >> warning: To disable errors for undefined symbols use `-s > >> ERROR_ON_UNDEFINED_SYMBOLS=0` > >> > >> Have no idea what is PATH_FS, and why it's not defined. I tried -s > >> FORCE_FILESYSTEM=1 but has no effect. > >> > >> Thanks. > >> > >> -- > >> You received this message because you are subscribed to the Google > Groups "emscripten-discuss" group. > >> To unsubscribe from this group and stop receiving emails from it, send > an email to [email protected]. > >> To view this discussion on the web visit > https://groups.google.com/d/msgid/emscripten-discuss/CAKOm%3DVHeJFLrghSYHGD7ZoY8JKwK3c60ONXfryXUAFrjXO15fA%40mail.gmail.com > . > >> For more options, visit https://groups.google.com/d/optout. > > > > -- > > You received this message because you are subscribed to the Google > Groups "emscripten-discuss" group. > > To unsubscribe from this group and stop receiving emails from it, send > an email to [email protected]. > > To view this discussion on the web visit > https://groups.google.com/d/msgid/emscripten-discuss/CAEX4NpRNDsO51u85MMGrwz1zY28c6f-_zifwcUKKcEGuxQGddw%40mail.gmail.com > . > > For more options, visit https://groups.google.com/d/optout. > > -- > You received this message because you are subscribed to the Google Groups > "emscripten-discuss" group. > To unsubscribe from this group and stop receiving emails from it, send an > email to [email protected]. > To view this discussion on the web visit > https://groups.google.com/d/msgid/emscripten-discuss/CAKOm%3DVG4TXAD9MwHU-HVGJzmrpx1wWkDV9Ap%2Btd%3DTnu-ySDiRA%40mail.gmail.com > . > For more options, visit https://groups.google.com/d/optout. > -- You received this message because you are subscribed to the Google Groups "emscripten-discuss" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To view this discussion on the web visit https://groups.google.com/d/msgid/emscripten-discuss/CAEX4NpRX0GrcH1LxfbdGgGQA5dFJr3CDcbQDG7xcKYbBwso%3D5A%40mail.gmail.com. For more options, visit https://groups.google.com/d/optout.
