Download files with a SketchUp plugin
-
Have you looked at TBD's C-Extension project?
https://github.com/TBD/OpenSUP/tree/master/SUExt -
@thomthom said:
Have you looked at TBD's C-Extension project?
https://github.com/TBD/OpenSUP/tree/master/SUExtYes, I have. It was written for use on Windows and even after modification all I can get is a "Failed to load" error, just like the issue I'm coming across with the file downloader tool.
I've tried to set up a really bare-minimum C extensions to load into SU (for the Mac) but have thus far failed. If anyone can offer a pointer as to why a "Failed to load" error would be thrown, I would be much appreciative!
Cheers,
Dana -
removed the x64 version and now it crashes with EXC_BAD_ACCESS in Init_file_downloader. will keep you updated on debug progress.
-
@unknownuser said:
removed the x64 version and now it crashes with EXC_BAD_ACCESS in Init_file_downloader. will keep you updated on debug progress.
Glad you're looking into it TBD, I could use the help of someone with more experience!
-
here is what I did to make it work:
-
remove the x64 version from makefile - you can check with
otool -hv file_downloader.bundle
-> cputype I386 -
link to the correct libruby.1.dylib (1.8.7 in my case as I upgraded Sketchup Ruby framework) - check with
otool -L file_downloader.bundle
-> current version 1.8.7
-
-
I really wish I understood the things required to compile correctly. I've compiled a couple of C-Extension, but only at the grace of TBD and AdamB who helped me out getting the setup to work. But I have no idea how or why...
Can anyone recommend resources to understand this?
-
@unknownuser said:
here is what I did to make it work:
-
remove the x64 version from makefile - you can check with
otool -hv file_downloader.bundle
-> cputype I386 -
link to the correct libruby.1.dylib (1.8.7 in my case as I upgraded Sketchup Ruby framework) - check with
otool -L file_downloader.bundle
-> current version 1.8.7
You got it to work in Mac? That's great! Is there any chance you could send me the Makefile (or send me a Pull request on Github) so I can see where you removed the x64 bits. I couldn't find anything in the Makefile (generated by the extconf.rb file) that had any reference to x64. Thanks TBD!
-
-
@thomthom said:
I really wish I understood the things required to compile correctly. I've compiled a couple of C-Extension, but only at the grace of TBD and AdamB who helped me out getting the setup to work. But I have no idea how or why...
Can anyone recommend resources to understand this?
Once I wrap my head around this stuff, I will be writing up a few articles on the subject. I'll post links when I get them done
-
ishboo: pull request sent. also added my 1.8.7 bundle in /build
thomthom compiling is like a black box where you throw a bunch of files and expect another bunch of files. you need to know the parameters used (mostly how to include headers and libs and output formats) from the help files. also wikipedia entry on compilers is a good start for an overview.
also use a file monitor [procmon(Win) and opensnoop(OSX)] when things go wrong - it saved me a lot of time when files were not found (looking in wrong directories) or wrong files were used.
-
@unknownuser said:
thomthom compiling is like a black box where you throw a bunch of files and expect another bunch of files. you need to know the parameters used (mostly how to include headers and libs and output formats) from the help files. also wikipedia entry on compilers is a good start for an overview.
Headers and libs are one thing. But it's all the paramters, the output format and compiler settings that I have no idea of how it works. I've tried looking for tutorials - but found nothing that made me any wiser.
-
` %(#4000BF)[C:\Program Files\Microsoft Visual Studio 8\VC\bin>nmake /?
Microsoft (R) Program Maintenance Utility Version 8.00.50727.762
Copyright (C) Microsoft Corporation. All rights reserved.Usage: NMAKE @commandfile
NMAKE [options] [/f makefile] [/x stderrfile] [macrodefs] [targets]Options:
/A Build all evaluated targets
/B Build if time stamps are equal
/C Suppress output messages
/D Display build information
/E Override env-var macros
/ERRORREPORT:{NONE|PROMPT|QUEUE|SEND} Report errors to Microsoft
/G Display !include filenames
/HELP Display brief usage message
/I Ignore exit codes from commands
/K Build unrelated targets on error
/N Display commands but do not execute
/NOLOGO Suppress copyright message
/P Display NMAKE information
/Q Check time stamps but do not build
/R Ignore predefined rules/macros
/S Suppress executed-commands display
/T Change time stamps but do not build
/U Dump inline files
/Y Disable batch-mode
/? Display brief usage message]` -
@unknownuser said:
The point is that you can do it from a Web dialog (via XMLHttpRequest), but sometimes you may want to check 'silently' whether something has changed on the web.
In this case, the WebDialog could be opened outside of the visible area of the screen and sized to a minimum.
wd = UI;;WebDialog.new wd.set_position(-1000, -1000) wd.show
I think folks would welcome a simpler workflow without being asked where to save the file first. A single button to install/upgrade a plugin followed with a reminder to close and restart SketchUp.
-
Plus, WebDialogs capture focus when they are displayed - which can be an annoyance if they pop up out of screen without the user' knowledge.
-
Is there a Windows build in sight?
Advertisement