Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
This question does not appear to be about programming within the scope defined in the help center.
Closed 7 years ago.
Improve this question
I am using Cygwin to compile a third party application called iPerf.exe that I am using as a plug-in to my application. We are planning to distribute this application to our users. I know that GNU licence agreement of cygwin says that if you are planning to compile your application using cygwin then please be ready to make your code open source.
I am not compiling our entire application using cygwin. I using cygwin because we are using iperf.exe which was written for Linux. I had to change some of the source code and re-compile it in Windows to produce windows executable.
Here is my question:
Under GNU licence, do I have to release the iPerf.exe code that I have changed or I have to release the entire application code? I would not be allowed to release entire application code so I hope releasing my changes to iPerf.exe should be suffice.
If your iperf.exe is linked against cygwin1.dll, then you must either release it under an OSI-approved license (as well as providing the sources for Cygwin itself if you distribute that too) or purchase a license buyout from Red Hat, as described here.
As for your application which uses iperf as a "plugin", that depends on the connection between the two; you'll need to be more specific to get a clear answer.
Related
Closed. This question is opinion-based. It is not currently accepting answers.
Want to improve this question? Update the question so it can be answered with facts and citations by editing this post.
Closed 3 years ago.
Improve this question
IDA pro ,x64Dbg, olldbg & windbg are used to Reverse Engineering purposes(as a Dissembler) and debugging.
What are the main differences among them? when to use each?
It's quite hard to give an answer that is not opinion-based. Trying to stay factual:
OllyDbg and x64Dbg falls roughly under the same category. Their main strength is debugging without symbolic information (although they can also do debugging with symbolic information). OllyDbg (closed source) hasn't been maintained since a long time now and is limited to x86 32-bit. On the other hand x64Dbg is actively maintained,open source and can handle x86 and x64. Both supports plugins.
Windbg is mainly a symbolic debugger (although obviously it works without any symbols). Being maintained by Microsoft it is very powerful when symbols are available. It supports plugins (in C or C++), scripting (it has its own scripting language but it also supports officially JavaScript and a third-party python scripts loader) .NET debugging and can do Kernel debugging (in this aspect it is the de facto Kernel debugger on Windows systems). In its latest version it also supports TTD (Time Travel Debugging).
IDA main strength is that it's an interactive disassembler. You can "interrogate" the binary (more precisely, the database generated from the binary) in many ways from python scripts. It also supports debugging by itself or through other engines (gdb or windbg engines for example).
Notable other professional dissassembler/debuggers are Binary Ninja (not free) and Ghidra (open source)
Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
We don’t allow questions seeking recommendations for books, tools, software libraries, and more. You can edit the question so it can be answered with facts and citations.
Closed 7 years ago.
Improve this question
I have been planning to start porting Chilli Source to Linux but haven't found clear info on what needs to be done to port Chilli Source to a new platform.
Is there a guide for it explaining how to do it or where to look?
-Where the platform specific implementations get "selected" in the code?
-What are the bare minimum systems that a platform needs to implement and the interface they must implement?
-How to add an extra target to the project generator?
-What needs to be pre-compiled as a library and where to place them?
Basically a guide possibly with one of the existing platforms as an example would be fantastic. If not just some highlights as to where in the git repo to look for answers would be welcomed.
Thank you!
A full tutorial describing how to port the engine to other platforms is a bit beyond the scope of what can be provided here, however I can give a quick overview.
A platform backend essentially consists of:
The entry point to the application
Window creation
OpenGL context creation
An implementation of each platform specific system.
The Windows backend is a pretty good example of this: you can see the entry point to the engine in Main.cpp and the window/context creation (using SFML) in SFMLWindow.cpp.
Platform specific systems are declared abstract, requiring each platform backend to implement their own version of it. All systems are created via the Create() factory method, using the creation of the platform specific concrete system is hidden from the user. A nice clean example of this is the DialogueBoxSystem.
Only default systems require implementation on every platform - those that are created in Application::CreateDefaultSystems(). Current, this would require implementation of:
PlatformSystem
Device
Screen
FileSystem
DialogueBoxSystem
Keyboard (Only required on systems which have hardware keyboards)
PointerSystem
DeviceButtonSystem
TextEntry
The Create() factory method should return nullptr on any platform which doesn't implement the system.
Finally, you'll need to build the CSBase library for the new platform - this provides all of the third party code used by the engine: libPng, rapidxml, etc.
Hopefully that should be enough to point you in the right direction. It's also worth checking out Fzort's fork of CS which he has had running on linux: https://github.com/fzort/ChilliSource
Closed. This question is off-topic. It is not currently accepting answers.
Want to improve this question? Update the question so it's on-topic for Stack Overflow.
Closed 9 years ago.
Improve this question
I've been attempting to find a location from which to download Fuse, but all the links in the Red Hat site seem to indicate that the freely downloadable version of the product is available "for development purposes only". Is there a download location that clearly identifies it as an open source version?
JBoss Fuse is open source licensed with the ASL 2.0 license.
You can download and use the product for free for development purpose.
But if you want to use it for production, then you need a subscription
Claus, could you clarify this a little?
I was under (false?) assumption that ASL2.0 means that use of the software is free. Free regardless of if its for development or production use. At least http://www.apache.org/foundation/license-faq.html points me in that direction. How can JBoss fuse be ASL2.0 and at the same time forbid use for prodution?
It would also help if I could find out clear license terms somewhere. If I look at http://www.jboss.org/products/fuse or https://access.redhat.com/site/documentation/JBoss_Fuse/ I cannot see the license specification. Where can I view the actual license terms of Jboss Fuse?
JBoss Fuse is open source licensed with the ASL 2.0 license.
You can download and use the product for free for development purpose. But if you want to use it for production, then you need a subscription.
What you ask about is free software. That is a totally different thing than whether or not the source code is open or closed.
According to my understand of this document, the "open source versión" not exist.
Must I install Apache CXF, Apache Camel, Apache ActiveMQ, and Apache Karaf individually?
https://www.redhat.com/resourcelibrary/whitepapers/jboss-enterprise-middleware-community-to-enterprise-whitepaper
Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
This question does not appear to be about programming within the scope defined in the help center.
Closed 7 years ago.
Improve this question
Let's say we are planning to use an open source project under GNU Lesser General Public License to develop a cloud-based social networking system (a web-based system having horizontaly scalable databases as back end). The completed application will be closed sourced.
So, if we use the source code licensed under GNU Lesser General Public License, or even if we modify it, are we allowed to do that (ie. are we violating the license if our completed product will be closed source.)
The completed application will be commercial based - BUT we are not selling any packaged product - and we will make profits by advertising or download apps, for example.
Yes, you can use modified sources for GPL or LGPL software in your cloud service. You only need to publish your modifications if you distribute the binaries.
This "loophole" is closed by the AGPL.
Yes, if your code is just linked to LGPL software, it can be distributed under a privative license.
However, if you do any modification to the LGPL software you must distribute it in source form if you distribute it at all. This does not include the part of your code that is only linked to (but not compiled together with) the LPGL software. On the other hand, if you do not distribute it at all, you do not have to distribute the sources. This is what some websearch companies do with their modified versions of the linux kernel, and this may be your case if your application is a kind of software-as-a-service application.
Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
This question does not appear to be about programming within the scope defined in the help center.
Closed 7 years ago.
Improve this question
I'm developing an application which requires a third party framework which is under an Eclipse Public Licence (EPL). The application is a server-side commercial application which will be running on my servers. The EPL software is distributed as binaries (jar files). I'm only using the packages and am not making any contribution, i.e. not making any changes to the source.
Under EPL I believe I'm not a "Contributor" nor am I making a "Contribution". But if I want to make my software available to be installed at some offsite server I'm having trouble with REQUIREMENTS of EPL:
b.iv - "states that source code for the Program is available from such Contributor, and informs licensees how to obtain it in a reasonable manner on or through a medium customarily used for software exchange".
Does this mean that if I where to modify the source code of the 3rd party framework for my own purposes I would need to distribute all of my source code?
EPL is supposed to be commercially friendly but it doesn't seem that way to me.
The way that I understand your question is "If I change part of the framework, do I need to redistribute all of the source code of my application, even the parts that aren't part of the framework?". If that is the proper interpretation of your question, then no, you do not need to distribute all the code of your application.
EPL is a weak copyleft license, however it is a non-viral copyleft so it only applies to the source of what was EPL'ed, not to what you build on top of the EPL project. Thus, it does not require that you distribute the source to your application, only the changes made to the framework itself. The terms of the EPL only apply to the source of the library, not the source of your application. Your application's code will governed by its own license (as you are not redistributing it, ostensibly a simple "I own all the rights to this code" license).
Basically, as long as you are not using a library governed by a fully copyleft license, then you should be fine.
Disclaimer: I am not a lawyer. Do not take this as real legal advice.