beginner's troubles

I’ve taken courses in C++ and Java, so I have a little programming background, but it’s been a while.

I’m working through the SDK developers’ guide, and I’m having trouble with the Application Installer recognizing the manifest file in the helloworld.zip. The error I get upon trying to upload the file reads: Install Failure: No manifest. Invalid package.

I’ve seen in a previous post where the manifest file cannot have spaces. I’ve tried both with and without, neither with any success.

Is the problem with the manifest file, or it possible that something in my helloworld.brs file is off?

Maybe the manifest is in sub-directory of the zip?
I think has to be top-level in the ZIP (so if you unzip it it shows in current directory). This is how i package w/o makefile.

thanks, EnTerr!

I’m beginning to suspect my problem may be the makefile…I didn’t create one :oops: . What’s better, in my attempts to create one using Command Prompt (or bypassing creation of the makefile and using your example), the Command Prompt doesn’t recognize any of the commands (export, %, etc) shown in the SDK Developer Guide. I’m stuck spinning my wheels here, and can’t seem to get any traction!

Are there any development environments (or any methods otherwise) available to make this process go more smoothly, or am I pretty much just limited to using the Command Prompt?

oh hey, I was just reading the Dev Blog…we’re assumed to have cURL, which I don’t. I wonder if downloading that will help…

You don’t have to use Makefile, I don’t. On the dev installer page just hit “choose file”, select your zip and then hit “install”. When you make your zip file you should be selecting (at least) the manifest, images directory and source directory. If you are selecting the folder they are in and trying to zip that it wont work. You don’t need curl to upload a package just a browser.

“wxYz” wrote:

Are there any development environments (or any methods otherwise) available to make this process go more smoothly, or am I pretty much just limited to using the Command Prompt?

