• Print

Author Topic: QB64[GL] (V0.980, released 24th Apr 2013) [Linux/MacOSX/Windows/Android]  (Read 49491 times)

Galleon

  • Administrator
  • Hero Member
  • *****
  • Posts: 5179
  • QB Forever
QB64[GL] (V0.980, released 24th Apr 2013) [Linux/MacOSX/Windows/Android]
« on: April 23, 2013, 11:11:41 pm »
Linux
http://www.qb64.net/qb64v0980-lnx.tar.gz (~30MB)
After extracting, run the installation script 'setup_lnx.sh' located in the 'qb64' folder.


MacOSX
http://www.qb64.net/qb64v0980-macosx.tar.gz (~30MB)
1) You must install Xcode (from link below or the App Store):
http://developer.apple.com/technologies/tools/xcode.html
(you won't be using the Xcode interface directly, QB64 just needs to have access to the MacOSX C++ compiler it installs)
2) If using MacOSX 'Lion' or above, you must also install XCode's Command Line Tools. These can be installed from within Xcode in 'Preferences', then 'Downloads', then 'Components' and then clicking 'Install' in the line with the 'Command Line Tools'.
3) Extract the QB64 download and run 'setup_osx.command' located in the 'qb64' folder.


Windows
Note: Both of the following downloads contain identical content:
http://www.qb64.net/qb64v0980-win.zip (~100MB)
http://www.qb64.net/qb64v0980-win.7z (~40MB)
After extracting, run 'qb64.exe' located in the 'qb64' folder.


Android
You need the Windows version of QB64 to correctly generate projects, as well as the correct setup of the Android SDK and NDK.
Importantly, you need to either install the NDK at c:\ndk\... or edit programs\android\make_android.bat (currently a one line batch file) accordingly.
Then you can create projects.
After that just import the project into Eclipse (it's already setup as an Eclipse project for convenience), setup your target virtual machine or physical device and run it.
A video tutorial will be added soon showing how to set all this up, because there are a few gotchas along the way, like always installing the 32-bit versions of things. Setup doesn't require typing any console commands, it's just lots of clicking and downloading. Also, you should not need to root your device to get your programs to work.
Functionality is extremely limited at present as this is a newly introduced feature. No file access (afaik, it may work...), no sound, no virtual keyboard (plug in a physical one), no screen scaling (coming very soon, stretch maintaining aspect ratio will be the default state), no networking, no SUB _GL (needs a GL ES 1.x wrapper, under construction).

What else changed?
Specific changes are listed at the QB64 Google-Code repository:
http://code.google.com/p/qb64/source/list
$INCLUDE bug is fixed.
BMP image support added.

LICENSE
Code: [Select]
=== IMPORTANT LICENSING NOTE FOR QB64 PROGRAMMERS ===
All executables created with QB64 are subject to the LGPL licence conditions.
All executables which read sound files are subject to the GPL license as well (due to incorporation of libsamplerate).
When distributing your program as an executable all license requirements can be met by:
i) Making your program's source code (.BAS) available and declaring it to be GPL as well as
ii) Including this entire license folder distributed with QB64
It should be noted that the above is not the sole method one could use to abide by the license conditions
and that creating closed source QB64 programs is possible when LGPL (not GPL) code is dynamically
linked to, not embedded within your executable.
=====================================================

The license requirements for components of QB64 are as follows:

Software/Library Name: QB64 (inclusive of all parts of this distribution not covered by separate licence below)
Website(s): http://www.qb64.net, http://code.google.com/p/qb64/
License: LGPL with static linking of code required for generated programs to run permitted
License Website: http://www.gnu.org/licenses/licenses.html#LGPL
License File: license/lgpl_2_1.txt

Software/Library Name: MinGW 64
Website: http://mingw-w64.sourceforge.net/
License: (see below)
Each of the various packages, which is distributed by MinGW.org, is governed by its own individual copyright and licensing terms. In summary, for the most commonly deployed packages:
MinGW runtime: The MinGW base runtime package has been placed in the public domain, and is not governed by copyright. This basically means that you can do what you like with the code.
w32api: You are free to use, modify and copy this package. No restrictions are imposed on programs or object files linked with this library. You may not restrict the the usage of this library. You may distribute this library as part of another package or as a modified package if, and only if, you do not restrict the usage of the portions consisting of this (optionally modified) library. If distributed as a modified package, then a copy of this notice must be included.
This library is distributed in the hope that it will be useful, but WITHOUT WARRANTY OF ANY KIND; without even the implied warranties of MERCHANTABILITY or of FITNESS FOR A PARTICULAR PURPOSE.
MinGW profiling code: MinGW profiling code is distributed under the terms of the GNU General Public License.
Binutils, GCC, GDB, GNU Make: All of the GNU development tools, such as GNU binutils, GCC, GDB and GNU Make, are governed by the terms of the GNU General Public License.
License Website: http://www.gnu.org/licenses/licenses.html#GPL
License File: license_gnu_gpl_3.txt
Location in QB64 distribution: internal/c/c_compiler/