Roku publishes the Brightscript plugin for Eclipse (see: http://sdkdocs.roku.com/display/sdkdoc/Eclipse+Plugin+Guide).
Via an included menu option/wizard (Export/BrightScript Deployment), it can largely automate the zip, side-loading, and package file creation processes.
It’s also got a lot of other features typical of IDEs.

Cheers

Using Eclipse for BRS development is like using a bazooka to kill a mosquito. Approximately as much overkill; not worth installing for that. However if you are already accustomed to Eclipse and use it day to day, under the Golden Hammer rule it makes sense to use the plugin.

The script i pointed was for Mac (or another Unix flavor, #!/bin/bash is a giveaway). But i had used batch file on Windows with no problem, just had to download cURL; don’t remember what i used for zipping, don’t think i have the .cmd file handy. For the first few times do it manually indeed, to see there is no magic to it, zip by hand and upload from the web page. It will be good to use (free) text editor with syntax highlighting option for BASIC (or Visual Basic) - like Notepad++, ConTEXT, TextWrangler.

PS. Found it, this worked couple of years ago (that put in say “run.cmd” in the project directory):

del bundle.zip
"d:\Program Files\WinRAR\WinRAR.exe" a bundle.zip manifest source images 
curl -S -F "mysubmit=Install" -F "archive=@bundle.zip" -F "passwd=" http://%ROKU_DEV_TARGET%/plugin_install 
pause

Nowadays have to add “–user rokudev:some_password_here --anyauth”; as well as adjust for fav. ZIP archiver (probably can “jar” it)

just wanted to post an update: still having trouble with the “helloworld” file. One of my friends tried it, and was able to get it to work successfully. He sent his zip file to me, and I was able to upload it to the application installer successfully, but nothing displayed on the Roku.

So, I copied his file exactly, and upon uploading my version, the application installer promptly rejected that, as it has all of my other attempts.

So now, just for kicks and giggles, I tried to upload his file again…the exact same file that was accepted successfully before gave the same exact error that my files have been getting.

I searched the forums on this error, using “Install Failure: No manifest. Invalid package” as my search terms. It seems that most people that were having this problem were either working on Mac OS X (which, btw, I’m working on Windows 8.1), and/or they had their manifest at the wrong level (buried in the “source” folder, or otherwise not at root level).

btw, for further information, here are the contents of my manifest file (should look familiar…this is exactly how it shows up in the SDK example):

title=Hello World
subtitle=Simplest Program
major_version=1

oh, and I’ve tried everything else, too…tried to install VisualStudio and Eclipse…neither seemed to want to have anything to do with BrightScript. Tried both Juno and Helios versions of Eclipse, the update site for BrightScript wasn’t recognized, and thus couldn’t even use it for this project.

Does anyone have any ideas? I swear I’ve gone down every single rabbit hole…not one of them has produced a single carrot!

Have you tried downloading the SDK and installing one of the known-good examples from there? I’ve never seen the “hello world” project, but you really aren’t ready to do that if you can’t get something into the box. Download the SDK and try uploading any of the zip files in examples/zips. Forget about installing other programs, just use the browser - first things first. If it works you will have an example to copy the structure of, if it doesn’t you know the file you’re sending isn’t the problem.

“EnTerr” wrote:
Using Eclipse for BRS development is like using a bazooka to kill a mosquito. Approximately as much overkill; not worth installing for that. However if you are already accustomed to Eclipse and use it day to day, under the Golden Hammer rule it makes sense to use the plugin.

I have tried both ways, and once the application became large it was more beneficial for me to use Eclipse with the plugin. The project explorer is a quick way to access any file quickly, even my images , xml, json. The outliner allows fast access to functions in different modules and shows me where any naming conflicts may arise. To be able to zip, sideload and debug in a couple of mouse clicks is also a benefit. Also copying code from other projects, running test code in a test project - etc.
Even the editor is helpful most of the time. I’m using Version: Helios Service Release 2 Build id: 20110218-0911 with windows 8. No problem except from time to time I have to re-enter the ip address in the deployment wizard (don’t know if this is intentional or just a bug). It can only get better with each release of the plugin (I hope)

@squirreltown : I’ve been able to upload example files from the SDK successfully, just not anything related to the helloworld file…whether my own, or someone else’s attempt, which was successful on their machine, but for some reason isn’t on mine. (see my last post regarding my friend’s file, which was successful for him, and which I was able to upload to my machine without display on the first attempt, but has failed on every attempt thereafter)

btw, squirreltown, I noticed in one your earlier post you mention to make sure to include the images directory. No mention of an images directory is made in the dev guide for the helloworld example. However, in my searches on this forum, I came across advice to another beginner who was having similar struggles that advised them to include an images directory for the helloworld example (despite its exclusion from the dev guide). Might this be the source of my problem, or is it some other small, inane problem/incompatibility that is making me want to pull out my hair? For instance, might file association (with the brs file) cause this problem? Or, perhaps something with the file’s properties/attributes?

I’m trying to keep from overthinking the cause of the problem, but all of the simple solutions keep getting ruled out…

There’s no requirement to have an images directory, but there is a requirement to have icons in your package. These are usually stored in a directory called images, but it doesn’t have to be.

I suggest you get a command line, run “unzip -l myfile.zip” and post the output.

–Mark

Not trying to hijack the thread but I can’t resist responding…

“NewManLiving” wrote:

“EnTerr” wrote:
Using Eclipse for BRS development is like using a bazooka to kill a mosquito. Approximately as much overkill; not worth installing for that. However if you are already accustomed to Eclipse and use it day to day, under the Golden Hammer rule it makes sense to use the plugin.

I have tried both ways, and once the application became large it was more beneficial for me to use Eclipse with the plugin. The project explorer is a quick way to access any file quickly, even my images , xml, json. The outliner allows fast access to functions in different modules and shows me where any naming conflicts may arise. To be able to zip, sideload and debug in a couple of mouse clicks is also a benefit. Also copying code from other projects, running test code in a test project - etc.
Even the editor is helpful most of the time. I’m using Version: Helios Service Release 2 Build id: 20110218-0911 with windows 8.

Thanks, I do try :slightly_smiling_face:
Aside from the benefits mentioned above (and on topic - avoiding common zip and deployment issues)…
For those that don’t yet use the eclipse plugin - note that there are also other useful features, such as: checking for and flagging common coding errors, localization assistance, code folding, reference searching, declaration search/open, hover-help and auto-completion/assist for the components,interfaces,events and language elements, auto-launching/connecting of the debug console on deployment, debug console command history, etc.

“NewManLiving” wrote:

No problem except from time to time I have to re-enter the ip address in the deployment wizard (don’t know if this is intentional or just a bug).

That’s probably not a bug, but I’d need to know more details to be 100% sure (add to the semi-permanent eclipse plugin thread if the explanation below doesn’t jibe what you’re seeing).
The IP address combo (in both the deployment wizard and the debug console) gets it’s list from a SSDP listener background thread.
Addresses that haven’t been heard from since their SSDP timeout expired are periodically purged from the list.
Any IP address that you manually enter has a timeout of 20 minutes - If that Roku box does an SSDP broadcast before the initial 20 minute timeout is up, the thread updates the timeout as specified by the SSDP broadcast (and the cleanup process is delayed on subsequent eclipse sessions to give the boxes enough time to do their SSDP broadcasts again).

So, in your case, it may be that something in your environment is preventing (perhaps just occasionally) the SSDP broadcast from getting thru within the timeout window.

“NewManLiving” wrote:

It can only get better with each release of the plugin (I hope)
Spoiler alert… the next plugin release will almost certainly have support for live docs tags (similar to javadocs, phpdocs, etc., but specific to BrightScript) integrated into the hover-help system, and an enhanced context-sensitive hover-help/auto-completion on message-port generated events.

I’m up for fixing or adding anything, but since my Roku overlords have become pretty conservative in approving work on bugfixes and enhancements, users of the Eclipse plugin need to be explicit and vocal (posting on this forum should help) about bugs they’d want to see fixed or enhancements they’d like to see added.

cheers

@wxYz

Ok great, then you have in front of you the proper way of doing it. I’ll just mention one more time because it happened to me and I’m far from alone in this -

“Install Failure: No manifest. Invalid package”

In my case it meant I was zipping a folder, and since zipping makes a folder around that, it was nested and the roku couldn’t see the manifest. You
have to select all your items and zip those together - not the folder they are in on your computer.

“NewManLiving” wrote:
it was more beneficial for me to use Eclipse with the plugin. […] No problem except from time to time I have to re-enter the ip address in the deployment wizard (don’t know if this is intentional or just a bug). It can only get better with each release of the plugin (I hope)
NewManLiving - what’s the make and model# of the wifi router you are using?
In the plugin thread i had epic argument with Malloys whether automatic discovery works with all routers (he says all routers can be coaxed to do that; while me, SiliconDust and Google take a more dim view)

ASUS RT AC 68 U 1900
Had some initial problems with connecting
Apple products with the new protocols
But I think apple addressed that in their last
7 update

“NewManLiving” wrote:
ASUS RT AC 68 U 1900
Had some initial problems with connecting Apple products with the new protocols
But I think apple addressed that in their last 7 update
Hm, at least Chromecast compatibility list has Asus RT-AC68U as compatible out of the box - and if so, the vanishing IP must be a bug in the eclipsing plugin.

PS. OTOH, people had complained about problems with Apple’s Bonjour?ZeroConf and that uses multicast, so you can have a look at some of the settings