Software/Library Name: Secret Rabbit Code (libsamplerate)
Website: http://www.mega-nerd.com/SRC/
License: GPL 2
License Website: http://www.gnu.org/licenses/licenses.html#GPL
License File: license_gnu_gpl_2.txt
Location in QB64 distribution: internal/c/parts/audio/conversion/

Software/Library Name: mpglibdll
Website(s):
http://www.rz.uni-frankfurt.de/~pesch
http://www.mpg123.de
http://www.sulaco.org/mp3
License: LGPL 2.1
License Website: http://www.gnu.org/licenses/licenses.html#LGPL
License File: license_gnu_lgpl_2_1.txt
Location in QB64 distribution: internal/c/parts/audio/decode/mp3/

Software/Library Name: Ogg Vorbis I audio decoder version 0.99996
Website:http://nothings.org/stb_vorbis/
Date:Written in April 2007
Author:Sean Barrett, sponsored by RAD Game Tools
License: Placed in the public domain April 2007 by the author: no copyright is claimed, and you may use it for any purpose you like.
License Website: N/A - public domain
License File: license_stbvorbis.txt
Location in QB64 distribution: internal/c/parts/audio/decode/ogg/

Software/Library Name: OpenAL-soft
Website:http://kcat.strangesoft.net/openal.html
License: LGPL 2
License Website: http://www.gnu.org/licenses/licenses.html#LGPL
License File: license_gnu_lgpl_2.txt
Location in QB64 distribution: internal/c/parts/audio/out/

Software/Library Name: OpenAL-soft
Website:http://kcat.strangesoft.net/openal.html
License: LGPL 2
License Website: http://www.gnu.org/licenses/licenses.html#LGPL
License File: license_gnu_lgpl_2.txt
Location in QB64 distribution: internal/c/parts/audio/out/

Software/Library Name: FreeGLUT
Website: http://freeglut.sourceforge.net/
License: LGPL (note: website states LGPL, license file is not a copy of GNU LGPL)
License Website: http://www.gnu.org/licenses/licenses.html#LGPL
License File: license_freeglut.txt
Location in QB64 distribution: internal/c/parts/core/

Software/Library Name: FreeTYPE
Website: http://www.freetype.org/
License: GPL or FreeTYPE's FTL (programs must abide by one of these licenses)
License Website(s): (see below)
http://www.freetype.org/license.html
http://www.gnu.org/licenses/licenses.html#GPL
License File(s): (see below)
license_freetype_ftl.txt
license_gnu_gpl_2.txt
Location in QB64 distribution: internal/c/parts/video/font/ttf/

Software/Library Name: NanoJPEG - KeyJ's Tiny Baseline JPEG Decoder
Author: Martin J. Fiedler <martin.fiedler@gmx.net>
License: (refer to license file)
License File: nanojpeg_license.txt
Location in QB64 distribution: internal/c/parts/video/image/decode/jpg

Software/Library Name: NanoJPEG - KeyJ's Tiny Baseline JPEG Decoder
Author: Martin J. Fiedler <martin.fiedler@gmx.net>
License: (refer to license file)
License File: license_nanojpeg.txt
Location in QB64 distribution: internal/c/parts/video/image/decode/jpg

Software/Library Name: LodePNG
License: (refer to license file)
License File: license_lodepng.txt
Location in QB64 distribution: internal/c/parts/video/image/decode/png
« Last Edit: April 24, 2013, 03:18:07 am by Galleon »
Something old... Something new... Something borrowed... Something blue...

fluffrabbit

  • Hero Member
  • *****
  • Posts: 602
  • SALTY, AGGRESSIVE, and TRULY SWEET TO THE LADIES
Wow! Android support already! I'm going to wait until the video comes out as I haven't yet installed the NDK and I want to get it right the first time.

It would be nice if the Mac and Linux versions could make Android projects too. I would probably make that a priority since a lot of people only use one of the big three.

The main focus here is on Android, and you named some important issues that need to be resolved. I hope that the next release also replaces libsamplerate, simply due to licensing issues. I've said it all before, so I won't bug you about it again.

This is so exciting!
"I’d lay her down caress her gently tickle her fancy; have her tickle my fancy, and give it to her with the learned lonely experience I’ve endured."

"If I wanted paper, I would go to Wal-Mart and pay five dollars for FIVE HUNDRED SHEETS!"

wiggins

  • Sr. Member
  • ****
  • Posts: 293
Happy Happy Day!  Thank you for the Qb64 update!!!!

Galleon

  • Administrator
  • Hero Member
  • *****
  • Posts: 5179
  • QB Forever
Re: QB64[GL] (V0.980, released 24th Apr 2013) [Linux/MacOSX/Windows/Android]
« Reply #3 on: April 24, 2013, 05:27:02 pm »
Quote
I'm going to wait until the video comes out as I haven't yet installed the NDK and I want to get it right the first time.
You'll be waiting at least a week, I barely got this release over the line in my 2 week study break. Don't be worried about getting the install wrong, I just didn't want people to think it's a complete walk in the park and then be disappointed when 30 minutes later they are still setting things up unsure of whether it'll work.

Quote
It would be nice if the Mac and Linux versions could make Android projects too.
And they will, but I will need time to do testing and create appropriate shell commands and script files for these.

Something old... Something new... Something borrowed... Something blue...

fluffrabbit

  • Hero Member
  • *****
  • Posts: 602
  • SALTY, AGGRESSIVE, and TRULY SWEET TO THE LADIES
Re: QB64[GL] (V0.980, released 24th Apr 2013) [Linux/MacOSX/Windows/Android]
« Reply #4 on: April 24, 2013, 07:44:17 pm »
I didn't think it was possible, but this Android thing is actually starting to piss me off even more than it already has. I installed the NDK and successfully created an Eclipse project with QB64. I imported it into Eclipse and it said I needed Android 2.3, so I installed Android 2.3 and updated the virtual device, but now it says there are no compatible virtual devices, even though it didn't say that before and theoretically it should work now! ARRRRGHHHHHHHHPFFFTKFPTKGKSDFIHSUDFJNGA!!!!!!!!!!!!!!!!!!!!1111111111 >:(
"I’d lay her down caress her gently tickle her fancy; have her tickle my fancy, and give it to her with the learned lonely experience I’ve endured."

"If I wanted paper, I would go to Wal-Mart and pay five dollars for FIVE HUNDRED SHEETS!"

DSMan195276

  • Hero Member
  • *****
  • Posts: 2122
  • Yes
Re: QB64[GL] (V0.980, released 24th Apr 2013) [Linux/MacOSX/Windows/Android]
« Reply #5 on: April 24, 2013, 08:12:49 pm »
I've messed around with Android a bit with Java and Eclipse. From what I remember (I did it on Linux), setting up the virtual device took longer then just plugging in my tablet and running it on there.

Galleon: I'd be happy to convert some shell script and test out the Linux stuff if you want. I should have time this weekend to do some QB64 stuff and I could work on this if you tell me what you think would need to be done.

Matt
"Cast your cares on the Lord and he will sustain you; he will never let the righteous be shaken" -- Psalm 55:22
QB64 Linux Installer

fluffrabbit

  • Hero Member
  • *****
  • Posts: 602
  • SALTY, AGGRESSIVE, and TRULY SWEET TO THE LADIES
Re: QB64[GL] (V0.980, released 24th Apr 2013) [Linux/MacOSX/Windows/Android]
« Reply #6 on: April 24, 2013, 08:22:59 pm »
Well, I restarted Eclipse and the problem magically went away. I successfully compiled and ran Pete's Battleship example program on Android.

Interesting scaling. The text seems to line up exactly with my screen resolution, which is a fraction of 640 pixels.
"I’d lay her down caress her gently tickle her fancy; have her tickle my fancy, and give it to her with the learned lonely experience I’ve endured."

"If I wanted paper, I would go to Wal-Mart and pay five dollars for FIVE HUNDRED SHEETS!"

Galleon

  • Administrator
  • Hero Member
  • *****
  • Posts: 5179
  • QB Forever
Re: QB64[GL] (V0.980, released 24th Apr 2013) [Linux/MacOSX/Windows/Android]
« Reply #7 on: April 25, 2013, 11:21:16 pm »
Quote
I successfully compiled and ran Pete's Battleship example program on Android.
Fantastic news. See, I told you it was possible! Thank you for providing a screenshot. Now that you have things setup, just keep Eclipse open and QB64 at the same time, when you update your project in QB64 all you need to do is click run in Eclipse.

Out of curiousity, did that keyboard on your Virtual-Droid work? (in particular the enter key)
Something old... Something new... Something borrowed... Something blue...

Pete

  • Hero Member
  • *****
  • Posts: 6626
  • Cuz I sez so varmint!
Re: QB64[GL] (V0.980, released 24th Apr 2013) [Linux/MacOSX/Windows/Android]
« Reply #8 on: April 25, 2013, 11:54:29 pm »
Congrats!

Love the screen shot, too.

Need to go shopping.

Pete

It's only rocket science; it's not Linux!

fluffrabbit

  • Hero Member
  • *****
  • Posts: 602
  • SALTY, AGGRESSIVE, and TRULY SWEET TO THE LADIES
Re: QB64[GL] (V0.980, released 24th Apr 2013) [Linux/MacOSX/Windows/Android]
« Reply #9 on: April 26, 2013, 12:36:04 am »
Quote
Fantastic news. See, I told you it was possible! Thank you for providing a screenshot. Now that you have things setup, just keep Eclipse open and QB64 at the same time, when you update your project in QB64 all you need to do is click run in Eclipse.
Wow, that's brilliant! That way I can debug in Android as I'm coding.

Quote
Out of curiousity, did that keyboard on your Virtual-Droid work? (in particular the enter key)
Nope, unfortunately no keys seemed to work, neither from my physical keyboard nor on the virtual Droid control pane. Obviously, the menu keys worked and all, but the keypad buttons were all disabled.
"I’d lay her down caress her gently tickle her fancy; have her tickle my fancy, and give it to her with the learned lonely experience I’ve endured."

"If I wanted paper, I would go to Wal-Mart and pay five dollars for FIVE HUNDRED SHEETS!"

Pete

  • Hero Member
  • *****
  • Posts: 6626
  • Cuz I sez so varmint!
Re: QB64[GL] (V0.980, released 24th Apr 2013) [Linux/MacOSX/Windows/Android]
« Reply #10 on: April 26, 2013, 01:03:27 am »
Bummer about the keyboard. QB64 does work with Windows on-screen keyboard. Should be a solution available. QB64 is definitely ahead of PowerBasic at this point.

Pete
It's only rocket science; it's not Linux!

Clippy

  • Hero Member
  • *****
  • Posts: 17714
  • I LOVE π = 4 * ATN(1)    Use the QB64 WIKI >>>
    • Pete's Qbasic Site
Re: QB64[GL] (V0.980, released 24th Apr 2013) [Linux/MacOSX/Windows/Android]
« Reply #11 on: April 26, 2013, 05:22:49 am »
What did you go to the store for? A Droid?  ;D
QB64 WIKI: Main Page
Download Q-Basics Code Demo: Q-Basics.zip
Download QB64 BAT, IconAdder and VBS shortcuts: QB64BAT.zip
Download QB64 DLL files in a ZIP: Program64.zip

Billbo

  • Hero Member
  • *****
  • Posts: 505
Re: QB64[GL] (V0.980, released 24th Apr 2013) [Linux/MacOSX/Windows/Android]
« Reply #12 on: April 26, 2013, 04:26:27 pm »
Galleon,

In the changes, you mention the qb64 icon. I hope it was and is
still okay, but last year I made an icon out of the graphic at the
top-left of our forum pages. I used CorelDRAW! 12 to do it. Not
to bad-mouth your artistic abilities, but it looks so much better,
and indicates you can be "busy as a bee" with a fantastic program.

Bill


Clippy

  • Hero Member
  • *****
  • Posts: 17714
  • I LOVE π = 4 * ATN(1)    Use the QB64 WIKI >>>
    • Pete's Qbasic Site
Re: QB64[GL] (V0.980, released 24th Apr 2013) [Linux/MacOSX/Windows/Android]
« Reply #13 on: April 26, 2013, 05:39:56 pm »
QB64 can create icons and we can add them to the programs thanks to Michael Calkins. The embedded icon can be viewed on Windows Explorer too.

http://qb64.net/wiki/index.php?title=Embedding_Icons_in_EXE

There are even procedures to extract icons from other programs. SDL only. Hopefully GL will finally allow _ICON to use them some day.

PS: I think everybody has a copy of the Bee in one form or another.

QB64 WIKI: Main Page
Download Q-Basics Code Demo: Q-Basics.zip
Download QB64 BAT, IconAdder and VBS shortcuts: QB64BAT.zip
Download QB64 DLL files in a ZIP: Program64.zip

Billbo

  • Hero Member
  • *****
  • Posts: 505
Re: QB64[GL] (V0.980, released 24th Apr 2013) [Linux/MacOSX/Windows/Android]
« Reply #14 on: April 26, 2013, 06:35:04 pm »
Thanks. I haven't tried it in QB64, yet.

Bill

  • Print